pgaskin / NickelMenu

The easiest way to launch scripts, change settings, and run actions on Kobo e-readers.
https://pgaskin.net/NickelMenu
MIT License
591 stars 32 forks source link

Testing NickelMenu 0.2.0 #56

Closed jackiew1 closed 4 years ago

jackiew1 commented 4 years ago

You asked for some testing feedback so here's mine.

Good news: I only have simple menu options. Everything I want is now working OK.

Not-so-good news: During my testing (on a KA1) I did have a problem which I was able to reproduce several times.

This is my config file:

menu_item : main : * Reboot              : power : reboot
menu_item : main : * Rescan books        : nickel_misc : rescan_books
menu_item : main : * Screenshots on      : nickel_setting : screenshots:true
menu_item : main : * Screenshots del/off : cmd_output : 500:rm -v /mnt/onboard/screen_*.png
  chain_success : nickel_misc    : rescan_books
  chain_always  : nickel_setting : screenshots:false
menu_item : main : * USBconnect          : nickel_misc : force_usb_connection

menu_item : reader : > Home             : nickel_misc : home
menu_item : reader : > My Books         : nickel_open : library:library2
menu_item : reader : * Invert Screen    : nickel_setting : invert
menu_item : reader : * Reboot           : power : reboot
menu_item : reader : * Screenshots on   : nickel_setting : screenshots:true
menu_item : reader : * USBconnect       : nickel_misc : force_usb_connection

These were the steps to reproduce the problem using the above config:

At this point the KA1 freezes and reboots. After this everything is OK.

I don't know if this is any help but this stack log was created:

