Better backward compatibility ($LANGUAGE is now last in the user variables array)

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@721 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2002-08-22 22:09:09 +00:00
parent 9c8ad50586
commit d209003edd
3 changed files with 12 additions and 12 deletions

View file

@ -315,12 +315,12 @@ int CEXEBuild::preprocess_string(char *out, const char *in)
"R7\0" // 18
"R8\0" // 19
"R9\0" // 20
"LANGUAGE\0" // 21
"CMDLINE\0" // 22 everything before here doesn't have trailing slash removal
"CMDLINE\0" // 21 everything before here doesn't have trailing slash removal
"INSTDIR\0" // 23
"OUTDIR\0" // 24
"EXEDIR\0" // 25
"INSTDIR\0" // 22
"OUTDIR\0" // 23
"EXEDIR\0" // 24
"LANGUAGE\0" // 25
"PROGRAMFILES\0" // 26
"SMPROGRAMS\0" // 27
"SMSTARTUP\0" // 28

View file

@ -482,11 +482,11 @@ void NSISCALL process_string(char *out, const char *in)
case VAR_CODES_START + 18: // R7
case VAR_CODES_START + 19: // R8
case VAR_CODES_START + 20: // R9
case VAR_CODES_START + 21: // LANGUAGE
case VAR_CODES_START + 22: // CMDLINE
case VAR_CODES_START + 23: // INSTDIR
case VAR_CODES_START + 24: // OUTDIR
case VAR_CODES_START + 25: // EXEDIR
case VAR_CODES_START + 21: // CMDLINE
case VAR_CODES_START + 22: // INSTDIR
case VAR_CODES_START + 23: // OUTDIR
case VAR_CODES_START + 24: // EXEDIR
case VAR_CODES_START + 25: // LANGUAGE
mystrcpy(out, g_usrvars[nVarIdx - (VAR_CODES_START + 1)]);
break;
@ -545,7 +545,7 @@ void NSISCALL process_string(char *out, const char *in)
} // switch
// remove trailing slash
while (*out && *CharNext(out)) out++;
if (nVarIdx > 22+VAR_CODES_START && *out == '\\') // only if not $0 to $R9, $CMDLINE, $LANGUAGE, or $HWNDPARENT
if (nVarIdx > 21+VAR_CODES_START && nVarIdx != VAR_CODES_START+25 && *out == '\\') // only if not $0 to $R9, $CMDLINE, $LANGUAGE, or $HWNDPARENT
*out = 0;
out=CharNext(out);
} // >= VAR_CODES_START

View file

@ -21,7 +21,7 @@
static const char *usrvars="$0\0$1\0$2\0$3\0$4\0$5\0$6\0$7\0$8\0$9\0"
"$R0\0$R1\0$R2\0$R3\0$R4\0$R5\0$R6\0$R7\0$R8\0$R9\0"
"$LANGUAGE\0$CMDLINE\0$INSTDIR\0$OUTDIR\0$EXEDIR\0";
"$CMDLINE\0$INSTDIR\0$OUTDIR\0$EXEDIR\0$LANGUAGE\0";
int CEXEBuild::process_script(FILE *fp, char *curfilename, int *lineptr)