- All message boxes in code now have a default for silent installers
- Some size optimizations git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3221 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
0139636e18
commit
f6ebb29045
9 changed files with 101 additions and 117 deletions
|
@ -9,7 +9,7 @@ const int kNumRepDistances = 4;
|
|||
|
||||
const int kNumStates = 12;
|
||||
|
||||
const BYTE kLiteralNextStates[kNumStates] = {0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 4, 5};
|
||||
const BYTE kLiteralNextStates[kNumStates] = {0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 4, 5};
|
||||
const BYTE kMatchNextStates[kNumStates] = {7, 7, 7, 7, 7, 7, 7, 10, 10, 10, 10, 10};
|
||||
const BYTE kRepNextStates[kNumStates] = {8, 8, 8, 8, 8, 8, 8, 11, 11, 11, 11, 11};
|
||||
const BYTE kShortRepNextStates[kNumStates]= {9, 9, 9, 9, 9, 9, 9, 11, 11, 11, 11, 11};
|
||||
|
|
|
@ -7,7 +7,6 @@ void CLZMADecoder::Create(BYTE *memoryPointer,
|
|||
int numLiteralPosStateBits,
|
||||
int numPosStateBits)
|
||||
{
|
||||
|
||||
int numPosStates = 1 << numPosStateBits;
|
||||
m_PosStateMask = numPosStates - 1;
|
||||
m_LiteralDecoder.Create(memoryPointer, numLiteralPosStateBits, numLiteralContextBits);
|
||||
|
@ -139,15 +138,14 @@ UINT32 CLZMADecoder::Code(CLZMAStateP lzmaState)
|
|||
repDistances[2] = repDistances[1];
|
||||
repDistances[1] = repDistances[0];
|
||||
repDistances[0] = distance;
|
||||
//LZMAMemCopy(repDistances, repDistances + 1, kNumRepDistances * sizeof(UINT32));
|
||||
}
|
||||
if (distance > nowPos || distance == 0)
|
||||
{
|
||||
// it's for stream version (without knowing uncompressed size)
|
||||
// if (distance >= _dictionarySizeCheck)
|
||||
if (distance == (UINT32)(0))
|
||||
break;
|
||||
// it's for stream version (without knowing uncompressed size)
|
||||
//if (distance >= _dictionarySizeCheck)
|
||||
if (!distance)
|
||||
break;
|
||||
if (distance > nowPos)
|
||||
return (-1);
|
||||
}
|
||||
|
||||
len += kMatchMinLen;
|
||||
nowPos += len;
|
||||
|
|
|
@ -22,7 +22,7 @@ public:
|
|||
Range <<= 8;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Init(CLZMAStateP state)
|
||||
{
|
||||
Stream.Init(state);
|
||||
|
@ -40,18 +40,18 @@ public:
|
|||
for (int i = numTotalBits; i > 0; i--)
|
||||
{
|
||||
range >>= 1;
|
||||
/*
|
||||
|
||||
result <<= 1;
|
||||
if (code >= range)
|
||||
{
|
||||
code -= range;
|
||||
result |= 1;
|
||||
}
|
||||
*/
|
||||
UINT32 t = (code - range) >> 31;
|
||||
|
||||
/*UINT32 t = (code - range) >> 31;
|
||||
code -= range & (t - 1);
|
||||
// range = aRangeTmp + ((range & 1) & (1 - t));
|
||||
result = (result + result) | (1 - t);
|
||||
result = (result + result) | (1 - t);*/
|
||||
|
||||
if (range < kTopValue)
|
||||
{
|
||||
|
|
|
@ -36,6 +36,8 @@
|
|||
}} \
|
||||
RC_NORMALIZE
|
||||
|
||||
//modelIndex <<= 1; if (code >= newBound) modelIndex++;
|
||||
|
||||
#define RC_GETBIT(prob, modelIndex) RC_GETBIT2(prob, modelIndex, ; , ;)
|
||||
|
||||
#endif
|
||||
|
|
|
@ -95,12 +95,10 @@ DWORD WINAPI lzmaDecompressThread(LPVOID lpParameter)
|
|||
lzmaDecodeder->Create((LPBYTE) lzmaState->DynamicData,
|
||||
numLiteralContextBits, numLiteralPosStateBits, numPosStateBits);
|
||||
|
||||
UINT32 dictionarySize = 0;
|
||||
for (int i = 0; i < 4; i++)
|
||||
dictionarySize += ((UINT32)properties[1 + i]) << (i * 8);
|
||||
if (lzmaState->Dictionary == 0 || dictionarySize != lzmaState->DictionarySize)
|
||||
UINT32 dictionarySize = *(UINT32 *)(properties + 1);
|
||||
if (dictionarySize != lzmaState->DictionarySize)
|
||||
{
|
||||
if (lzmaState->Dictionary != 0)
|
||||
if (lzmaState->Dictionary)
|
||||
LZMAFree(lzmaState->Dictionary);
|
||||
lzmaState->Dictionary = LZMAAlloc(dictionarySize);
|
||||
lzmaState->DictionarySize = dictionarySize;
|
||||
|
|
|
@ -231,7 +231,7 @@ end:
|
|||
#ifdef NSIS_COMPRESS_WHOLE
|
||||
if (dbd_hFile != INVALID_HANDLE_VALUE) CloseHandle(dbd_hFile);
|
||||
#endif
|
||||
if (m_Err) my_MessageBox(m_Err, MB_OK | MB_ICONSTOP);
|
||||
if (m_Err) my_MessageBox(m_Err, MB_OK | MB_ICONSTOP | (IDOK << 20));
|
||||
|
||||
#ifdef NSIS_CONFIG_PLUGIN_SUPPORT
|
||||
// Clean up after plug-ins
|
||||
|
|
|
@ -124,8 +124,8 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
|
||||
char *var0;
|
||||
char *var1;
|
||||
char *var2;
|
||||
char *var3;
|
||||
//char *var2;
|
||||
//char *var3;
|
||||
//char *var4;
|
||||
//char *var5;
|
||||
|
||||
|
@ -152,9 +152,9 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
|
||||
var0 = g_usrvars[parm0];
|
||||
var1 = g_usrvars[parm1];
|
||||
var2 = g_usrvars[parm2];
|
||||
var3 = g_usrvars[parm3];
|
||||
// not used yet
|
||||
//var2 = g_usrvars[parm2];
|
||||
//var3 = g_usrvars[parm3];
|
||||
//var4 = g_usrvars[parm4];
|
||||
//var5 = g_usrvars[parm5];
|
||||
|
||||
|
@ -227,7 +227,8 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
if (insthwnd) ShowWindow(insthwnd,parm0);
|
||||
break;
|
||||
#endif//NSIS_CONFIG_VISIBLE_SUPPORT
|
||||
case EW_SETFILEATTRIBUTES: {
|
||||
case EW_SETFILEATTRIBUTES:
|
||||
{
|
||||
char *buf1=GetStringFromParm(-0x10);
|
||||
log_printf3("SetFileAttributes: \"%s\":%08X",buf1,parm1);
|
||||
if (!SetFileAttributes(buf1,parm1))
|
||||
|
@ -323,8 +324,8 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
case EW_GETFULLPATHNAME:
|
||||
{
|
||||
char *fp;
|
||||
char *p=var0;
|
||||
char *buf0=GetStringFromParm(0x01);
|
||||
char *p=var1;
|
||||
char *buf0=GetStringFromParm(0x00);
|
||||
if (!GetFullPathName(buf0,NSIS_MAX_STRLEN,p,&fp))
|
||||
{
|
||||
exec_error++;
|
||||
|
@ -459,7 +460,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
GetNSISString(buf0,LANG_ERRORDECOMPRESSING);
|
||||
}
|
||||
log_printf2("%s",buf0);
|
||||
my_MessageBox(buf0,MB_OK|MB_ICONSTOP);
|
||||
my_MessageBox(buf0,MB_OK|MB_ICONSTOP|(IDOK<<20));
|
||||
return EXEC_ERROR;
|
||||
}
|
||||
}
|
||||
|
@ -670,7 +671,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
if (!s)
|
||||
{
|
||||
log_printf2("Exch: stack < %d elements",parm2);
|
||||
my_MessageBox(GetNSISStringTT(LANG_INSTCORRUPTED),MB_OK|MB_ICONSTOP);
|
||||
my_MessageBox(GetNSISStringTT(LANG_INSTCORRUPTED),MB_OK|MB_ICONSTOP|(IDOK<<20));
|
||||
return EXEC_ERROR;
|
||||
}
|
||||
mystrcpy(buf0,s->text);
|
||||
|
@ -838,7 +839,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
if (hProc)
|
||||
{
|
||||
log_printf2("Exec: success (\"%s\")",buf0);
|
||||
if (parm1)
|
||||
if (parm2)
|
||||
{
|
||||
DWORD lExitCode;
|
||||
while (WaitForSingleObject(hProc,100) == WAIT_TIMEOUT)
|
||||
|
@ -849,7 +850,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
}
|
||||
GetExitCodeProcess(hProc, &lExitCode);
|
||||
|
||||
if (parm2>=0) myitoa(var2,lExitCode);
|
||||
if (parm1>=0) myitoa(var1,lExitCode);
|
||||
else if (lExitCode) exec_error++;
|
||||
}
|
||||
CloseHandle( hProc );
|
||||
|
@ -869,9 +870,9 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
// also allows GetFileTime to be passed a wildcard.
|
||||
{
|
||||
WIN32_FIND_DATA *ffd;
|
||||
char *highout=var1;
|
||||
char *lowout=var2;
|
||||
char *buf0=GetStringFromParm(0x00);
|
||||
char *highout=var0;
|
||||
char *lowout=var1;
|
||||
char *buf0=GetStringFromParm(0x02);
|
||||
|
||||
ffd=file_exists(buf0);
|
||||
if (ffd)
|
||||
|
@ -890,13 +891,13 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
#ifdef NSIS_SUPPORT_GETDLLVERSION
|
||||
case EW_GETDLLVERSION:
|
||||
{
|
||||
char *highout=var1;
|
||||
char *lowout=var2;
|
||||
char *highout=var0;
|
||||
char *lowout=var1;
|
||||
DWORD s1;
|
||||
DWORD t[4]; // our two members are the 3rd and 4th..
|
||||
VS_FIXEDFILEINFO *pvsf1=(VS_FIXEDFILEINFO*)t;
|
||||
DWORD d;
|
||||
char *buf1=GetStringFromParm(-0x10);
|
||||
char *buf1=GetStringFromParm(-0x12);
|
||||
s1=GetFileVersionInfoSize(buf1,&d);
|
||||
*lowout=*highout=0;
|
||||
exec_error++;
|
||||
|
@ -1077,7 +1078,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
case EW_REBOOT:
|
||||
if (parm0!=0xbadf00d)
|
||||
{
|
||||
my_MessageBox(GetNSISStringTT(LANG_INSTCORRUPTED),MB_OK|MB_ICONSTOP);
|
||||
my_MessageBox(GetNSISStringTT(LANG_INSTCORRUPTED),MB_OK|MB_ICONSTOP|(IDOK<<20));
|
||||
return EXEC_ERROR;
|
||||
}
|
||||
g_exec_flags.exec_error++;
|
||||
|
@ -1282,8 +1283,8 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
case EW_FOPEN:
|
||||
{
|
||||
HANDLE h;
|
||||
char *handleout=var3;
|
||||
char *buf1=GetStringFromParm(-0x10);
|
||||
char *handleout=var0;
|
||||
char *buf1=GetStringFromParm(-0x13);
|
||||
h=myOpenFile(buf1,parm1,parm2);
|
||||
if (h == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
|
@ -1359,11 +1360,11 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
char *t=var0;
|
||||
if (*t)
|
||||
{
|
||||
DWORD v=SetFilePointer((HANDLE)myatoi(t),GetIntFromParm(1),NULL,parm2);
|
||||
DWORD v=SetFilePointer((HANDLE)myatoi(t),GetIntFromParm(2),NULL,parm3);
|
||||
|
||||
if (parm3>=0)
|
||||
if (parm1>=0)
|
||||
{
|
||||
myitoa(var3,v);
|
||||
myitoa(var1,v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1395,11 +1396,11 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
break;
|
||||
case EW_FINDFIRST:
|
||||
{
|
||||
char *textout=var1;
|
||||
char *handleout=var2;
|
||||
char *textout=var0;
|
||||
char *handleout=var1;
|
||||
HANDLE h;
|
||||
WIN32_FIND_DATA fd;
|
||||
char *buf0=GetStringFromParm(0x00);
|
||||
char *buf0=GetStringFromParm(0x02);
|
||||
h=FindFirstFile(buf0,&fd);
|
||||
if (h == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
|
@ -1505,35 +1506,35 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
if ((unsigned int)x < (unsigned int)num_sections)
|
||||
{
|
||||
section *sec=g_sections+x;
|
||||
if (parm1>=0) // get something
|
||||
if (parm2>=0) // get something
|
||||
{
|
||||
int res=((int*)sec)[parm1];
|
||||
if (!parm1)
|
||||
int res=((int*)sec)[parm2];
|
||||
if (!parm2)
|
||||
{
|
||||
// getting text
|
||||
GetNSISString(var2,res);
|
||||
GetNSISString(var1,res);
|
||||
}
|
||||
else
|
||||
{
|
||||
// getting number
|
||||
myitoa(var2,res);
|
||||
myitoa(var1,res);
|
||||
}
|
||||
}
|
||||
else // set something
|
||||
{
|
||||
parm1=-parm1-1;
|
||||
if (parm1)
|
||||
parm2=-parm2-1;
|
||||
if (parm2)
|
||||
{
|
||||
// not setting text, get int
|
||||
parm2=GetIntFromParm(2);
|
||||
parm1=GetIntFromParm(1);
|
||||
}
|
||||
else
|
||||
{
|
||||
// setting text, send the message to do it
|
||||
SendMessage(hwSectionHack,WM_NOTIFY_SECTEXT,x,parm2);
|
||||
SendMessage(hwSectionHack,WM_NOTIFY_SECTEXT,x,parm1);
|
||||
}
|
||||
((int*)sec)[parm1]=parm2;
|
||||
if (parm1)
|
||||
((int*)sec)[parm2]=parm1;
|
||||
if (parm2)
|
||||
{
|
||||
// update tree view
|
||||
SendMessage(hwSectionHack,WM_NOTIFY_SECFLAGS,x,0);
|
||||
|
|
|
@ -482,21 +482,6 @@ extern int g_is_uninstaller;
|
|||
#define g_sections ((section*)g_blocks[NB_SECTIONS].offset)
|
||||
#define num_sections (g_blocks[NB_SECTIONS].num)
|
||||
#define g_entries ((entry*)g_blocks[NB_ENTRIES].offset)
|
||||
/*extern int num_sections;
|
||||
|
||||
//extern int g_autoclose;
|
||||
extern void *g_inst_combinedheader;
|
||||
extern page *g_inst_page;
|
||||
extern section *g_inst_section;
|
||||
extern entry *g_inst_entry;
|
||||
|
||||
#define g_inst_header ((header *)g_inst_combinedheader)
|
||||
#define g_inst_cmnheader ((common_header *)g_inst_combinedheader)
|
||||
|
||||
#ifdef NSIS_CONFIG_UNINSTALL_SUPPORT
|
||||
#define g_inst_uninstheader ((uninstall_header *)g_inst_combinedheader)
|
||||
extern int g_is_uninstaller;
|
||||
#endif*/
|
||||
#endif
|
||||
|
||||
#endif //_FILEFORM_H_
|
||||
|
|
|
@ -3148,14 +3148,14 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
#ifdef NSIS_SUPPORT_EXECUTE
|
||||
ent.which=EW_EXECUTE;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1] = 0;
|
||||
ent.offsets[2]=0;
|
||||
if (which_token == TOK_EXECWAIT)
|
||||
{
|
||||
ent.offsets[1]=1;
|
||||
ent.offsets[2]=GetUserVarIndex(line, 2);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[2]=1;
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[1]<0) PRINTHELP()
|
||||
}
|
||||
SCRIPT_MSG("%s: \"%s\" (->%s)\n",ent.offsets[1]?"ExecWait":"Exec",line.gettoken_str(1),line.gettoken_str(2));
|
||||
SCRIPT_MSG("%s: \"%s\" (->%s)\n",ent.offsets[2]?"ExecWait":"Exec",line.gettoken_str(1),line.gettoken_str(2));
|
||||
|
||||
DefineInnerLangString(NLF_EXEC);
|
||||
return add_entry(&ent);
|
||||
|
@ -4274,8 +4274,8 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
ent.which=EW_GETFULLPATHNAME;
|
||||
if (line.getnumtokens()==4 && !stricmp(line.gettoken_str(1),"/SHORT")) a++;
|
||||
else if (line.getnumtokens()==4 || *line.gettoken_str(1)=='/') PRINTHELP()
|
||||
ent.offsets[0]=GetUserVarIndex(line, 1+a);
|
||||
ent.offsets[1]=add_string(line.gettoken_str(2+a));
|
||||
ent.offsets[0]=add_string(line.gettoken_str(2+a));
|
||||
ent.offsets[1]=GetUserVarIndex(line, 1+a);
|
||||
ent.offsets[2]=!a;
|
||||
if (ent.offsets[0]<0) PRINTHELP()
|
||||
SCRIPT_MSG("GetFullPathName: %s->%s (%d)\n",
|
||||
|
@ -4299,10 +4299,10 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
case TOK_GETDLLVERSION:
|
||||
#ifdef NSIS_SUPPORT_GETDLLVERSION
|
||||
ent.which=EW_GETDLLVERSION;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[2]=GetUserVarIndex(line, 3);
|
||||
if (ent.offsets[1]<0 || ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[0]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[1]=GetUserVarIndex(line, 3);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(1));
|
||||
if (ent.offsets[0]<0 || ent.offsets[1]<0) PRINTHELP()
|
||||
SCRIPT_MSG("GetDLLVersion: %s->%s,%s\n",
|
||||
line.gettoken_str(1),line.gettoken_str(2),line.gettoken_str(3));
|
||||
return add_entry(&ent);
|
||||
|
@ -4313,10 +4313,10 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
case TOK_GETFILETIME:
|
||||
#ifdef NSIS_SUPPORT_GETFILETIME
|
||||
ent.which=EW_GETFILETIME;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[2]=GetUserVarIndex(line, 3);
|
||||
if (ent.offsets[1]<0 || ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[0]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[1]=GetUserVarIndex(line, 3);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(1));
|
||||
if (ent.offsets[0]<0 || ent.offsets[1]<0) PRINTHELP()
|
||||
SCRIPT_MSG("GetFileTime: %s->%s,%s\n",
|
||||
line.gettoken_str(1),line.gettoken_str(2),line.gettoken_str(3));
|
||||
return add_entry(&ent);
|
||||
|
@ -4604,10 +4604,10 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
#ifdef NSIS_SUPPORT_FINDFIRST
|
||||
case TOK_FINDFIRST:
|
||||
ent.which=EW_FINDFIRST;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(3)); // filespec
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2); // out
|
||||
ent.offsets[2]=GetUserVarIndex(line, 1); // handleout
|
||||
if (ent.offsets[1] < 0 || ent.offsets[2] < 0) PRINTHELP()
|
||||
ent.offsets[0]=GetUserVarIndex(line, 2); // out
|
||||
ent.offsets[1]=GetUserVarIndex(line, 1); // handleout
|
||||
ent.offsets[2]=add_string(line.gettoken_str(3)); // filespec
|
||||
if (ent.offsets[0] < 0 || ent.offsets[1] < 0) PRINTHELP()
|
||||
SCRIPT_MSG("FindFirst: spec=\"%s\" handle=%s output=%s\n",line.gettoken_str(3),line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_FINDNEXT:
|
||||
|
@ -4637,8 +4637,8 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
case TOK_FILEOPEN:
|
||||
{
|
||||
ent.which=EW_FOPEN;
|
||||
ent.offsets[3]=GetUserVarIndex(line, 1); // file handle
|
||||
ent.offsets[0]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[0]=GetUserVarIndex(line, 1); // file handle
|
||||
ent.offsets[3]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[1]=0; //openmode
|
||||
if (!stricmp(line.gettoken_str(3),"r"))
|
||||
{
|
||||
|
@ -4705,8 +4705,8 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
int mode=line.gettoken_enum(3,"SET\0CUR\0END\0");
|
||||
ent.which=EW_FSEEK;
|
||||
ent.offsets[0]=GetUserVarIndex(line, 1);
|
||||
ent.offsets[1]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[3]=GetUserVarIndex(line, 4);
|
||||
ent.offsets[1]=GetUserVarIndex(line, 4);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(2));
|
||||
|
||||
if (mode<0 && !line.gettoken_str(3)[0])
|
||||
{
|
||||
|
@ -4715,8 +4715,8 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
}
|
||||
else modestr=line.gettoken_str(3);
|
||||
|
||||
if (mode<0 || ent.offsets[0] < 0 || (ent.offsets[3]<0 && line.gettoken_str(4)[0])) PRINTHELP()
|
||||
ent.offsets[2]=tab[mode];
|
||||
if (mode<0 || ent.offsets[0] < 0 || (ent.offsets[1]<0 && line.gettoken_str(4)[0])) PRINTHELP()
|
||||
ent.offsets[3]=tab[mode];
|
||||
SCRIPT_MSG("FileSeek: fp=%s, ofs=%s, mode=%s, output=%s\n",
|
||||
line.gettoken_str(1),
|
||||
line.gettoken_str(2),
|
||||
|
@ -4795,31 +4795,31 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
case TOK_SECTIONSETTEXT:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_SET(name_ptr);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[1]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[2]=SECTION_FIELD_SET(name_ptr);
|
||||
SCRIPT_MSG("SectionSetText: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SECTIONGETTEXT:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_GET(name_ptr);
|
||||
ent.offsets[2]=GetUserVarIndex(line, 2);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[2]=SECTION_FIELD_GET(name_ptr);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[1]<0) PRINTHELP()
|
||||
SCRIPT_MSG("SectionGetText: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SECTIONSETFLAGS:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_SET(flags);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[1]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[2]=SECTION_FIELD_SET(flags);
|
||||
SCRIPT_MSG("SectionSetFlags: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SECTIONGETFLAGS:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_GET(flags);
|
||||
ent.offsets[2]=GetUserVarIndex(line, 2);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[2]=SECTION_FIELD_GET(flags);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[1]<0) PRINTHELP()
|
||||
SCRIPT_MSG("SectionGetFlags: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_INSTTYPESETTEXT:
|
||||
|
@ -4840,31 +4840,31 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
|||
case TOK_SECTIONSETINSTTYPES:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_SET(install_types);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[1]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[2]=SECTION_FIELD_SET(install_types);
|
||||
SCRIPT_MSG("SectionSetInstTypes: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SECTIONGETINSTTYPES:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_GET(install_types);
|
||||
ent.offsets[2]=GetUserVarIndex(line, 2);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[2]=SECTION_FIELD_GET(install_types);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[1]<0) PRINTHELP()
|
||||
SCRIPT_MSG("SectionGetInstTypes: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SECTIONSETSIZE:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_SET(size_kb);
|
||||
ent.offsets[2]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[1]=add_string(line.gettoken_str(2));
|
||||
ent.offsets[2]=SECTION_FIELD_SET(size_kb);
|
||||
SCRIPT_MSG("SectionSetSize: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SECTIONGETSIZE:
|
||||
ent.which=EW_SECTIONSET;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=SECTION_FIELD_GET(size_kb);
|
||||
ent.offsets[2]=GetUserVarIndex(line, 2);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[2]<0) PRINTHELP()
|
||||
ent.offsets[1]=GetUserVarIndex(line, 2);
|
||||
ent.offsets[2]=SECTION_FIELD_GET(size_kb);
|
||||
if (line.gettoken_str(2)[0] && ent.offsets[1]<0) PRINTHELP()
|
||||
SCRIPT_MSG("SectionGetSize: %s->%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
case TOK_SETCURINSTTYPE:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue