Title: [140272] trunk/Source/WebCore
Revision
140272
Author
[email protected]
Date
2013-01-20 03:36:20 -0800 (Sun, 20 Jan 2013)

Log Message

[gstreamer]  assertion in g_object_unref from _WebKitWebAudioSourcePrivate destructor
https://bugs.webkit.org/show_bug.cgi?id=107374

Reviewed by Philippe Normand.

WebKitWebAudioSrc object gets unrefed one time too many in
_WebKitWebAudioSourcePrivate destructor, causing an assertion
in g_object_unref. This patch passes NULL instead of
g_object_unref to gst_task_new() so that the WebKitWebAudioSrc
object does not get unrefed when the GstTask is destroyed.

No new tests, already covered by webaudio tests.

* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webkit_web_audio_src_init):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (140271 => 140272)


--- trunk/Source/WebCore/ChangeLog	2013-01-20 10:50:07 UTC (rev 140271)
+++ trunk/Source/WebCore/ChangeLog	2013-01-20 11:36:20 UTC (rev 140272)
@@ -1,3 +1,21 @@
+2013-01-20  Christophe Dumez  <[email protected]>
+
+        [gstreamer]  assertion in g_object_unref from _WebKitWebAudioSourcePrivate destructor
+        https://bugs.webkit.org/show_bug.cgi?id=107374
+
+        Reviewed by Philippe Normand.
+
+        WebKitWebAudioSrc object gets unrefed one time too many in
+        _WebKitWebAudioSourcePrivate destructor, causing an assertion
+        in g_object_unref. This patch passes NULL instead of
+        g_object_unref to gst_task_new() so that the WebKitWebAudioSrc
+        object does not get unrefed when the GstTask is destroyed.
+
+        No new tests, already covered by webaudio tests.
+
+        * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
+        (webkit_web_audio_src_init):
+
 2013-01-20  Kentaro Hara  <[email protected]>
 
         [V8] Create a persistent wrapper for Window.prototype and innerGlobalObject

Modified: trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp (140271 => 140272)


--- trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp	2013-01-20 10:50:07 UTC (rev 140271)
+++ trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp	2013-01-20 11:36:20 UTC (rev 140272)
@@ -207,7 +207,7 @@
 
 #ifdef GST_API_VERSION_1
     g_rec_mutex_init(&priv->mutex);
-    priv->task = gst_task_new(reinterpret_cast<GstTaskFunction>(webKitWebAudioSrcLoop), src, reinterpret_cast<GDestroyNotify>(g_object_unref));
+    priv->task = gst_task_new(reinterpret_cast<GstTaskFunction>(webKitWebAudioSrcLoop), src, 0);
 #else
     g_static_rec_mutex_init(&priv->mutex);
     priv->task = gst_task_create(reinterpret_cast<GstTaskFunction>(webKitWebAudioSrcLoop), src);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to