mupchrch / split-diff

Side-by-side file compare for the Atom text editor.
https://atom.io/packages/split-diff
MIT License
200 stars 26 forks source link

Uncaught TypeError: Cannot read property 'clearDiff' of null #94

Closed tinny77 closed 7 years ago

tinny77 commented 7 years ago

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.14.4 ia32 Electron: 1.3.13 OS: Unknown Windows version Thrown From: split-diff package 1.2.0

Stack Trace

Uncaught TypeError: Cannot read property 'clearDiff' of null

At C:\Users\USER\.atom\packages\split-diff\lib\split-diff.coffee:253

TypeError: Cannot read property 'clearDiff' of null
    at Object._resumeUpdateDiff (/packages/split-diff/lib/split-diff.coffee:253:14)
    at /packages/split-diff/lib/split-diff.coffee:239:8
    at /app.asar/src/buffered-process.js:177:11)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at Pipe.onread (net.js:543:20)

Commands

     -6:42.3.0 search-bar:toggle (atom-text-editor.editor)
     -6:40.5.0 tree-view:show (atom-workspace.workspace.scrollbars-visible-always.theme-juicy-syntax.theme-atom-dark-ui)
     -6:28 multirow-tabs:toggle (input.hidden-input)
     -6:16 split-fidd:toggle (atom-text-editor.editor)
     -2:59 core:paste (input.hidden-input)
     -2:47.3.0 split-diff:toggle (atom-text-editor.editor)
     -2:35.9.0 core:paste (input.hidden-input)
     -2:34.8.0 core:backspace (input.hidden-input)
     -2:32.9.0 core:confirm (input.hidden-input)
     -1:08.9.0 split-diff:toggle (atom-text-editor.editor)
     -0:33.2.0 split-diff:copy-to-left (atom-workspace.workspace.scrollbars-visible-always.theme-juicy-syntax.theme-atom-dark-ui)
     -0:25 core:backspace (input.hidden-input)
     -0:16.3.0 core:save (input.hidden-input)

Non-Core Packages

advanced-open-file 0.16.5 
atom-alignment 0.12.1 
atom-beautify 0.29.17 
atom-material-ui 1.3.9 
autoprefixer 3.6.1 
bookmark-panel 1.0.0 
bottom-dock 0.4.4 
color-picker 2.2.5 
emmet 2.4.3 
file-icons 2.0.17 
file-watcher 1.0.3 
foldername-tabs 0.2.4 
goto-last-edit 0.3.2 
grunt-runner 0.14.0 
gulp-control 0.5.0 
highlight-selected 0.12.0 
html-to-css 0.2.2 
jquery-snippets 11.0.0 
jshint 1.8.6 
juicy-syntax 1.0.3 
language-asp 1.0.0 
language-asp-html 0.2.0 
language-vb 0.1.0-pre1 
language-vbscript 0.7.0 
last-cursor-position 0.9.0 
linter 1.11.23 
linter-less 2.6.0 
minimap 4.26.8 
minimap-bookmarks 0.4.2 
minimap-pigments 0.2.2 
multirow-tabs 0.3.3 
pigments 0.39.0 
project-manager 3.3.3 
project-viewer 1.0.9 
qolor 0.4.1 
remember-folds 0.3.0 
seti-ui 1.6.1 
simple-drag-drop-text 0.3.4 
split-diff 1.2.0 
sync-settings 0.8.1 
tabs-to-spaces 1.0.3 
tasks 2.6.6 
todo-show 1.11.0 
tree-view-search-bar 0.1.3 
zentabs 0.8.8 
mupchrch commented 7 years ago

Hi @tinny77, any idea how to reproduce this issue?

littlebee commented 7 years ago

see also https://github.com/littlebee/git-time-machine/issues/98

I'll work on a PR tomorrow to add guards to prevent this and this issue: https://github.com/littlebee/git-time-machine/issues/104. I think both are happening when the editor has gone away and _resumeUpdateDiff() resumes.... that's all I've got right now.

I've been able to repo it on the Mac by clicking and dragging in the git-time-machine time plot. The suck part is that once it happens once, it will continue to happen when ever you save the file until you reload atom.