When running SciTE 1.71 on OpenBSD 3.9/amd64, any time I try to open a
file (via command line or menu), it freezes in an infinite loop in
*LexerModule::Find(int language).  The function is defined in
scintilla/src/KeyWords.cxx:

const LexerModule *LexerModule::Find(int language) {
       const LexerModule *lm = base;
       while (lm) {
               if (lm->language == language) {
                       return lm;
               }
               lm = lm->next;
       }
       return 0;
}

With some print statements inserted I can see that the loop is
infinite.  The languages start with yaml, go to ada, and then loop
back to yaml.  I can fix the behavior by changing it to a for loop
with a defined number of iterations greater than the number of lexers,
but I don't have this problem on other machines, so I'm guessing that
lm->next is supposed to be NULL at some point.  Does anyone know of
anything that could cause this?

Jeremy
_______________________________________________
Scintilla-interest mailing list
[email protected]
http://mailman.lyra.org/mailman/listinfo/scintilla-interest

Reply via email to