[BUG_FIXED] Fixed crash bug : Double click a file associated with an older version of Notepad++ while a newer version of Notepad++ instance is running.

git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@467 f5eea248-9336-0410-98b8-ebc06183d4e3
This commit is contained in:
Don Ho 2009-04-27 23:17:51 +00:00
parent 3067f9f93c
commit aed6bdf267
8 changed files with 132 additions and 11 deletions

View File

@ -17,18 +17,18 @@
; Define the application name
!define APPNAME "Notepad++"
!define APPVERSION "5.3.1"
!define APPNAMEANDVERSION "Notepad++ v5.3.1"
!define APPVERSION "5.4"
!define APPNAMEANDVERSION "Notepad++ v5.4"
!define APPWEBSITE "http://notepad-plus.sourceforge.net/"
!define VERSION_MAJOR 5
!define VERSION_MINOR 31
!define VERSION_MINOR 4
; Main Install settings
Name "${APPNAMEANDVERSION}"
InstallDir "$PROGRAMFILES\Notepad++"
InstallDirRegKey HKLM "Software\${APPNAME}" ""
OutFile "..\bin\npp.5.3.1.Installer.exe"
OutFile "..\bin\npp.5.4.Installer.exe"
; GetWindowsVersion
;
@ -662,6 +662,60 @@ SubSection "Plugins" Plugins
SectionEnd
SubSectionEnd
SubSection "Themes" Themes
SetOverwrite off
Section "Black Board" BlackBoard
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Black board.xml"
SectionEnd
Section "Choco" Choco
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Choco.xml"
SectionEnd
Section "Hello Kitty" HelloKitty
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Hello Kitty.xml"
SectionEnd
Section "Mono Industrial" MonoIndustrial
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Mono Industrial.xml"
SectionEnd
Section "Monokai" Monokai
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Monokai.xml"
SectionEnd
Section "Obsidian" Obsidian
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Obsidian.xml"
SectionEnd
Section "Plastic Code Wrap" PlasticCodeWrap
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Plastic Code Wrap.xml"
SectionEnd
Section "Ruby Blue" RubyBlue
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Ruby Blue.xml"
SectionEnd
Section "Twilight" Twilight
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Twilight.xml"
SectionEnd
Section "Vibrant Ink" VibrantInk
SetOutPath "$INSTDIR\themes"
File "..\bin\themes\Vibrant Ink.xml"
SectionEnd
SubSectionEnd
Section /o "As default html viewer" htmlViewer
SetOutPath "$INSTDIR\"
File "..\bin\nppIExplorerShell.exe"
@ -913,6 +967,58 @@ SubSection un.Plugins
SectionEnd
SubSectionEnd
SubSection un.Themes
Section un.BlackBoard
Delete "$INSTDIR\themes\Black board.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.Choco
Delete "$INSTDIR\themes\Choco.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.HelloKitty
Delete "$INSTDIR\themes\Hello Kitty.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.MonoIndustrial
Delete "$INSTDIR\themes\Mono Industrial.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.Monokai
Delete "$INSTDIR\themes\Monokai.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.Obsidian
Delete "$INSTDIR\themes\Obsidian.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.PlasticCodeWrap
Delete $INSTDIR\themes\Plastic Code Wrap.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.RubyBlue
Delete $INSTDIR\themes\Ruby Blue.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.Twilight
Delete $INSTDIR\themes\Twilight.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
Section un.VibrantInk
Delete $INSTDIR\themes\Vibrant Ink.xml"
RMDir "$INSTDIR\themes\"
SectionEnd
SubSectionEnd
Section un.htmlViewer
DeleteRegKey HKLM "SOFTWARE\Microsoft\Internet Explorer\View Source Editor"
Delete "$INSTDIR\nppIExplorerShell.exe"

View File

