After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 643581 - gst-rtsp-server memory leak
gst-rtsp-server memory leak
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-rtsp-server
0.10.8
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-03-01 11:53 UTC by Nicola
Modified: 2011-09-25 00:03 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Nicola 2011-03-01 11:53:10 UTC
here is the output from valgrind when I remove a media when I see it

==12160== Invalid read of size 8
==12160==    at 0x505D2EC: media_unprepared (rtsp-media-factory.c:389)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613AC54: g_main_loop_run (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b4f48 is 56 bytes inside a block of size 72 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x557DE49: g_type_free_instance (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160==    by 0x6470600: QReadNotifier::event(QEvent*) (qnativesocketengine.cpp:1094)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x6B903C4: pthread_mutex_lock (pthread_mutex_lock.c:50)
==12160==    by 0x505D2F2: media_unprepared (rtsp-media-factory.c:389)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b50e0 is 16 bytes inside a block of size 40 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DFAD: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:128)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x6B8FDB3: __pthread_mutex_lock_full (pthread_mutex_lock.c:139)
==12160==    by 0x505D2F2: media_unprepared (rtsp-media-factory.c:389)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b50e0 is 16 bytes inside a block of size 40 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DFAD: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:128)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160== 
==12160== Invalid read of size 8
==12160==    at 0x505D291: media_unprepared (rtsp-media-factory.c:390)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613AC54: g_main_loop_run (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b4f50 is 64 bytes inside a block of size 72 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x557DE49: g_type_free_instance (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160==    by 0x6470600: QReadNotifier::event(QEvent*) (qnativesocketengine.cpp:1094)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x6128877: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x505D2A0: media_unprepared (rtsp-media-factory.c:390)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b5140 is 0 bytes inside a block of size 72 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DF41: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:127)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160== 
==12160== Invalid read of size 8
==12160==    at 0x6128893: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x505D2A0: media_unprepared (rtsp-media-factory.c:390)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b5158 is 24 bytes inside a block of size 72 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DF41: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:127)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x6128897: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x505D2A0: media_unprepared (rtsp-media-factory.c:390)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b51e0 is 16 bytes inside a block of size 192 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x61286ED: g_hash_table_unref (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x505DF41: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:127)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x61288C1: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x505D2A0: media_unprepared (rtsp-media-factory.c:390)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b5150 is 16 bytes inside a block of size 72 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DF41: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:127)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160== 
==12160== Invalid read of size 8
==12160==    at 0x505D2C7: media_unprepared (rtsp-media-factory.c:391)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613AC54: g_main_loop_run (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b4f48 is 56 bytes inside a block of size 72 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x557DE49: g_type_free_instance (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160==    by 0x6470600: QReadNotifier::event(QEvent*) (qnativesocketengine.cpp:1094)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x6B91A04: pthread_mutex_unlock (pthread_mutex_unlock.c:37)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613AC54: g_main_loop_run (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b50e0 is 16 bytes inside a block of size 40 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DFAD: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:128)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160== 
==12160== Invalid read of size 4
==12160==    at 0x6B91570: __pthread_mutex_unlock_full (pthread_mutex_unlock.c:86)
==12160==    by 0x555C5DD: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5570597: ??? (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5571A75: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x5572032: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x50586D5: gst_rtsp_media_unprepare (rtsp-media.c:1786)
==12160==    by 0x505BAA9: gst_rtsp_media_set_state (rtsp-media.c:2022)
==12160==    by 0x5063BD6: message_received (rtsp-client.c:538)
==12160==    by 0x7F401F2: gst_rtsp_source_dispatch (gstrtspconnection.c:3179)
==12160==    by 0x61368C1: g_main_context_dispatch (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613A747: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x613AC54: g_main_loop_run (in /lib/libglib-2.0.so.0.2400.1)
==12160==  Address 0xa4b50e0 is 16 bytes inside a block of size 40 free'd
==12160==    at 0x4C270BD: free (vg_replace_malloc.c:366)
==12160==    by 0x505DFAD: gst_rtsp_media_factory_finalize (rtsp-media-factory.c:128)
==12160==    by 0x555E5A3: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1)
==12160==    by 0x6127BD4: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x6128C5F: ??? (in /lib/libglib-2.0.so.0.2400.1)
==12160==    by 0x418BD2: StreamingClass::removeRtspMedia() (streamingclass.cpp:414)
==12160==    by 0x4158F4: StreamingClass::freeClassRes() (streamingclass.cpp:46)
==12160==    by 0x40DB72: SocketRequest::parseJsonRequest(QByteArray) (socketrequest.cpp:381)
==12160==    by 0x408EA0: SocketRequest::readClientRequest() (socketrequest.cpp:49)
==12160==    by 0x41FE39: SocketRequest::qt_metacall(QMetaObject::Call, int, void**) (moc_socketrequest.cpp:81)
==12160==    by 0x6884E3E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3293)
==12160==    by 0x648144E: QAbstractSocketPrivate::canReadNotification() (qabstractsocket.cpp:626)
==12160==
Comment 1 Wim Taymans 2011-03-07 18:44:22 UTC
I'm thinking that this is caused by multithreading issues, which could be improved still..
Comment 2 David Schleef 2011-09-25 00:03:57 UTC
I fixed a lot of rtsp-server memory leaks recently, and I know that it is now valgrind-clean for certain situations.  I'm going to mark this obsolete for now, but please reopen if there are valgrind problems with current git.