+ fix: RegEx "zero-length-finding" replace all bug

+ fix: settings versioning for Long-Line-Mark
This commit is contained in:
Rainer Kottenhoff 2019-04-28 12:51:37 +02:00
parent 18a1f3b6f8
commit da76d911f2
5 changed files with 7 additions and 7 deletions

View File

@ -1 +1 @@
1678
1680

View File

@ -3,7 +3,7 @@
<assemblyIdentity
name="Notepad3"
processorArchitecture="*"
version="5.19.427.1678"
version="5.19.428.1680"
type="win32"
/>
<description>Notepad3 develop</description>

View File

@ -6341,13 +6341,13 @@ int EditReplaceAllInRange(HWND hwnd, LPCEDITFINDREPLACE lpefr, DocPos iStartPos,
start = pPosPair->beg + totalReplLength;
end = pPosPair->end + totalReplLength;
}
DocPos const _move = (start != end) ? 0 : 1; // zero-find-length
_ENTER_TARGET_TRANSACTION_;
SciCall_SetTargetRange(start, end);
DocPos const replLen = Sci_ReplaceTarget(iReplaceMsg, -1, pszReplace);
totalReplLength += replLen + pPosPair->beg - pPosPair->end;
searchStart = SciCall_GetTargetEnd();
searchStart = SciCall_GetTargetEnd() + _move;
_LEAVE_TARGET_TRANSACTION_;
}

View File

@ -7153,7 +7153,7 @@ void LoadSettings()
GET_BOOL_VALUE_FROM_INISECTION(BackspaceUnindents, false);
GET_BOOL_VALUE_FROM_INISECTION(WarnInconsistentIndents, false);
GET_BOOL_VALUE_FROM_INISECTION(AutoDetectIndentSettings, false);
GET_BOOL_VALUE_FROM_INISECTION(MarkLongLines, (s_iSettingsVersion < CFG_VER_0002));
GET_BOOL_VALUE_FROM_INISECTION(MarkLongLines, (s_iSettingsVersion < CFG_VER_0002)); Defaults.MarkLongLines = false; // new default
GET_INT_VALUE_FROM_INISECTION(LongLineMode, EDGE_LINE, EDGE_LINE, EDGE_BACKGROUND);
GET_BOOL_VALUE_FROM_INISECTION(ShowSelectionMargin, true);
GET_BOOL_VALUE_FROM_INISECTION(ShowLineNumbers, true);

View File

@ -7,8 +7,8 @@
#define SAPPNAME "Notepad3"
#define VERSION_MAJOR 5
#define VERSION_MINOR 19
#define VERSION_REV 427
#define VERSION_BUILD 1678
#define VERSION_REV 428
#define VERSION_BUILD 1680
#define SCINTILLA_VER 415
#define ONIGMO_REGEX_VER 6.2.0
#define VERSION_PATCH develop