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

Fix the IPC message processing on scide #5015

Merged

Conversation

bgola
Copy link
Contributor

@bgola bgola commented Jun 14, 2020

Purpose and Motivation

Fixes: #4688

This is a pretty nasty bug that causes all sorts of random failures. The message processor for the IPC between ide and lang will fail if it doesn't process a message in one go because it loses track of the remaining available data.

When this happens, it never recovers, causing all sort of problems in the IDE, anything that depends on ScIDE.send stops to work, include the HelpBrowser. The only way to recover is restarting the whole IDE.

Please see #4688 for an easy way to reproduce the problem.
On Linux you might need a bigger value (60000 for example) and a few tries to trigger the bug, but it is pretty constant. I think other bugs reported are also caused by this, including in quarks that use a lot the interaction between the IDE and language such as @adcxyz 's SyncText. @adcxyz helped me to track this down.

Types of changes

  • Bug fix

To-do list

  • Code is tested
  • All tests are passing
  • Updated documentation
  • This PR is ready for review

@mossheim
Copy link
Contributor

thank you so much! i see @llloret's commit message for the commit that added this originally says:

But getting runtime warnings on setTextMirrorForDocument, so probably
broke something

maybe related to #3531 ? total shot in the dark, but just wanted to note that.

i can create documents up to size 1600000 with this! (didn't test any higher)

@mossheim mossheim merged commit 17e389d into supercollider:develop Jun 14, 2020
@patrickdupuis patrickdupuis mentioned this pull request Jun 14, 2020
4 tasks
mossheim added a commit that referenced this pull request Jun 14, 2020
@muellmusik
Copy link
Contributor

Thank you @bgola and @adcxyz!!!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

scide: newTextWindow failure with long strings
3 participants