diff options
author | shennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-08-12 16:31:32 +0000 |
---|---|---|
committer | shennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-08-12 16:31:32 +0000 |
commit | 2d2daf56dfd6e6f7e88192154baba2ba80636043 (patch) | |
tree | 4796c208fad63267bc5686f36cf5b4d712bb7f3b | |
parent | 960472a38a2d354c0828527b3684bd7d49bd421c (diff) | |
download | hercules-2d2daf56dfd6e6f7e88192154baba2ba80636043.tar.gz hercules-2d2daf56dfd6e6f7e88192154baba2ba80636043.tar.bz2 hercules-2d2daf56dfd6e6f7e88192154baba2ba80636043.tar.xz hercules-2d2daf56dfd6e6f7e88192154baba2ba80636043.zip |
Fixed bugreport:6459 yet another variable assignment fix, special thanks to joseph for bringing this to our attention.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16625 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | src/map/script.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/map/script.c b/src/map/script.c index f3116b569..a6a8eaa17 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -1192,8 +1192,10 @@ const char* parse_variable(const char* p) { add_scriptl(word); } - if( type == C_ADD_PP || type == C_SUB_PP ) {// incremental operator for the method + if( type != C_EQ ) add_scriptc(C_REF); + + if( type == C_ADD_PP || type == C_SUB_PP ) {// incremental operator for the method add_scripti(1); add_scriptc(type == C_ADD_PP ? C_ADD : C_SUB); } else {// process the value as an expression @@ -3398,7 +3400,7 @@ static void script_check_buildin_argtype(struct script_state* st, int func) case 'r': if( !data_isreference(data) ) {// variables - ShowWarning("Unexpected type for argument %d. Expected variable.\n", idx-1); + ShowWarning("Unexpected type for argument %d. Expected variable, got %s.\n", idx-1,script_op2name(data->type)); script_reportdata(data); invalid++; } |