зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1235032 - check value of obj, remake while () {} to do { } while(). r=jorendorff
This commit is contained in:
Родитель
9e2d0d9fab
Коммит
770ebf3015
|
@ -3816,6 +3816,7 @@ GetPropertyIC::tryAttachDenseElement(JSContext* cx, HandleScript outerScript, Io
|
||||||
/* static */ bool
|
/* static */ bool
|
||||||
GetPropertyIC::canAttachDenseElementHole(JSObject* obj, HandleValue idval, TypedOrValueRegister output)
|
GetPropertyIC::canAttachDenseElementHole(JSObject* obj, HandleValue idval, TypedOrValueRegister output)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (!idval.isInt32() || idval.toInt32() < 0)
|
if (!idval.isInt32() || idval.toInt32() < 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -3828,7 +3829,7 @@ GetPropertyIC::canAttachDenseElementHole(JSObject* obj, HandleValue idval, Typed
|
||||||
if (obj->as<NativeObject>().getDenseInitializedLength() == 0)
|
if (obj->as<NativeObject>().getDenseInitializedLength() == 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
while (obj) {
|
do {
|
||||||
if (obj->isIndexed())
|
if (obj->isIndexed())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -3847,7 +3848,7 @@ GetPropertyIC::canAttachDenseElementHole(JSObject* obj, HandleValue idval, Typed
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
obj = proto;
|
obj = proto;
|
||||||
}
|
} while (obj);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче