| 380 | } |
| 381 | |
| 382 | void CrashDialog::sendReport() |
| 383 | { |
| 384 | delete m_Request; |
| 385 | m_Request = NULL; |
| 386 | |
| 387 | QHttpMultiPart *multiPart = new QHttpMultiPart(QHttpMultiPart::FormDataType); |
| 388 | |
| 389 | // from the QHttpMultiPart example |
| 390 | for(QString key : m_ReportMetadata.keys()) |
| 391 | { |
| 392 | QHttpPart param; |
| 393 | param.setHeader(QNetworkRequest::ContentDispositionHeader, |
| 394 | lit("form-data; name=\"%1\"").arg(key)); |
| 395 | param.setBody(m_ReportMetadata[key].toString().toUtf8()); |
| 396 | |
| 397 | multiPart->append(param); |
| 398 | } |
| 399 | |
| 400 | QString email = ui->email->text(); |
| 401 | QString description = ui->description->toPlainText(); |
| 402 | |
| 403 | if(!email.isEmpty()) |
| 404 | { |
| 405 | QHttpPart param; |
| 406 | param.setHeader(QNetworkRequest::ContentDispositionHeader, lit("form-data; name=\"email\"")); |
| 407 | param.setBody(email.toUtf8()); |
| 408 | |
| 409 | multiPart->append(param); |
| 410 | } |
| 411 | |
| 412 | if(!description.isEmpty()) |
| 413 | { |
| 414 | QHttpPart param; |
| 415 | param.setHeader(QNetworkRequest::ContentDispositionHeader, |
| 416 | lit("form-data; name=\"description\"")); |
| 417 | param.setBody(description.toUtf8()); |
| 418 | |
| 419 | multiPart->append(param); |
| 420 | } |
| 421 | |
| 422 | if(!m_CaptureFilename.isEmpty() && ui->captureUpload->isChecked()) |
| 423 | { |
| 424 | { |
| 425 | QHttpPart capture; |
| 426 | |
| 427 | QFile *file = new QFile(m_CaptureFilename); |
| 428 | if(file->open(QIODevice::ReadOnly)) |
| 429 | { |
| 430 | file->setParent(multiPart); |
| 431 | |
| 432 | capture.setHeader(QNetworkRequest::ContentTypeHeader, |
| 433 | lit("application/x-renderdoc-capture")); |
| 434 | capture.setHeader(QNetworkRequest::ContentDispositionHeader, |
| 435 | lit("form-data; name=\"capture\"; filename=\"capture.rdc\"")); |
| 436 | capture.setBodyDevice(file); |
| 437 | |
| 438 | multiPart->append(capture); |
| 439 | } |
nothing calls this directly
no test coverage detected