diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/KeyWords.cxx | 44 | ||||
-rw-r--r-- | src/PropSet.cxx | 4 |
2 files changed, 48 insertions, 0 deletions
diff --git a/src/KeyWords.cxx b/src/KeyWords.cxx index 113ba222d..7355580ed 100644 --- a/src/KeyWords.cxx +++ b/src/KeyWords.cxx @@ -43,3 +43,47 @@ void LexerModule::Colourise(unsigned int startPos, int lengthDoc, int initStyle, styler.ColourTo(startPos + lengthDoc - 1, 0); } } + +#ifdef __vms + +// The following code forces a reference to all of the Scintilla lexers. +// If we don't do something like this, then the linker tends to "optimize" +// them away. (eric@sourcegear.com) + +// Taken from wxWindow's stc.cpp. Walter. + +int wxForceScintillaLexers(void) { + extern LexerModule lmCPP; + extern LexerModule lmHTML; + extern LexerModule lmXML; + extern LexerModule lmProps; + extern LexerModule lmErrorList; + extern LexerModule lmMake; + extern LexerModule lmBatch; + extern LexerModule lmPerl; + extern LexerModule lmPython; + extern LexerModule lmSQL; + extern LexerModule lmVB; + + if ( + &lmCPP + && &lmHTML + && &lmXML + && &lmProps + && &lmErrorList + && &lmMake + && &lmBatch + && &lmPerl + && &lmPython + && &lmSQL + && &lmVB + ) + { + return 1; + } + else + { + return 0; + } +} +#endif diff --git a/src/PropSet.cxx b/src/PropSet.cxx index d5be286e1..48b6cc782 100644 --- a/src/PropSet.cxx +++ b/src/PropSet.cxx @@ -315,7 +315,11 @@ void PropSet::ReadFromMemory(const char *data, int len, const char *directoryFor void PropSet::Read(const char *filename, const char *directoryForImports) { char propsData[60000]; +#ifdef __vms + FILE *rcfile = fopen(filename, "r"); +#else FILE *rcfile = fopen(filename, "rb"); +#endif if (rcfile) { int lenFile = fread(propsData, 1, sizeof(propsData), rcfile); fclose(rcfile); |