]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/dispatcher.cc
dispatcher.cc: fix type mismatch error in Dispatcher::print_smob
[lilypond.git] / lily / dispatcher.cc
index a6cee709ce0649497a7b5a500aa8b8351e1200db..ad1a624b121917b67fe03bc0944cce96a0325de4 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 2005--2011 Erik Sandberg  <mandolaerik@gmail.com>
+  Copyright (C) 2005--2012 Erik Sandberg  <mandolaerik@gmail.com>
 
   LilyPond is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -58,7 +58,8 @@ Dispatcher::print_smob (SCM s, SCM p, scm_print_state *)
 {
   Dispatcher *me = (Dispatcher *) SCM_CELL_WORD_1 (s);
   scm_puts ("#<Dispatcher ", p);
-  scm_write (scm_vector_to_list (me->listeners_), p);
+  scm_write (scm_call_1 (ly_lily_module_constant ("hash-table->alist"),
+                        me->listeners_), p);
   scm_puts (">", p);
   return 1;
 }
@@ -77,7 +78,7 @@ Dispatcher::dispatch (SCM sev)
 {
   Stream_event *ev = unsmob_stream_event (sev);
   SCM class_symbol = ev->get_property ("class");
-  if (!scm_symbol_p (class_symbol))
+  if (!scm_is_symbol (class_symbol))
     {
       warning (_ ("Event class should be a symbol"));
       return;
@@ -89,7 +90,9 @@ Dispatcher::dispatch (SCM sev)
       ev->origin ()->warning (_f ("Unknown event class %s", ly_symbol2string (class_symbol).c_str ()));
       return;
     }
+#if 0
   bool sent = false;
+#endif
   int num_classes = scm_ilength (class_list);
 
   /*
@@ -148,7 +151,9 @@ Dispatcher::dispatch (SCM sev)
 
           Listener *l = unsmob_listener (scm_cdar (lists[0].list));
           l->listen (ev->self_scm ());
+#if 0
           sent = true;
+#endif
         }
       // go to the next listener; bubble-sort the class list.
       SCM next = scm_cdr (lists[0].list);
@@ -161,10 +166,11 @@ Dispatcher::dispatch (SCM sev)
       lists[i].list = next;
     }
 
-  /* TODO: Uncomment.
-    if (!sent)
-      warning (_f ("Junking event: %s", ly_symbol2string (class_symbol).c_str ()));
-  */
+#if 0
+  /* TODO: Uncomment. */
+  if (!sent)
+    warning (_f ("Junking event: %s", ly_symbol2string (class_symbol).c_str ()));
+#endif
 }
 
 void