[MOVED FROM GST-P-FARSIGHT] added debugs
authorYouness Alaoui <youness.alaoui@collabora.co.uk>
Thu, 13 Sep 2007 20:46:14 +0000 (20:46 +0000)
committerEdward Hervey <bilboed@bilboed.com>
Sat, 21 Feb 2009 16:48:02 +0000 (17:48 +0100)
20070913204614-4f0f6-68c2a69ae7a1efca6e13c116dbad7f9b686f0242.gz

gst/dtmf/gstdtmfsrc.c

index 06fc502..9dca9a4 100644 (file)
@@ -655,8 +655,11 @@ gst_dtmf_src_create (GstBaseSrc * basesrc, guint64 offset,
 
  start:
   if (dtmfsrc->last_event == NULL) {
+    GST_DEBUG_OBJECT (dtmfsrc, "popping");
     event = g_async_queue_pop (dtmfsrc->event_queue);
 
+    GST_DEBUG_OBJECT (dtmfsrc, "popped %d", event->event_type);
+
     if (event->event_type == DTMF_EVENT_TYPE_STOP) {
       GST_WARNING_OBJECT (dtmfsrc,
           "Received a DTMF stop event when already stopped");
@@ -673,6 +676,7 @@ gst_dtmf_src_create (GstBaseSrc * basesrc, guint64 offset,
        * We're pushing it back because it has to stay in there until
        * the task is really paused (and the queue will then be flushed)
        */
+      GST_DEBUG_OBJECT (dtmfsrc, "pushing pause_task...");
       g_async_queue_push (dtmfsrc->event_queue, event);
       g_async_queue_unref (dtmfsrc->event_queue);
     }
@@ -689,11 +693,21 @@ gst_dtmf_src_create (GstBaseSrc * basesrc, guint64 offset,
         g_free (dtmfsrc->last_event);
         dtmfsrc->last_event = NULL;
         goto start;
+      } else if (event->event_type == DTMF_EVENT_TYPE_PAUSE_TASK) {
+        /*
+         * We're pushing it back because it has to stay in there until
+         * the task is really paused (and the queue will then be flushed)
+         */
+        GST_DEBUG_OBJECT (dtmfsrc, "pushing pause_task...");
+        g_async_queue_push (dtmfsrc->event_queue, event);
+        g_async_queue_unref (dtmfsrc->event_queue);
       }
     }
   }
   g_async_queue_unref (dtmfsrc->event_queue);
 
+  GST_DEBUG_OBJECT (dtmfsrc, "end event check");
+
   if (dtmfsrc->last_event) {
     buf = gst_dtmf_src_create_next_tone_packet (dtmfsrc, dtmfsrc->last_event);
 
@@ -705,6 +719,7 @@ gst_dtmf_src_create (GstBaseSrc * basesrc, guint64 offset,
     ret = GST_FLOW_WRONG_STATE;
   }
 
+  GST_DEBUG_OBJECT (dtmfsrc, "returning");
   return ret;
 
 }