Rearranging the pannels crushed the app and generated fatal error

It gave me the following screen:

Error
Joplin encountered a fatal error and could not continue. To report the error, please copy the entire content of this page and post it on Joplin forum or GitHub.

Message
Cannot read property 'indexOf' of undefined

Version info
Joplin for Desktop

Copyright © 2016-2021 Laurent Cozic
Joplin 1.7.5 (prod, win32)

Client ID: 33ba199fdf0d4626a0dca0ae02ce02e5
Sync Version: 2
Profile Version: 34
Keychain Supported: Yes

Revision: 11b8821bf (master)
Stack trace
TypeError: Cannot read property 'indexOf' of undefined
at MainScreenComponent.resizableLayout_renderItem (C:\Program Files\Joplin\resources\app.asar\gui\MainScreen\MainScreen.js:475:17)
at renderLayoutItem (C:\Program Files\Joplin\resources\app.asar\gui\ResizableLayout\ResizableLayout.js:89:32)
at renderLayoutItem (C:\Program Files\Joplin\resources\app.asar\gui\ResizableLayout\ResizableLayout.js:102:41)
at ResizableLayout (C:\Program Files\Joplin\resources\app.asar\gui\ResizableLayout\ResizableLayout.js:117:22)
at renderWithHooks (C:\Program Files\Joplin\resources\app.asar\node_modules\react-dom\cjs\react-dom.development.js:15108:18)
at updateFunctionComponent (C:\Program Files\Joplin\resources\app.asar\node_modules\react-dom\cjs\react-dom.development.js:16925:20)
at beginWork$1 (C:\Program Files\Joplin\resources\app.asar\node_modules\react-dom\cjs\react-dom.development.js:18498:16)
at HTMLUnknownElement.callCallback (C:\Program Files\Joplin\resources\app.asar\node_modules\react-dom\cjs\react-dom.development.js:347:14)
at Object.invokeGuardedCallbackDev (C:\Program Files\Joplin\resources\app.asar\node_modules\react-dom\cjs\react-dom.development.js:397:16)
at invokeGuardedCallback (C:\Program Files\Joplin\resources\app.asar\node_modules\react-dom\cjs\react-dom.development.js:454:31)
Component stack

in ResizableLayout (created by MainScreenComponent)
in div (created by MainScreenComponent)
in MainScreenComponent (created by Connect(MainScreenComponent))
in Connect(MainScreenComponent) (created by NavigatorComponent)
in div (created by NavigatorComponent)
in NavigatorComponent (created by Connect(NavigatorComponent))
in Connect(NavigatorComponent) (created by RootComponent)
in ThemeProvider (created by RootComponent)
in StyleSheetManager (created by RootComponent)
in RootComponent (created by Connect(RootComponent))
in Connect(RootComponent)
in ErrorBoundary
in Provider

It happens in th following situation:
The notebooks panel was on the very left
To its right the outline panel
To its right the Notes panel
When I tried the move the Notes panel to the left it crashes and give this error
I tried later moving the outline panel to the right insted (to have the same arrangement, i.e. Notes and outlin one on top of the other) it worked fine.

@cqroot, I can't replicate the issue but I think it's partly due to the use of a deprecated function call here: joplin-outline/index.ts at b59c68f9e44eafec94c9e2274068afba5ca17b0d · cqroot/joplin-outline · GitHub

Normally an ID should be provided so that the app can know what panel corresponds to what plugin across restart. Currently it if doesn't the app should set a default ID, but for some reason it's not happening here.

I'm going to fix it anyway so that the app doesn't crash when the ID is undefined, but you might want to set an ID as the function call without an ID will stop working from the next version.

Thanks for your prompt response Laurent.
to replicate the issue

  1. install favorites, note tabs, outline plugins
  2. Deactivate outline and restart
  3. Reactivate outline
  4. go to view->change application layout. Here outline should appear on the far right side
  5. move it to the left
  6. once it reaches the before last place, i.e. between notes panle and notebooks panel, move the notes to the left.
    it crashes.

Now, regarding the ID and function thing.

I'm not a programmer, so forgive me but I have no idea what you are talking about or how to do it. Would that mean that the whole app might not work for me from the next version?

@osman
would yo please let me know what you mean by outline panel ?

That section on the screen that appears when you install the outline plugin

I will fix it as soon as possible.

2 Likes

Thanks alot. btw.. great plugin.. keep it up

I did not reproduce your problem, but I followed laurent's suggestion and modified the deprecated method and added id to the panel. Try 1.0.11.Thanks for your feedback.

Will do and let you know asap. Thanks for your prompt reaction.

Just tried it.. same result. crashed, but when I moved the outline panel to the right, it worked fine.

@osman, is the bug still happening for you? If so, could you try with the latest version please? Release v1.7.10 · laurent22/joplin · GitHub When doing so please open the dev tools first (from the Help menu), then try to replicate the same steps to cause the crash.

Normally with this version it shouldn't crash, but it should display an error in the console, perhaps providing more info as to why it's happening. If you manage to get this error message, please could you post it here?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.