From 9aeb967892b688ee98e8adc25d3e01c2e01835f0 Mon Sep 17 00:00:00 2001 From: Don Ho Date: Sat, 3 Nov 2012 11:48:35 +0000 Subject: [PATCH] =?UTF-8?q?[BUG=5FFIXED]=20(Author:=20Ivan=20Radi=C4=87,?= =?UTF-8?q?=20aka=20Loreia)=20Fix=20a=20crash=20issue=20due=20to=20the=20i?= =?UTF-8?q?nconsistent=20userDefineLang.xml.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@976 f5eea248-9336-0410-98b8-ebc06183d4e3 --- PowerEditor/src/Parameters.cpp | 10 ++++++---- .../src/ScitillaComponent/ScintillaEditView.cpp | 3 ++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/PowerEditor/src/Parameters.cpp b/PowerEditor/src/Parameters.cpp index d153886fc..e0452e3bd 100644 --- a/PowerEditor/src/Parameters.cpp +++ b/PowerEditor/src/Parameters.cpp @@ -2828,7 +2828,7 @@ void StyleArray::addStyler(int styleID, TiXmlNode *styleNode) { styleID = (styleID & 0xFFFF); index = styleID; - if (index >= SCE_USER_STYLE_TOTAL_STYLES) + if (index >= SCE_USER_STYLE_TOTAL_STYLES || _styleArray[index]._styleID != -1) return; } @@ -5349,7 +5349,8 @@ void NppParameters::insertUserLang2Tree(TiXmlNode *node, UserLangContainer *user TiXmlElement *styleRootElement = (rootElement->InsertEndChild(TiXmlElement(TEXT("Styles"))))->ToElement(); - for (int i = 0 ; i < userLang->_styleArray.getNbStyler() ; i++) + //for (int i = 0 ; i < userLang->_styleArray.getNbStyler() ; i++) + for (int i = 0 ; i < SCE_USER_STYLE_TOTAL_STYLES ; i++) { TiXmlElement *styleElement = (styleRootElement->InsertEndChild(TiXmlElement(TEXT("WordsStyle"))))->ToElement(); Style style2Write = userLang->_styleArray.getStyler(i); @@ -5405,8 +5406,9 @@ void NppParameters::stylerStrOp(bool op) { for (int i = 0 ; i < _nbUserLang ; i++) { - int nbStyler = _userLangArray[i]->_styleArray.getNbStyler(); - for (int j = 0 ; j < nbStyler ; j++) + //int nbStyler = _userLangArray[i]->_styleArray.getNbStyler(); + //for (int j = 0 ; j < nbStyler ; j++) + for (int j = 0 ; j < SCE_USER_STYLE_TOTAL_STYLES ; j++) { Style & style = _userLangArray[i]->_styleArray.getStyler(j); diff --git a/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp b/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp index 0e5af1e12..34fc2b949 100644 --- a/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp +++ b/PowerEditor/src/ScitillaComponent/ScintillaEditView.cpp @@ -766,7 +766,8 @@ void ScintillaEditView::setUserLexer(const TCHAR *userLangName) char intBuffer[10]; char nestingBuffer[] = "userDefine.nesting.00"; - for (int i = 0 ; i < userLangContainer->_styleArray.getNbStyler() ; i++) + //for (int i = 0 ; i < userLangContainer->_styleArray.getNbStyler() ; i++) + for (int i = 0 ; i < SCE_USER_STYLE_TOTAL_STYLES ; i++) { Style & style = userLangContainer->_styleArray.getStyler(i);