Prevent allocating zero bytes.

This commit is contained in:
mhammond%skippinet.com.au 2003-04-16 01:23:40 +00:00
Родитель 878126d37b
Коммит a018868e16
2 изменённых файлов: 4 добавлений и 0 удалений

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

@ -80,6 +80,9 @@ static PyObject *DoPyRead_Size(nsIInputStream *pI, PRUint32 n)
if (NS_FAILED(r))
return PyXPCOM_BuildPyException(r);
}
if (n==0) { // mozilla will assert if we alloc zero bytes.
return PyBuffer_New(0);
}
char *buf = (char *)nsMemory::Alloc(n);
if (buf==NULL) {
PyErr_NoMemory();

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

@ -2482,6 +2482,7 @@ nsresult PyXPCOM_GatewayVariantHelper::BackFillVariant( PyObject *val, int index
if (val == Py_None)
break; // Remains NULL.
size_t nbytes = sequence_size * element_size;
if (nbytes==0) nbytes = 1; // avoid assertion about 0 bytes
*pp = (void *)nsMemory::Alloc(nbytes);
memset(*pp, 0, nbytes);
rc = FillSingleArray(*pp, val, sequence_size, element_size, array_type&XPT_TDP_TAGMASK);