Bug 1177122 - handle OOM in JSStructuredCloneWriter destructor. r=evilpie

This commit is contained in:
Lars T Hansen 2015-10-08 10:25:23 +01:00
Родитель f7185aea2d
Коммит aff3a9aab3
1 изменённых файлов: 7 добавлений и 3 удалений

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

@ -734,9 +734,13 @@ JSStructuredCloneWriter::~JSStructuredCloneWriter()
// Free any transferable data left lying around in the buffer
uint64_t* data;
size_t size;
MOZ_ALWAYS_TRUE(extractBuffer(&data, &size));
DiscardTransferables(data, size, callbacks, closure);
js_free(data);
{
AutoEnterOOMUnsafeRegion oomUnsafe;
if (!extractBuffer(&data, &size))
oomUnsafe.crash("Unable to extract clone buffer");
DiscardTransferables(data, size, callbacks, closure);
js_free(data);
}
}
bool