Bug 1330273 - Add some security checks about the use of the string buffer in FileReader, r=bkelly

This commit is contained in:
Andrea Marchesini
2017-01-12 17:45:52 +01:00
parent 46a9207d60
commit 0a5ade1332

View File

@@ -333,6 +333,7 @@ FileReader::DoReadData(uint64_t aCount)
}
uint32_t bytesRead = 0;
MOZ_DIAGNOSTIC_ASSERT(mFileData);
mAsyncStream->Read(mFileData + mDataLen, aCount, &bytesRead);
MOZ_ASSERT(bytesRead == aCount, "failed to read data");
}
@@ -731,14 +732,16 @@ FileReader::Notify(Status aStatus)
void
FileReader::Shutdown()
{
FreeFileData();
mResultArrayBuffer = nullptr;
mReadyState = DONE;
if (mAsyncStream) {
mAsyncStream->Close();
mAsyncStream = nullptr;
}
FreeFileData();
mResultArrayBuffer = nullptr;
if (mWorkerPrivate && mBusyCount != 0) {
ReleaseWorker();
mWorkerPrivate = nullptr;