Fix random crash

The buffers, where reply of a request is send, were deleted when they were about
to close but it makes the app crash, they have to be deleted when the request
object is deleted
This commit is contained in:
luddens 2019-06-04 11:13:38 +02:00
parent d809533ee8
commit cb9707a511

View File

@ -49,7 +49,7 @@ UrlSchemeHandler::handleContentRequest(QWebEngineUrlRequestJob *request)
BlobBuffer* buffer = new BlobBuffer(entry.getBlob());
auto mimeType = QByteArray::fromStdString(entry.getMimetype());
mimeType = mimeType.split(';')[0];
connect(buffer, &QIODevice::aboutToClose, buffer, &QObject::deleteLater);
connect(request, &QObject::destroyed, buffer, &QObject::deleteLater);
request->reply(mimeType, buffer);
}
@ -69,7 +69,7 @@ UrlSchemeHandler::handleMetaRequest(QWebEngineUrlRequestJob* request)
std::string mimeType = book.getFaviconMimeType();
QBuffer* buffer = new QBuffer;
buffer->setData(content.data(), content.size());
connect(buffer, &QIODevice::aboutToClose, buffer, &QObject::deleteLater);
connect(request, &QObject::destroyed, buffer, &QObject::deleteLater);
request->reply(QByteArray::fromStdString(mimeType), buffer);
}
request->fail(QWebEngineUrlRequestJob::UrlNotFound);