Bug 1310744: Don't enter in the fast path for DeleteArrayElement for frozen arrays. r=nbp

MozReview-Commit-ID: 6NuJICFchMr

--HG--
extra : rebase_source : af573290d89bc82a5c6e62a491fe29999aa4e3fb
This commit is contained in:
Emilio Cobos Álvarez 2016-10-19 21:04:51 +02:00
Родитель de44eaf3df
Коммит 288528b0c3
1 изменённых файлов: 3 добавлений и 1 удалений

Просмотреть файл

@ -430,7 +430,9 @@ DeleteArrayElement(JSContext* cx, HandleObject obj, double index, ObjectOpResult
MOZ_ASSERT(index >= 0);
MOZ_ASSERT(floor(index) == index);
if (obj->is<ArrayObject>() && !obj->isIndexed()) {
if (obj->is<ArrayObject>() && !obj->isIndexed() &&
!obj->as<NativeObject>().denseElementsAreFrozen())
{
ArrayObject* aobj = &obj->as<ArrayObject>();
if (index <= UINT32_MAX) {
uint32_t idx = uint32_t(index);