Просмотр исходного кода

Changed double equality test by on bitwise test to check type OT_FLOAT|OT_INTEGER

mingodad 13 лет назад
Родитель
Сommit
c0dcabf148
2 измененных файлов с 2 добавлено и 2 удалено
  1. 1 1
      sqstdlib/sqstdblob.cpp
  2. 1 1
      sqstdlib/sqstdsystem.cpp

+ 1 - 1
sqstdlib/sqstdblob.cpp

@@ -209,7 +209,7 @@ static SQInteger _blob__get(HSQUIRRELVM v)
 	SETUP_BLOB(v);
 	SQInteger idx;
 	SQObjectType ptype = sq_gettype(v, 2);
-	if( !(ptype == OT_INTEGER || ptype == OT_FLOAT) ){
+	if( !(ptype & SQOBJECT_NUMERIC) ){
 	    //allow call metatable methods indexed by strings
 	    sq_reseterror(v);
 	    return SQ_ERROR;

+ 1 - 1
sqstdlib/sqstdsystem.cpp

@@ -75,7 +75,7 @@ static SQInteger get_int_field (HSQUIRRELVM v, const SQChar *key, int dflt) {
     sq_pushstring(v, key, -1);
     if(sq_get(v, -2) == SQ_OK){
         stype = sq_gettype(v, -1);
-        if (stype == OT_INTEGER || stype == OT_FLOAT){
+        if (stype & SQOBJECT_NUMERIC){
             sq_getinteger(v, -1, &res);
             sq_poptop(v);
             return res;