Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

white window of death when cancelling image resize (via drag and drop) #3324

Closed
tessus opened this issue Jun 4, 2020 · 0 comments
Closed
Labels
bug It's a bug

Comments

@tessus
Copy link
Collaborator

tessus commented Jun 4, 2020

Environment

Joplin version: git master f4092c0
Platform: macOS (doeesn't matter though)
OS specifics: 10.14.6

Steps to reproduce

  1. drag large image into ace editor
  2. click Cancel
  3. WWOD (white window of death) - Joplin becomes a white window

Describe what you expected to happen

Action should be canceled without error. Btw, it works, when the same large image is attached via the toolbar button.

Logfile

Error in console:

/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7707 Uncaught TypeError: Cannot read property 'match' of null
    at Document.$detectNewLine (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7707)
    at Document.insert (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7779)
    at Document.setValue (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7687)
    at Editor.setValue (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:13109)
    at ReactAce.componentWillReceiveProps (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-ace/lib/ace.js:193)
    at callComponentWillReceiveProps (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:13388)
    at updateClassInstance (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:13598)
    at updateClassComponent (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:16992)
    at beginWork$1 (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:18505)
    at HTMLUnknownElement.callCallback (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:347)
$detectNewLine @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7707
insert @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7779
setValue @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7687
setValue @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:13109
componentWillReceiveProps @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-ace/lib/ace.js:193
callComponentWillReceiveProps @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:13388
updateClassInstance @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:13598
updateClassComponent @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:16992
beginWork$1 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:18505
callCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:347
invokeGuardedCallbackDev @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:397
invokeGuardedCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:454
beginWork$$1 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:23217
performUnitOfWork @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:22208
workLoopSync @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:22185
renderRoot @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21878
runRootCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21554
(anonymous) @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11353
unstable_runWithPriority @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/scheduler/cjs/scheduler.development.js:643
runWithPriority$2 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11305
flushSyncCallbackQueueImpl @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11349
flushSyncCallbackQueue @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11338
scheduleUpdateOnFiber @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21431
dispatchAction @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:15816
(anonymous) @ NoteEditor.tsx:219
(anonymous) @ NoteEditor.tsx:228
(anonymous) @ AceEditor.tsx:104
(anonymous) @ AceEditor.tsx:261
fulfilled @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:5
Promise.then (async)
step @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:7
(anonymous) @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:8
__awaiter @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:4
execCommand @ AceEditor.tsx:249
(anonymous) @ useDropHandler.ts:43
(anonymous) @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/utils/useDropHandler.js:8
__awaiter @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/utils/useDropHandler.js:4
(anonymous) @ useDropHandler.ts:11
callCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:347
invokeGuardedCallbackDev @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:397
invokeGuardedCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:454
invokeGuardedCallbackAndCatchFirstError @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:468
executeDispatch @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:600
executeDispatchesInOrder @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:622
executeDispatchesAndRelease @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:725
executeDispatchesAndReleaseTopLevel @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:733
forEachAccumulated @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:707
runEventsInBatch @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:750
runExtractedPluginEventsInBatch @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:881
handleTopLevel @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:5901
batchedEventUpdates @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:2344
dispatchEventForPluginEventSystem @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:5996
dispatchEvent @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:6025
unstable_runWithPriority @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/scheduler/cjs/scheduler.development.js:643
runWithPriority$2 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11305
discreteUpdates$1 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21672
discreteUpdates @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:2359
dispatchDiscreteEvent @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:5979
main-html.js:49 The above error occurred in the <ReactAce> component:
    in ReactAce (created by ForwardRef(AceEditor))
    in div (created by ForwardRef(AceEditor))
    in div (created by ForwardRef(AceEditor))
    in div (created by ForwardRef(AceEditor))
    in ForwardRef(AceEditor) (created by NoteEditor)
    in div (created by NoteEditor)
    in div (created by NoteEditor)
    in div (created by NoteEditor)
    in NoteEditor (created by Connect(NoteEditor))
    in Connect(NoteEditor) (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 RootComponent (created by Connect(RootComponent))
    in Connect(RootComponent)
    in Provider

Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://fb.me/react-error-boundaries to learn more about error boundaries.
output.<computed> @ main-html.js:49
logCapturedError @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:19814
logError @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:19850
update.callback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:20929
callCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:12929
commitUpdateEffects @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:12968
commitUpdateQueue @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:12959
commitLifeCycles @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:20098
commitLayoutEffects @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:22813
callCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:347
invokeGuardedCallbackDev @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:397
invokeGuardedCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:454
commitRootImpl @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:22585
unstable_runWithPriority @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/scheduler/cjs/scheduler.development.js:643
runWithPriority$2 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11305
commitRoot @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:22414
runRootCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21554
(anonymous) @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11353
unstable_runWithPriority @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/scheduler/cjs/scheduler.development.js:643
runWithPriority$2 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11305
flushSyncCallbackQueueImpl @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11349
flushSyncCallbackQueue @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11338
scheduleUpdateOnFiber @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21431
dispatchAction @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:15816
(anonymous) @ NoteEditor.tsx:219
(anonymous) @ NoteEditor.tsx:228
(anonymous) @ AceEditor.tsx:104
(anonymous) @ AceEditor.tsx:261
fulfilled @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:5
Promise.then (async)
step @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:7
(anonymous) @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:8
__awaiter @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:4
execCommand @ AceEditor.tsx:249
(anonymous) @ useDropHandler.ts:43
(anonymous) @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/utils/useDropHandler.js:8
__awaiter @ /Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/utils/useDropHandler.js:4
(anonymous) @ useDropHandler.ts:11
callCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:347
invokeGuardedCallbackDev @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:397
invokeGuardedCallback @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:454
invokeGuardedCallbackAndCatchFirstError @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:468
executeDispatch @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:600
executeDispatchesInOrder @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:622
executeDispatchesAndRelease @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:725
executeDispatchesAndReleaseTopLevel @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:733
forEachAccumulated @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:707
runEventsInBatch @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:750
runExtractedPluginEventsInBatch @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:881
handleTopLevel @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:5901
batchedEventUpdates @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:2344
dispatchEventForPluginEventSystem @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:5996
dispatchEvent @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:6025
unstable_runWithPriority @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/scheduler/cjs/scheduler.development.js:643
runWithPriority$2 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:11305
discreteUpdates$1 @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:21672
discreteUpdates @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:2359
dispatchDiscreteEvent @ /Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:5979
/Users/tessus/data/work/joplin/ElectronClient/gui/NoteEditor/NoteBody/AceEditor/AceEditor.js:5 Uncaught (in promise) TypeError: Cannot read property 'match' of null
    at Document.$detectNewLine (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7707)
    at Document.insert (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7779)
    at Document.setValue (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:7687)
    at Editor.setValue (/Users/tessus/data/work/joplin/ElectronClient/node_modules/brace/index.js:13109)
    at ReactAce.componentWillReceiveProps (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-ace/lib/ace.js:193)
    at callComponentWillReceiveProps (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:13388)
    at updateClassInstance (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:13598)
    at updateClassComponent (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:16992)
    at beginWork$1 (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:18505)
    at HTMLUnknownElement.callCallback (/Users/tessus/data/work/joplin/ElectronClient/node_modules/react-dom/cjs/react-dom.development.js:347)
@tessus tessus added the bug It's a bug label Jun 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug It's a bug
Projects
None yet
Development

No branches or pull requests

1 participant