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 786047 - osxvideosink crashes on start, OSX 10.13 Beta (17A330h)
osxvideosink crashes on start, OSX 10.13 Beta (17A330h)
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Mac OS
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-08-09 13:00 UTC by Kirill Novichikhin
Modified: 2018-11-03 15:21 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
High Sierra crash workaround (527 bytes, patch)
2017-08-09 13:00 UTC, Kirill Novichikhin
none Details | Review

Description Kirill Novichikhin 2017-08-09 13:00:29 UTC
Created attachment 357262 [details] [review]
High Sierra crash workaround

Crash in _CFRunLoopSetCurrent when running osxvideosink on last MacOS beta

Assert "Attempting to deallocate CFRunLoop outside of thread destructor -- this is likely an over-release of the run loop"

Apparently releasing previous runloop outside of thread destructor is now frowned upon.

Workaround: retain previous thread runloop before switching (see patch)


$ lldb -- gst-launch-1.0 tcpserversrc port=5001 ! gdpdepay ! h264parse ! avdec_h264 ! osxvideosink
(lldb) target create "gst-launch-1.0"
ruCurrent executable set to 'gst-launch-1.0' (x86_64).
(lldb) settings set -- target.run-args  "tcpserversrc" "port=5001" "!" "gdpdepay" "!" "h264parse" "!" "avdec_h264" "!" "osxvideosink"
(lldb) run
Process 33630 launched: '/usr/local/bin/gst-launch-1.0' (x86_64)
Setting pipeline to PAUSED ...
Process 33630 stopped
* thread #4, stop reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
    frame #0: 0x00007fff29b73fe5 CoreFoundation`__CFRunLoopDeallocate + 485
CoreFoundation`__CFRunLoopDeallocate:
->  0x7fff29b73fe5 <+485>: ud2    
    0x7fff29b73fe7 <+487>: nopw   (%rax,%rax)

CoreFoundation`__CFRunLoopCleanseSources:
    0x7fff29b73ff0 <+0>:   pushq  %rbp
    0x7fff29b73ff1 <+1>:   movq   %rsp, %rbp
Target 0: (gst-launch-1.0) stopped.
(lldb) bt
* thread #4, stop reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
  * frame #0: 0x00007fff29b73fe5 CoreFoundation`__CFRunLoopDeallocate + 485
    frame #1: 0x00007fff29c08f9c CoreFoundation`_CFRelease + 300
    frame #2: 0x00007fff29b505a6 CoreFoundation`_CFRunLoopSetCurrent + 134
    frame #3: 0x00000001007de83e libgstosxvideo.so`-[GstOSXVideoSinkObject nsAppThread] + 30
    frame #4: 0x00007fff2bc6c4f8 Foundation`__NSThread__start__ + 1197
    frame #5: 0x00007fff517ae6c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #6: 0x00007fff517ae56d libsystem_pthread.dylib`_pthread_start + 377
    frame #7: 0x00007fff517adc5d libsystem_pthread.dylib`thread_start + 13


    0x7fff29b73fd7 <+471>: leaq   0x310d5e(%rip), %rax      ; "Attempting to deallocate CFRunLoop outside of thread destructor -- this is likely an over-release of the run loop"
    0x7fff29b73fde <+478>: movq   %rax, 0x5a372ac3(%rip)    ; gCRAnnotations + 8
->  0x7fff29b73fe5 <+485>: ud2    
    0x7fff29b73fe7 <+487>: nopw   (%rax,%rax)
Comment 1 GStreamer system administrator 2018-11-03 15:21:20 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/395.