Menu

SynWrite OR GreatCowBasic slowly freezes before shutting down

2017-12-09
2017-12-16
  • George Alvarez

    George Alvarez - 2017-12-09

    This is a minor nuisance, but I thought the authors might like to know. I don't know which program is causing this behavior.

    I'm running Windows 7 Home, SP1, 64 bit with 4GB Ram. Plenty of space on the hard drive.
    Great Cow Build is 0.98.01 2017-10-27
    SynWrite 6.22.2290

    The behavior is independent of the code that I have loaded in SynWrite. Typically, I have maybe 3 or 4 scripts open at one time. It only seems to happen after the program has been running for hours, including computer sleep time.

    The first symptom is that the keyboard stops responding in SynWrite. I can type anywhere else. The mouse stays functional for a while (not sure how long), including clicking and copy and paste, but if I don't shut it down during this period, I will lose unsaved work. Once the mouse stops working, SynWrite will terminate without warning.

    Sometimes, I'll get the Windows warning about "The Program is not Responding... Wait or Close?"

    To recover, I just start it up again, and it will run for another few hourse, so not really a big deal, but not 100% stable either.

    I thought you might like to know. Thanks very much for this product, it has made it a breeze to start from almost zero knowledge and get to where I can be dangerous.

     
    • Anobium

      Anobium - 2017-12-09

      That is ok to share. We are working on a monitoring tool to help with this.

      😀

       
  • George Alvarez

    George Alvarez - 2017-12-09

    Right after I wrote the earlier post, it happened again. I think I may have fooled myself about the cause. I think now it might actually have something to do with either cutting and pasting, or deleting a line or backspacing a line out of existence.

    I was modifying some code, first I cut the code, then I either deleted that line or backspaced the line out of existence, and then when I tried to type ENTER, to create a new line where I'd paste the code, the keyboard didn't work. I did not wait to see what would happen next, or how long it would take.

    I'll try to reproduce the exact steps for you later today.

     
  • George Alvarez

    George Alvarez - 2017-12-10

    This actually seems to be two problems.

    For now, I stand by my first description. If it stays open for too long, this happens:

    I'll keep monitoring for some sort of pattern other than "open too long."

    The second one is a little trickier, it has happened again. It was typing in the following code:

    Sub Printmenu()
    
        menu_len = Len(menu)
    

    as I was typing, the little autocompletion tool kicked in

    and I typed the entire line in, ending at the closing parentheses. Then I pressed ENTER

    and this disables the ENTER key. I cannot put a CRLF in the code, even though ENTER works normally elsewhere, like on this forum for example. Randomly typing with other keys in the code shows that they are not affected in any way.

    I moused and clicked onto the next line first, if you're wondering how I got there. To recover, I have to shut GCB down and start it up again.

    I hope this post is helpful in some way.

     

    Last edit: George Alvarez 2017-12-10
  • William Roth

    William Roth - 2017-12-10

    Try disabling AutoComplete in Synwrite. You may also try disabling the AutoHighLight stuff. This is one of the first things I do after a new Installation of GCB as I find these editor features rather annoying.

     
    • Anobium

      Anobium - 2017-12-11

      @George. I spend all my time using the IDE. Many 100's of hours a month. Two or three a year I do get the issue you are describing. To resolve I save the source file. And, reopen. This typically resolve the issue.

      Great Cow BASIC IDE is based on the SynWrite editor. These issues are related to the SynWrite editor. There is a forum for the SynWrite editor but I have not had a response from them, ever.

      If you have a file that can reproduce this issue. Then, do send through the errant source file. William is very likely to be correct it will be the SynWrite parser for the AutoComplete (which is an Synwrite internal scripting engine) but maybe we can figure out which piece of the parser is causing the issue.

       
  • mkstevo

    mkstevo - 2017-12-11

    I have found that when I have crashes of this type, it is almost always one word that causes it. I had previously assumed it was down to me using SynWrite (and GCB) within a WINE environment on my iMac.

    I have a feeling it is either EpRead, or EpWrite that seems to set things off in my case? 'EpRead(' with the opening bracket (or 'EpWrite(' with it's opening bracket), I'm reasonably sure that if I type a space after 'EpRead' and then go back with backspace before typing the bracket I don't have a problem. I think the bracket is optional anyway, but it's a habit for parameters I've got into after working in Delphi for so long...

    On the iMac (in WINE) it simply freezes the entire machine and I have to force quit it, losing any work not saved which is a little annoyng to say the least. However, once I figured out it was the AutoComplete and disabled it, it has been flawless.

     
  • George Alvarez

    George Alvarez - 2017-12-14

    mkstevo,

    You're probably right. Having read Anobium's entry, I tried a very small piece of code to see if it would replicate the behavior, and it didn't. I haven't used EpRead/Write, but with 700+ lines of code, I'm using something that contributes to this behavior.

    Also, I began to notice that when I create If/Then/Else structures, SynWrite doesn't recognize it (by joining the structure with those vertical line indicators) until I place my cursor at the end of the line before the IF, and press return. At first, I thought nested ifs didn't work. Then I saw that they did, but I didn't know why some did and some didn't. Now I'm beginning to catch on, and pay attention to the behavior of the interface.

    It may be a little quirky, but GBC makes it real easy for me to succeed, so I'm not complaining. It's just the only way I know how to pitch in at the moment.

     
  • George Alvarez

    George Alvarez - 2017-12-15

    Hi Anobium,

    Just a little more feedback on this. I got the problem with the dead Enter button again, and I tried what you suggested, closing only the script I was working on. That didn't work so well.

    When I clicked on the little X in the tab to close it, SynWrite produced the first dialog in the image below. When I dismissed that, I got the second dialog in the image below. When I tried to close SynWrite, using the red X button at the top right of the application (typical Windows close button) I got that second dialog again, repeatedly, and I was unable to close SynWrite. During this whole time, the text within the tab of my script was gone, but the tab itself remained. I should have gotten a screenshot of that, sorry, but I didn't.

    Here are the dialogs:

    I'll forward that script as you suggested.

    Thanks

     
  • stan cartwright

    stan cartwright - 2017-12-16

    under options/customise/autocomplete and stuff. Interesting. I just turned it all off because I got similar problems when not touching the key board with certain words like str(xx)+"wwww" which repeated every time ie crash but thought it was duff keyboard problem or memory leak but see how I get on without autofill or suggestions. The effect is repeatable if you can be bothered noting it

     
    • Anobium

      Anobium - 2017-12-16

      @Stan. Who you referring to?

      ... if you can be bothered noting it

       
  • Anobium

    Anobium - 2017-12-16

    @George.

    At line 412 of your code (the program your uploaded) I can reproduce you issue. This is an issue one with the editor (SynWrite). This can be resolved, as others have said, by turning off one setting in the editor.

    In the IDE editor. Press <f9>/Editor/Auto-Complete/Auto show parameter hints = unchecked</f9>

     

    Last edit: Anobium 2017-12-16
  • stan cartwright

    stan cartwright - 2017-12-16

    I meant I didn't think it was to do with gcb just my keyboard flexing but now see it was auto something or other. Sometimes I can't highlight code with the mouse for copying. I didn't want to set something in synwrite then reget it.

     

Log in to post a comment.