OH THE HUMANITY!
pid: 724, tid: 724 (nickel), rev: efcb227b40228eba2d7cd9565e892f19332faf16
  >>> /usr/local/Kobo/nickel <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000028
 r0 016a9360  r1 00000000  r2 00000000  r3 302f82c8
 r4 00000028  r5 00000000  r6 302e2d5c  r7 00000001
 r8 00000021  r9 7eefeddc  10 302e332c  fp 302e32f8
 ip 000000f4  sp 7eefec68  lr 302db8d3  pc 302db454  cpsr 20070030
    #00 sp: 0x7eefec68 ip: 0x302db454  /usr/local/Kobo/imageformats/libnm.so: _Z15nm_menu_item_doP14nm_menu_item_t+0x63
    #01 sp: 0x7eefecd0 ip: 0x302db8d3  /usr/local/Kobo/imageformats/libnm.so: _ZN9QtPrivate18QFunctorSlotObjectIZ15_nm_menu_injectPvP5QMenu18nm_menu_location_tiEUlbE_Li1ENS_4ListIIbEEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPS1_Pb+0x4a
    #02 sp: 0x7eefece8 ip: 0x2ea3d7d5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN11QMetaObject8activateEP7QObjectiiPPv+0x1dc
    #03 sp: 0x7eefed98 ip: 0x2ddd4ff1  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN7QAction9triggeredEb+0x24
    #04 sp: 0x7eefedc0 ip: 0x2ddd6e2b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN7QAction8activateENS_11ActionEventE+0x9a
    #05 sp: 0x7eefedd8 ip: 0x2b6e655b  /usr/local/Kobo/libnickel.so.1.0.0: _ZN22AbstractMenuController10tapGestureEP15GestureReceiverP10TapGesture+0xd6
    #06 sp: 0x7eefee18 ip: 0x2b6b9a33  /usr/local/Kobo/libnickel.so.1.0.0: _ZN15GestureReceiver21sendGestureToDelegateEP13QGestureEventP15GestureDelegate+0xd6
    #07 sp: 0x7eefee38 ip: 0x2ddd9b83  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0x56
    #08 sp: 0x7eefee50 ip: 0x2dddf575  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN12QApplication6notifyEP7QObjectP6QEvent+0xfd8
    #09 sp: 0x7eefefb0 ip: 0x2b955b2f  /usr/local/Kobo/libnickel.so.1.0.0: _ZN18Nickel3Application6notifyEP7QObjectP6QEvent+0x32
    #10 sp: 0x7eefefe0 ip: 0x2ea1c9c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x84
    #11 sp: 0x7eeff010 ip: 0x2de15681  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN18QGestureRecognizer20unregisterRecognizerEN2Qt11GestureTypeE+0x34f0
    #12 sp: 0x7eeff0d8 ip: 0x2de1641f  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN18QGestureRecognizer20unregisterRecognizerEN2Qt11GestureTypeE+0x428e
    #13 sp: 0x7eeff188 ip: 0x2de16b39  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN18QGestureRecognizer20unregisterRecognizerEN2Qt11GestureTypeE+0x49a8
    #14 sp: 0x7eeff1d0 ip: 0x2ddde63d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN12QApplication6notifyEP7QObjectP6QEvent+0xa0
    #15 sp: 0x7eeff330 ip: 0x2b955b2f  /usr/local/Kobo/libnickel.so.1.0.0: _ZN18Nickel3Application6notifyEP7QObjectP6QEvent+0x32
    #16 sp: 0x7eeff360 ip: 0x2ea1c9c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x84
    #17 sp: 0x7eeff390 ip: 0x2dde09bf  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN19QApplicationPrivate22translateRawTouchEventEP7QWidgetP12QTouchDeviceRK5QListIN11QTouchEvent10TouchPointEEm+0x996
    #18 sp: 0x7eeff450 ip: 0x2de247b1  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZThn8_NK7QWidget6metricEN12QPaintDevice17PaintDeviceMetricE+0x2e38
    #19 sp: 0x7eeff4d0 ip: 0x2ddd9b83  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0x56
    #20 sp: 0x7eeff4e8 ip: 0x2ddde9bf  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN12QApplication6notifyEP7QObjectP6QEvent+0x422
    #21 sp: 0x7eeff648 ip: 0x2b955b2f  /usr/local/Kobo/libnickel.so.1.0.0: _ZN18Nickel3Application6notifyEP7QObjectP6QEvent+0x32
    #22 sp: 0x7eeff678 ip: 0x2ea1c9c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x84
    #23 sp: 0x7eeff6a8 ip: 0x2e5a829d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtGui.so.4.6.2: _ZN22QGuiApplicationPrivate17processTouchEventEPN29QWindowSystemInterfacePrivate10TouchEventE+0xd50
    #24 sp: 0x7eeff818 ip: 0x2e5a9f09  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtGui.so.4.6.2: _ZN22QGuiApplicationPrivate24processWindowSystemEventEPN29QWindowSystemInterfacePrivate17WindowSystemEventE+0x18c
    #25 sp: 0x7eeff850 ip: 0x2e598797  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtGui.so.4.6.2: _ZN22QWindowSystemInterface22sendWindowSystemEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x1e
    #26 sp: 0x7eeff860 ip: 0x300b9487  /usr/local/Kobo/platforms/libkobo.so: _ZN13QFontEngineFT19alphaRGBMapForGlyphEj6QFixedRK10QTransform+0xf3a
    #27 sp: 0x7eeff870 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #28 sp: 0x7eeff8a8 ip: 0x2ea201e9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN16QCoreApplication4execEv+0x58
    #29 sp: 0x7eeff8d8 ip: 0x0001e609  /usr/local/Kobo/nickel: main+0xcb8
    #30 sp: 0x7eeffa98 ip: 0x2fd2f5d8  /lib/libc-2.11.1.so: __libc_start_main+0x114
    #31 sp: 0x7eeffbe8 ip: 0x0001eb7d  /usr/local/Kobo/nickel: _start+0x20
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1369
 r0 00000006  r1 30b0ad80  r2 00000000  r3 00000000
 r4 00000000  r5 00000020  r6 30b0ad80  r7 0000008e
 r8 2ebf7f38  r9 00000000  10 01495fb0  fp 00000000
 ip 00000000  sp 30b0ad60  lr 30b0b910  pc 2fde5eb4  cpsr 800e0010
    #00 sp: 0x30b0ad60 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x30b0ad70 ip: 0x2e9d4d3d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN9QLockFile6unlockEv+0x17e4
    #02 sp: 0x30b0ae28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #03 sp: 0x30b0ae50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #04 sp: 0x30b0af90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1377
 r0 0000000e  r1 31600560  r2 31600770  r3 31600980
 r4 00000000  r5 00000000  r6 0000000e  r7 0000008e
 r8 31600560  r9 31600770  10 31600980  fp 31600468
 ip 00000000  sp 314fec40  lr 314ff910  pc 2fde5eb4  cpsr 80000010
    #00 sp: 0x314fec40 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x314fec50 ip: 0x2ea567fb  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _Z14qt_safe_selectiP6fd_setS0_S0_PK8timespec+0x172
    #02 sp: 0x314feca0 ip: 0x2ea57d1d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN27QEventDispatcherUNIXPrivate8doSelectE6QFlagsIN10QEventLoop17ProcessEventsFlagEEP8timespec+0xdc
    #03 sp: 0x314feda0 ip: 0x2ea581c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0xe8
    #04 sp: 0x314fedc8 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #05 sp: 0x314fee00 ip: 0x2e8a65b5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread4execEv+0x60
    #06 sp: 0x314fee28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #07 sp: 0x314fee50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #08 sp: 0x314fef90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1379
 r0 0000000c  r1 014d5008  r2 014d5218  r3 014d5428
 r4 00000000  r5 00000000  r6 0000000c  r7 0000008e
 r8 014d5008  r9 014d5218  10 014d5428  fp 014a7380
 ip 00000000  sp 31efec40  lr 31eff910  pc 2fde5eb4  cpsr 80070010
    #00 sp: 0x31efec40 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x31efec50 ip: 0x2ea567fb  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _Z14qt_safe_selectiP6fd_setS0_S0_PK8timespec+0x172
    #02 sp: 0x31efeca0 ip: 0x2ea57d1d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN27QEventDispatcherUNIXPrivate8doSelectE6QFlagsIN10QEventLoop17ProcessEventsFlagEEP8timespec+0xdc
    #03 sp: 0x31efeda0 ip: 0x2ea581c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0xe8
    #04 sp: 0x31efedc8 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #05 sp: 0x31efee00 ip: 0x2e8a65b5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread4execEv+0x60
    #06 sp: 0x31efee28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #07 sp: 0x31efee50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #08 sp: 0x31efef90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1408
 r0 0000001d  r1 35b519a0  r2 00000000  r3 00000000
 r4 00000000  r5 35b51a20  r6 30be4d68  r7 0000008e
 r8 31603c70  r9 35b51960  10 30be4f54  fp 35b51a20
 ip 00000000  sp 35b51908  lr 35b52910  pc 2fde5eb4  cpsr 80070010
    #00 sp: 0x35b51908 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x35b51918 ip: 0x30be1ec5  /usr/local/Kobo/generic/libkevdevtouch.so: _ZN24QEvdevTouchScreenHandler8readDataEv+0x8c
    #02 sp: 0x35b51a48 ip: 0x2ea469d7  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN15QSocketNotifier5eventEP6QEvent+0x1f2
    #03 sp: 0x35b51a68 ip: 0x2ea3e599  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QObject5eventEP6QEvent+0xd0
    #04 sp: 0x35b51b48 ip: 0x2ddd9b83  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0x56
    #05 sp: 0x35b51b60 ip: 0x2ddde9bf  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWidgets.so.4.6.2: _ZN12QApplication6notifyEP7QObjectP6QEvent+0x422
    #06 sp: 0x35b51cc0 ip: 0x2b955b2f  /usr/local/Kobo/libnickel.so.1.0.0: _ZN18Nickel3Application6notifyEP7QObjectP6QEvent+0x32
    #07 sp: 0x35b51cf0 ip: 0x2ea1c9c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x84
    #08 sp: 0x35b51d20 ip: 0x2ea5943d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN14QTimerInfoList14activateTimersEv+0x400
    #09 sp: 0x35b51d88 ip: 0x2ea581b7  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0xd6
    #10 sp: 0x35b51db0 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #11 sp: 0x35b51de8 ip: 0x2e8a65b5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread4execEv+0x60
    #12 sp: 0x35b51e10 ip: 0x30be40cd  /usr/local/Kobo/generic/libkevdevtouch.so: _ZN30QEvdevTouchScreenHandlerThread3runEv+0x58
    #13 sp: 0x35b51e28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #14 sp: 0x35b51e50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #15 sp: 0x35b51f90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1418
 r0 0000001f  r1 30c00cc0  r2 30c00ed0  r3 30c010e0
 r4 00000000  r5 00000000  r6 0000001f  r7 0000008e
 r8 30c00cc0  r9 30c00ed0  10 30c010e0  fp 30c00bc8
 ip 00000000  sp 36351c40  lr 36352910  pc 2fde5eb4  cpsr 800f0010
    #00 sp: 0x36351c40 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x36351c50 ip: 0x2ea567fb  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _Z14qt_safe_selectiP6fd_setS0_S0_PK8timespec+0x172
    #02 sp: 0x36351ca0 ip: 0x2ea57d1d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN27QEventDispatcherUNIXPrivate8doSelectE6QFlagsIN10QEventLoop17ProcessEventsFlagEEP8timespec+0xdc
    #03 sp: 0x36351da0 ip: 0x2ea581c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0xe8
    #04 sp: 0x36351dc8 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #05 sp: 0x36351e00 ip: 0x2e8a65b5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread4execEv+0x60
    #06 sp: 0x36351e28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #07 sp: 0x36351e50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #08 sp: 0x36351f90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1421
 r0 0000001b  r1 31600f10  r2 31601120  r3 31601330
 r4 00000000  r5 00000000  r6 0000001b  r7 0000008e
 r8 31600f10  r9 31601120  10 31601330  fp 31600e18
 ip 00000000  sp 326fec40  lr 326ff910  pc 2fde5eb4  cpsr 80070010
    #00 sp: 0x326fec40 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x326fec50 ip: 0x2ea567fb  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _Z14qt_safe_selectiP6fd_setS0_S0_PK8timespec+0x172
    #02 sp: 0x326feca0 ip: 0x2ea57d1d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN27QEventDispatcherUNIXPrivate8doSelectE6QFlagsIN10QEventLoop17ProcessEventsFlagEEP8timespec+0xdc
    #03 sp: 0x326feda0 ip: 0x2ea581c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0xe8
    #04 sp: 0x326fedc8 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #05 sp: 0x326fee00 ip: 0x2e8a65b5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread4execEv+0x60
    #06 sp: 0x326fee28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #07 sp: 0x326fee50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #08 sp: 0x326fef90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1612
 r0 00000027  r1 30c02870  r2 30c02a80  r3 30c02c90
 r4 00000000  r5 00000000  r6 00000027  r7 0000008e
 r8 30c02870  r9 30c02a80  10 30c02c90  fp 30c01438
 ip 00000000  sp 32efec40  lr 32eff910  pc 2fde5eb4  cpsr 80070010
    #00 sp: 0x32efec40 ip: 0x2fde5eb4  /lib/libc-2.11.1.so: __select+0x44
    #01 sp: 0x32efec50 ip: 0x2ea567fb  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _Z14qt_safe_selectiP6fd_setS0_S0_PK8timespec+0x172
    #02 sp: 0x32efeca0 ip: 0x2ea57d1d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN27QEventDispatcherUNIXPrivate8doSelectE6QFlagsIN10QEventLoop17ProcessEventsFlagEEP8timespec+0xdc
    #03 sp: 0x32efeda0 ip: 0x2ea581c9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0xe8
    #04 sp: 0x32efedc8 ip: 0x2ea1b30b  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0xe6
    #05 sp: 0x32efee00 ip: 0x2e8a65b5  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread4execEv+0x60
    #06 sp: 0x32efee28 ip: 0x2e8a977d  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtCore.so.4.6.2: _ZN7QThread21setTerminationEnabledEb+0x218
    #07 sp: 0x32efee50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #08 sp: 0x32efef90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1932
 r0 2dcfb004  r1 00000080  r2 00000003  r3 00000000
 r4 00000003  r5 2dcfb000  r6 00000000  r7 000000f0
 r8 00000000  r9 2dcfafe8  10 00000000  fp 35351df4
 ip 35351d7c  sp 35351d90  lr 35352910  pc 2fb867b8  cpsr 800f0010
    #00 sp: 0x35351d90 ip: 0x2fb867b8  /lib/libpthread-2.11.1.so: pthread_cond_wait+0x154
    #01 sp: 0x35351df8 ip: 0x2d8f3aad  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF8Internal21fastMallocMatchFailedEPv+0xaf4
    #02 sp: 0x35351e48 ip: 0x2d8f3ae9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF8Internal21fastMallocMatchFailedEPv+0xb30
    #03 sp: 0x35351e58 ip: 0x2d8f3ae9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF8Internal21fastMallocMatchFailedEPv+0xb30
    #04 sp: 0x35352460 ip: 0x2d8f3ae9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF8Internal21fastMallocMatchFailedEPv+0xb30
    #05 sp: 0x00000010 ip: 0x2d8f3ae9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF8Internal21fastMallocMatchFailedEPv+0xb30
    #06 sp: 0x0000000f ip: 0x2d8f3ae9  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF8Internal21fastMallocMatchFailedEPv+0xb30
    #07 sp: 0x0000000f ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pid: 724, tid: 1936
 r0 38313144  r1 00000080  r2 0000000f  r3 00000000
 r4 0000000f  r5 38313140  r6 00000000  r7 000000f0
 r8 00000000  r9 38313124  10 00000000  fp 3a7c0e14
 ip 3a7c0d9c  sp 3a7c0db0  lr 3a7c1910  pc 2fb867b8  cpsr 800f0010
    #00 sp: 0x3a7c0db0 ip: 0x2fb867b8  /lib/libpthread-2.11.1.so: pthread_cond_wait+0x154
    #01 sp: 0x3a7c0e18 ip: 0x2d6e2775  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3JSC9HandleSet12writeBarrierEPNS_7JSValueERKS1_+0x724
    #02 sp: 0x3a7c0e40 ip: 0x2d918dab  /usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib/libQtWebKit.so.4.6.2: _ZN3WTF11OSAllocator18releaseDecommittedEPvj+0xe2
    #03 sp: 0x3a7c0e50 ip: 0x2fb80e50  /lib/libpthread-2.11.1.so: __pthread_get_minstack+0x1610
    #04 sp: 0x3a7c0f90 ip: 0x2fdecfb0  /lib/libc-2.11.1.so: clone+0x80
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
Recorded last user operations: 
last user operation[7]: appStart 
last user operation[6]: mainNavOption 
last user operation[5]: homeWidgetClick
last user operation[4]: openContentRela
last user operation[3]: readerShown 
last user operation[2]: readingMenu 
last user operation[1]: home 
last user operation[0]: readerHidden 
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
pgaskin commented 4 years ago

Thanks for testing this. I'll look into the issue later this week.

pgaskin commented 4 years ago

I just realized what the issue is. Since #47, NM updates menu items when the config changes, but that's only detected the first time it's checked (i.e. it will update the first menu after the change, but leave the other one as-is). To fix this, I'll either need to store the current revision with an incrementing counter (which is stored as a property on the menu), or store which menus were updated each time.

I haven't tried this, but I think a simpler way to reproduce this issue would be to open the reader menu, go home and connect over USB, make a config file change which changes a reader menu item, open the main menu, then open that item from the reader menu again.

Update: I tried it, and it's slightly more complex to reproduce the issue than that. It only works the other way around since the reader menu gets regenerated every time a new book is opened. To reproduce the issue, the config must be changed, then the reader menu must be the first to be pressed, then go back to the home screen and open an old menu item from there.