Bug #2439

ST crash if page.redirect is called from page.onEvent function

Added by Leonid Protasov over 6 years ago. Updated over 6 years ago.

Status:FixedStart date:12/30/2014
Priority:NormalDue date:
Assignee:Andreas Smas% Done:

100%

Category:Ecmascript & Duktape
Target version:4.8
Found in version:4.7.589 Platform:Linux

Description

To reproduce - enable 'Open additional videoinfo page' in Settings.
Open any video.
Press Add to playlists.

The code in youtube v3.0.7 (from repo)

                page.onEvent('addToPlaylist', function() {
                    page.redirect(plugin.getDescriptor().id + ':addToPlaylists:' + escape(videoId));
                });

The crash:

FATAL 56: uncaught error
PANIC 56: uncaught error (calling abort)
CRASH           [EMERG]: Signal: 6 in thread propdispatch - PRG: Showtime (4.7.589.ge3cb8) EXE: /root/showtime/build.linux/showtime, CWD: /root/showtime  
navigator       [DEBUG]: Following redirect to youtube:addToPlaylists:74Wptb7GhoE
CRASH           [EMERG]: Fault address ??:0 0x8f13 (N/A)
CRASH           [EMERG]: Loaded libraries: /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 /usr/lib/x86_64-linux-gnu/libfreetype.so.6 /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 /usr/lib/x86_64-linux-gnu/libX11.so.6 /usr/lib/x86_64-linux-gnu/libXext.so.6 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/x86_64-linux-gnu/libpulse.so.0 /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 /lib/x86_64-linux-gnu/libglib-2.0.so.0 /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 /lib/x86_64-linux-gnu/librt.so.1 /usr/lib/libwebkitgtk-1.0.so.0 /usr/lib/x86_64-linux-gnu/libXss.so.1 /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 /usr/lib/x86_64-linux-gnu/libXv.so.1 /lib/x86_64-linux-gnu/libm.so.6 /usr/lib/x86_64-linux-gnu/libavahi-common.so.3 /usr/lib/x86_64-linux-gnu/libavahi-client.so.3 /lib/x86_64-linux-gnu/libssl.so.1.0.0 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /usr/lib/x86_64-linux-gnu/libvdpau.so.1 /lib/x86_64-linux-
CRASH           [EMERG]: Register dump [23]: 00007f3d653bd700 0000000000000000 0000000000000008 0000000000000202 0000000000000037 0000000000000ddc 0000000000be1583 0000000000000003 0000000000008f13 0000000000008f1d 0000000000000038 0000000000be123d 0000000000000006 0000000000000000 ffffffffffffffff 00007f3d653bc258 00007f3d7959e0d5 0000000000000202 0000000000000033 0000000000000000 0000000000000000 0000000000000000 0000000000000000 
CRASH           [EMERG]: STACKTRACE (18 frames)
CRASH           [EMERG]: /root/showtime/src/arch/linux/linux_trap.c:273 0x4117f1
CRASH           [EMERG]: /root/showtime/src/arch/linux/linux_trap.c:268 0x56ac3d
CRASH           [EMERG]: ??:0 0x7f3d79d51cb0
CRASH           [EMERG]: gsignal+0x35  (/lib/x86_64-linux-gnu/libc.so.6)
CRASH           [EMERG]: abort+0x17b  (/lib/x86_64-linux-gnu/libc.so.6)
CRASH           [EMERG]: /root/showtime/duk_error_macros.c:111 0x44d33d
CRASH           [EMERG]: /root/showtime/duk_error_macros.c:81 0x44d919
CRASH           [EMERG]: /root/showtime/duk_api_stack.c:3651 0x451d4d
CRASH           [EMERG]: /root/showtime/duk_error_longjmp.c:22 0x451dc5
CRASH           [EMERG]: /root/showtime/duk_error_throw.c:111 0x458412
CRASH           [EMERG]: /root/showtime/duk_api_stack.c:3548 0x461fe7
CRASH           [EMERG]: /root/showtime/src/ecmascript/es_prop.c:557 0x598e8b
CRASH           [EMERG]: /root/showtime/src/prop/prop_core.c:817 0x606db5
CRASH           [EMERG]: /root/showtime/src/prop/prop_core.c:886 0x608115
CRASH           [EMERG]: /root/showtime/src/prop/prop_core.c:1030 0x6081f8
CRASH           [EMERG]: /root/showtime/src/arch/posix/posix_threads.c:166 0x56c7b0
CRASH           [EMERG]: ??:0 0x7f3d79d49e9a
CRASH           [EMERG]: clone+0x6d  (/lib/x86_64-linux-gnu/libc.so.6)

Associated revisions

Revision 180b26db
Added by Andreas Smas over 6 years ago

ecmascript/prop: Get rid of a bad duk_pop()

Fixes #2439

Change included in version 4.7.591

History

#1 Updated by Andreas Smas over 6 years ago

  • Status changed from New to Fixed
  • % Done changed from 0 to 100

Also available in: Atom PDF