increased instruction parameter count to 6, made SendMessage support strings differently and made it support timeouts

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@1006 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
justin1014 2002-09-13 21:23:01 +00:00
parent b319c52229
commit 680c8f78af
4 changed files with 34 additions and 11 deletions

View file

@ -2281,12 +2281,25 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
case TOK_SENDMESSAGE:
ent.which=EW_SENDMESSAGE;
SCRIPT_MSG("SendMessage:");
ent.offsets[0]=line.gettoken_enum(5,usrvars);
if (ent.offsets[0]>=0)
{
SCRIPT_MSG("(->%s)",line.gettoken_str(5));
int a=5;
ent.offsets[0]=line.gettoken_enum(5,usrvars);
if (ent.offsets[0]>=0)
{
SCRIPT_MSG("(->%s)",line.gettoken_str(5));
a++;
}
if (!strncmp(line.gettoken_str(a),"/TIMEOUT=",9))
{
ent.offsets[5]|=atoi(line.gettoken_str(a)+9)<<2;
SCRIPT_MSG(" (timeout=%d)",ent.offsets[5]>>2);
}
}
if (!strncmp(line.gettoken_str(3),"STR:",4)) ent.offsets[5]|=1;
if (!strncmp(line.gettoken_str(4),"STR:",4)) ent.offsets[5]|=2;
ent.offsets[1]=add_string(line.gettoken_str(1));
ent.offsets[2]=add_string(line.gettoken_str(2));
ent.offsets[3]=add_string(line.gettoken_str(3));