mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-14 21:09:05 +08:00
+ fix: .ini-file writing bug introduced in previous version
This commit is contained in:
parent
0d39bf7749
commit
855fab8d8f
@ -1 +1 @@
|
||||
1
|
||||
2
|
||||
|
||||
@ -124,13 +124,15 @@ static HANDLE s_INI_Hndl = INVALID_HANDLE_VALUE;
|
||||
static CSimpleIni s_INI(s_bIsUTF8, s_bUseMultiKey, s_bUseMultiLine);
|
||||
|
||||
|
||||
extern "C" BOOL LoadIniFile(LPCWSTR lpIniFilePath)
|
||||
extern "C" BOOL LoadIniFile(LPCWSTR lpIniFilePath, BOOL bNeedReadWriteAccess)
|
||||
{
|
||||
s_INI.Reset();
|
||||
s_INI.SetSpaces(s_bSetSpaces);
|
||||
s_INI.SetMultiLine(s_bUseMultiLine);
|
||||
|
||||
s_INI_Hndl = AcquireReadFileLock(lpIniFilePath, s_OvrLpd);
|
||||
s_INI_Hndl = bNeedReadWriteAccess ? AcquireWriteFileLock(lpIniFilePath, s_OvrLpd) :
|
||||
AcquireReadFileLock(lpIniFilePath, s_OvrLpd);;
|
||||
|
||||
if (s_INI_Hndl == INVALID_HANDLE_VALUE) {
|
||||
return false;
|
||||
}
|
||||
@ -834,7 +836,7 @@ void LoadFlags()
|
||||
{
|
||||
__try {
|
||||
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, FALSE);
|
||||
|
||||
const WCHAR* const Settings_Section2 = L"Settings2";
|
||||
|
||||
@ -890,7 +892,7 @@ void LoadSettings()
|
||||
{
|
||||
__try {
|
||||
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, FALSE);
|
||||
|
||||
const WCHAR* const Settings_Section = L"Settings";
|
||||
|
||||
@ -1071,7 +1073,7 @@ void SaveSettings(BOOL bSaveSettingsNow)
|
||||
|
||||
__try {
|
||||
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, TRUE);
|
||||
|
||||
const WCHAR* const Settings_Section = L"Settings";
|
||||
|
||||
|
||||
@ -37,7 +37,7 @@ extern "C" {
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
BOOL LoadIniFile(LPCWSTR lpIniFilePath);
|
||||
BOOL LoadIniFile(LPCWSTR lpIniFilePath, BOOL bNeedReadWriteAccess);
|
||||
BOOL SaveIniFile();
|
||||
void ReleaseIniFile();
|
||||
|
||||
|
||||
@ -2700,7 +2700,7 @@ INT_PTR CALLBACK FindTargetDlgProc(HWND hwnd,UINT umsg,WPARAM wParam,LPARAM lPar
|
||||
|
||||
__try {
|
||||
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, TRUE);
|
||||
|
||||
const WCHAR* const TargetApp_Section = L"Target Application";
|
||||
|
||||
|
||||
@ -1530,7 +1530,7 @@ BOOL MRU_Load(LPMRULIST pmru) {
|
||||
|
||||
MRU_Empty(pmru);
|
||||
__try {
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, FALSE);
|
||||
|
||||
const WCHAR* const RegKey_Section = pmru->szRegKey;
|
||||
|
||||
@ -1555,7 +1555,7 @@ BOOL MRU_Load(LPMRULIST pmru) {
|
||||
BOOL MRU_Save(LPMRULIST pmru) {
|
||||
|
||||
__try {
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, TRUE);
|
||||
|
||||
WCHAR tchName[32];
|
||||
WCHAR tchItem[1024] = { L'\0' };
|
||||
@ -1572,7 +1572,7 @@ BOOL MRU_Save(LPMRULIST pmru) {
|
||||
}
|
||||
}
|
||||
__finally {
|
||||
SaveIniFile(g_wchIniFile);
|
||||
SaveIniFile();
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -1163,7 +1163,7 @@ void CreateBars(HWND hwnd,HINSTANCE hInstance)
|
||||
|
||||
// Load toolbar labels
|
||||
__try {
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, FALSE);
|
||||
const WCHAR* const ToolbarLabels_Section = L"Toolbar Labels";
|
||||
|
||||
n = 0;
|
||||
@ -3330,7 +3330,7 @@ void LoadTargetParamsOnce(void)
|
||||
return;
|
||||
|
||||
__try {
|
||||
LoadIniFile(g_wchIniFile);
|
||||
LoadIniFile(g_wchIniFile, FALSE);
|
||||
const WCHAR* const TargetApp_Section = L"Target Application";
|
||||
|
||||
if (IniSectionGetInt(TargetApp_Section, L"UseTargetApplication", 0xFB) != 0xFB) {
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<assemblyIdentity
|
||||
name="Notepad3"
|
||||
processorArchitecture="*"
|
||||
version="5.20.313.1"
|
||||
version="5.20.313.2"
|
||||
type="win32"
|
||||
/>
|
||||
<description>Notepad3 RC3</description>
|
||||
|
||||
@ -138,13 +138,15 @@ static HANDLE s_INI_Hndl = INVALID_HANDLE_VALUE;
|
||||
static CSimpleIni s_INI(s_bIsUTF8, s_bUseMultiKey, s_bUseMultiLine);
|
||||
|
||||
|
||||
extern "C" bool LoadIniFile(LPCWSTR lpIniFilePath)
|
||||
extern "C" bool LoadIniFile(LPCWSTR lpIniFilePath, bool bNeedReadWriteAccess)
|
||||
{
|
||||
s_INI.Reset();
|
||||
s_INI.SetSpaces(s_bSetSpaces);
|
||||
s_INI.SetMultiLine(s_bUseMultiLine);
|
||||
|
||||
s_INI_Hndl = AcquireReadFileLock(lpIniFilePath, s_OvrLpd);
|
||||
s_INI_Hndl = bNeedReadWriteAccess ? AcquireWriteFileLock(lpIniFilePath, s_OvrLpd) :
|
||||
AcquireReadFileLock(lpIniFilePath, s_OvrLpd);;
|
||||
|
||||
if (s_INI_Hndl == INVALID_HANDLE_VALUE) {
|
||||
return false;
|
||||
}
|
||||
@ -842,7 +844,7 @@ bool OpenSettingsFile()
|
||||
if (StrIsNotEmpty(Globals.IniFile)) {
|
||||
CreateIniFile();
|
||||
if (!IsIniFileLoaded()) {
|
||||
LoadIniFile(Globals.IniFile);
|
||||
LoadIniFile(Globals.IniFile, true);
|
||||
}
|
||||
}
|
||||
return IsIniFileLoaded();
|
||||
|
||||
@ -37,7 +37,7 @@ bool CloseSettingsFile(bool bSaveChanges);
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
bool LoadIniFile(LPCWSTR lpIniFilePath);
|
||||
bool LoadIniFile(LPCWSTR lpIniFilePath, bool bNeedReadWriteAccess);
|
||||
bool IsIniFileLoaded();
|
||||
void ReleaseIniFile();
|
||||
bool SaveIniFile();
|
||||
|
||||
@ -544,7 +544,7 @@ bool Style_ImportFromFile(const WCHAR* szFile)
|
||||
if (bResetToDefault) {
|
||||
ReleaseIniFile();
|
||||
}
|
||||
bool result = !bResetToDefault ? LoadIniFile(szFile) : true;
|
||||
bool result = !bResetToDefault ? LoadIniFile(szFile, false) : true;
|
||||
|
||||
if (result) {
|
||||
|
||||
@ -825,7 +825,7 @@ bool Style_ExportToFile(const WCHAR* szFile, bool bForceAll)
|
||||
}
|
||||
}
|
||||
else {
|
||||
LoadIniFile(szFilePathNorm); // reset
|
||||
LoadIniFile(szFilePathNorm, true); // reset
|
||||
Style_ToIniSection(bForceAll);
|
||||
ok = SaveIniFile();
|
||||
}
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
#define VERSION_MAJOR 5
|
||||
#define VERSION_MINOR 20
|
||||
#define VERSION_REV 313
|
||||
#define VERSION_BUILD 1
|
||||
#define VERSION_BUILD 2
|
||||
#define SCINTILLA_VER 432
|
||||
#define ONIGURUMA_REGEX_VER 6.9.4
|
||||
#define UCHARDET_VER 2018.09.27
|
||||
|
||||
Loading…
Reference in New Issue
Block a user