Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While some process that communicates through IPC using
promifisyIpc
andsubscribeIpc
modules is running it tries to send process/success/failure messages to the renderer from the main process. For example, installing arduino C++ libraries, arduino packages, upload to the board and etc.So when User closes IDE while a process is running it causes exception, cause the main process can't send data to the renderer, that was destroyed.
Fortunately, electron developers added a method
event.sender.isDestroyed()
, so we can avoid sending data to the destroyed process. That I did in this PR and it fixes the bug.How to reproduce the bug
Then you can checkout this branch and repeat these steps to be sure it works fine :)