瀏覽代碼

Applied Ai4rei's patch to prevent an invalid rid from being attached to the execution of a script. (bugreport:4470)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/renewal@14424 54d463be-8e91-2dee-dedb-b68131a5f0ec
Paradox924X 14 年之前
父節點
當前提交
bed93164f2
共有 2 個文件被更改,包括 8 次插入2 次删除
  1. 1 0
      Changelog-Trunk.txt
  2. 7 2
      src/map/script.c

+ 1 - 0
Changelog-Trunk.txt

@@ -4,6 +4,7 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
 2010/10/10
+	* Applied Ai4rei's patch to prevent an invalid rid from being attached to the execution of a script. (bugreport:4470) [Paradox924X]
 	* Added NULL initialization to info variable in map_readfromcache() to satiate compiler. (bugreport:4399) [Paradox924X]
 	* Applied Ai4rei's patch to eliminate unnecessary and redundant castle data saving. (bugreport:4471) [Paradox924X]
 	* Added a missing const qualifier to a variable. (bugreport:4472) [Paradox924X]

+ 7 - 2
src/map/script.c

@@ -9068,8 +9068,13 @@ BUILDIN_FUNC(warpwaitingpc)
  *------------------------------------------*/
 BUILDIN_FUNC(attachrid)
 {
-	st->rid=script_getnum(st,2);
-	script_pushint(st,(map_id2sd(st->rid)!=NULL));
+	int rid = script_getnum(st,2);
+	
+	if (map_id2sd(rid)) {
+		st->rid = rid;
+		script_pushint(st,1);
+	} else
+		script_pushint(st,0);
 	return 0;
 }
 /*==========================================