diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | sys/osxvideo/osxvideosink.h | 2 | ||||
-rw-r--r-- | sys/osxvideo/osxvideosink.m | 7 |
3 files changed, 9 insertions, 8 deletions
@@ -1,3 +1,11 @@ +2007-05-17 Edward Hervey <edward@fluendo.com> + + * sys/osxvideo/osxvideosink.h: + * sys/osxvideo/osxvideosink.m: + Remove the event-loop-in-separate-thread modifications, because MacOSX + is $#@(*%$# ! For those wondering, the event handling needs to be done + in the main thread after all.. + 2007-05-17 Zaheer Abbas Merali <zaheerabbas at merali dot org> * gst/switch/gstswitch.c (ARG_0, ARG_NB_SOURCES, ARG_ACTIVE_SOURCE, diff --git a/sys/osxvideo/osxvideosink.h b/sys/osxvideo/osxvideosink.h index 4aef99f4..d7fba966 100644 --- a/sys/osxvideo/osxvideosink.h +++ b/sys/osxvideo/osxvideosink.h @@ -84,8 +84,6 @@ struct _GstOSXVideoSink { gboolean embed; gboolean fullscreen; gboolean sw_scaling_failed; - GstTask *event_loop; - GStaticRecMutex loop_lock; }; struct _GstOSXVideoSinkClass { diff --git a/sys/osxvideo/osxvideosink.m b/sys/osxvideo/osxvideosink.m index 9fb9d89f..45dda334 100644 --- a/sys/osxvideo/osxvideosink.m +++ b/sys/osxvideo/osxvideosink.m @@ -259,10 +259,7 @@ gst_osx_video_sink_osxwindow_new (GstOSXVideoSink * osxvideosink, gint width, [NSApp setRunning]; // insert event dispatch in the glib main loop - g_static_rec_mutex_init (&osxvideosink->loop_lock); - osxvideosink->event_loop = gst_task_create ((GstTaskFunction) cocoa_event_loop, osxvideosink); - gst_task_set_lock (osxvideosink->event_loop, &osxvideosink->loop_lock); - gst_task_start (osxvideosink->event_loop); + g_idle_add ((GSourceFunc) cocoa_event_loop, osxvideosink); } else { GstStructure *s; GstMessage *msg; @@ -302,8 +299,6 @@ gst_osx_video_sink_osxwindow_destroy (GstOSXVideoSink * osxvideosink, g_return_if_fail (GST_IS_OSX_VIDEO_SINK (osxvideosink)); [osxwindow->pool release]; - if (osxvideosink->event_loop) - gst_task_stop (osxvideosink->event_loop); g_free (osxwindow); } |