@ -1,4 +1,5 @@
copy /Y ".\nativeLang\*.*" ..\bin\localization
cd ..\bin\
del /F /S /Q .\zipped.package.release\unicode\*.*
@ -20,6 +21,7 @@ copy /Y ".\plugins\APIs\*.xml" .\zipped.package.release\unicode\plugins\APIs
copy /Y ".\plugins\doc\*.*" .\zipped.package.release\unicode\plugins\doc
copy /Y ".\plugins\Config\tidy\*.*" .\zipped.package.release\unicode\plugins\Config\tidy
copy /Y ".\localization\*.*" .\zipped.package.release\unicode\localization
copy /Y ".\themes\*.*" .\zipped.package.release\unicode\themes
del /F /S /Q .\zipped.package.release\ansi\config.xml
@ -39,6 +41,7 @@ copy /Y shortcuts.xml .\zipped.package.release\ansi\
copy /Y doLocalConf.xml .\zipped.package.release\ansi\
copy /Y LINEDRAW.TTF .\zipped.package.release\ansi\
copy /Y ".\plugins\Config\tidy\*.*" .\zipped.package.release\ansi\plugins\Config\tidy
copy /Y ".\themes\*.*" .\zipped.package.release\ansi\themes
"C:\Program Files\7-Zip\7z.exe" a -tzip -r npp.bin.zip .\zipped.package.release\*
"C:\Program Files\7-Zip\7z.exe" a -r npp.bin.7z .\zipped.package.release\*

View File

@ -2069,6 +2069,9 @@ generic_string Notepad_plus::getLangDesc(LangType langType, bool shortDesc)
return generic_string(elc._desc);
}
if (langType > L_EXTERNAL)
langType = L_TXT;
generic_string str2Show = ScintillaEditView::langNames[langType].longName;
if (langType == L_USER)
@ -9799,7 +9802,7 @@ void Notepad_plus::loadCommandlineParams(const TCHAR * commandLine, CmdLineParam
lastOpened = bufID;
if (lt != L_EXTERNAL)
if (lt != L_EXTERNAL && lt < NppParameters::getInstance()->L_END)
{
Buffer * pBuf = MainFileManager->getBufferByID(bufID);
pBuf->setLangType(lt);

View File

@ -579,7 +579,13 @@ bool NppParameters::reloadStylers(TCHAR *stylePath)
_lexerStylerArray.eraseAll();
_widgetStyleArray.setNbStyler( 0 );
return getUserStylersFromXmlTree();
getUserStylersFromXmlTree();
// Reload plugin styles.
for( size_t i = 0; i < getExternalLexerDoc()->size(); i++)
{
getExternalLexerFromXmlTree( getExternalLexerDoc()->at(i) );
}
}
bool NppParameters::reloadLang()

View File

@ -898,7 +898,7 @@ public :
};
void addDefaultThemeFromXml(generic_string xmlFullPath) {
_themeList.push_back(pair<generic_string, generic_string>(TEXT("Default"), xmlFullPath));
_themeList.push_back(pair<generic_string, generic_string>(TEXT("Default (styles.xml)"), xmlFullPath));
};
generic_string getThemeFromXmlFileName(const TCHAR *fn) const;

View File

@ -301,6 +301,9 @@ const TCHAR * AutoCompletion::getApiFileName() {
if (_curLang >= L_EXTERNAL && _curLang < NppParameters::getInstance()->L_END)
return NppParameters::getInstance()->getELCFromIndex(_curLang - L_EXTERNAL)._name;
if (_curLang > L_EXTERNAL)
_curLang = L_TXT;
return ScintillaEditView::langNames[_curLang].lexerName;
}

View File

@ -31,7 +31,7 @@ CAPTION "Style Configurator"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "Switch to theme : ",IDC_SWITCH2THEME_STATIC,6,9,83,8,0,WS_EX_RIGHT
COMBOBOX IDC_SWITCH2THEME_COMBO,95,7,104,78,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_SWITCH2THEME_COMBO,95,7,104,78,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
LTEXT "Foreground color",IDC_FG_STATIC,203,72,59,8,0,WS_EX_RIGHT
LTEXT "Background color",IDC_BG_STATIC,203,99,59,8,0,WS_EX_RIGHT
COMBOBOX IDC_FONT_COMBO,371,68,104,78,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP

View File

@ -18,9 +18,9 @@
#ifndef RESOURCE_H
#define RESOURCE_H
#define NOTEPAD_PLUS_VERSION TEXT("Notepad++ v5.3.1")
#define VERSION_VALUE TEXT("5.31\0") // should be X.Y : ie. if VERSION_DIGITALVALUE == 4, 7, 1, 0 , then X = 4, Y = 71
#define VERSION_DIGITALVALUE 5, 3, 1, 0
#define NOTEPAD_PLUS_VERSION TEXT("Notepad++ v5.4")
#define VERSION_VALUE TEXT("5.4\0") // should be X.Y : ie. if VERSION_DIGITALVALUE == 4, 7, 1, 0 , then X = 4, Y = 71
#define VERSION_DIGITALVALUE 5, 4, 0, 0
#ifdef UNICODE
#define UNICODE_ANSI_MODE TEXT("(UNICODE)")