summaryrefslogtreecommitdiffstats
path: root/src/core/printing/print_view_manager_base_qt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/printing/print_view_manager_base_qt.cpp')
-rw-r--r--src/core/printing/print_view_manager_base_qt.cpp24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/core/printing/print_view_manager_base_qt.cpp b/src/core/printing/print_view_manager_base_qt.cpp
index 52f4481bb..4516f10b2 100644
--- a/src/core/printing/print_view_manager_base_qt.cpp
+++ b/src/core/printing/print_view_manager_base_qt.cpp
@@ -343,9 +343,10 @@ void PrintViewManagerBaseQt::ShouldQuitFromInnerMessageLoop()
}
}
-bool PrintViewManagerBaseQt::CreateNewPrintJob(printing::PrinterQuery *job)
+bool PrintViewManagerBaseQt::CreateNewPrintJob(std::unique_ptr<printing::PrinterQuery> query)
{
DCHECK(!m_isInsideInnerMessageLoop);
+ DCHECK(query);
// Disconnect the current |m_printJob|.
DisconnectFromCurrentPrintJob();
@@ -359,12 +360,9 @@ bool PrintViewManagerBaseQt::CreateNewPrintJob(printing::PrinterQuery *job)
// Ask the renderer to generate the print preview, create the print preview
// view and switch to it, initialize the printer and show the print dialog.
DCHECK(!m_printJob.get());
- DCHECK(job);
- if (!job)
- return false;
m_printJob = base::MakeRefCounted<printing::PrintJob>();
- m_printJob->Initialize(job, RenderSourceName(), number_pages_);
+ m_printJob->Initialize(std::move(query), RenderSourceName(), number_pages_);
m_registrar.Add(this, chrome::NOTIFICATION_PRINT_JOB_EVENT,
content::Source<printing::PrintJob>(m_printJob.get()));
m_didPrintingSucceed = false;
@@ -482,13 +480,13 @@ bool PrintViewManagerBaseQt::OpportunisticallyCreatePrintJob(int cookie)
// The job was initiated by a script. Time to get the corresponding worker
// thread.
- scoped_refptr<printing::PrinterQuery> queued_query = m_printerQueriesQueue->PopPrinterQuery(cookie);
- if (!queued_query.get()) {
+ std::unique_ptr<printing::PrinterQuery> queued_query = m_printerQueriesQueue->PopPrinterQuery(cookie);
+ if (!queued_query) {
NOTREACHED();
return false;
}
- if (!CreateNewPrintJob(queued_query.get())) {
+ if (!CreateNewPrintJob(std::move(queued_query))) {
// Don't kill anything.
return false;
}
@@ -512,23 +510,23 @@ void PrintViewManagerBaseQt::ReleasePrinterQuery()
if (!printJobManager)
return;
- scoped_refptr<printing::PrinterQuery> printerQuery;
+ std::unique_ptr<printing::PrinterQuery> printerQuery;
printerQuery = m_printerQueriesQueue->PopPrinterQuery(cookie);
- if (!printerQuery.get())
+ if (!printerQuery)
return;
base::PostTaskWithTraits(FROM_HERE, {content::BrowserThread::IO},
- base::BindOnce(&printing::PrinterQuery::StopWorker, printerQuery.get()));
+ base::BindOnce(&printing::PrinterQuery::StopWorker, std::move(printerQuery)));
}
// Originally from print_preview_message_handler.cc:
void PrintViewManagerBaseQt::StopWorker(int documentCookie) {
if (documentCookie <= 0)
return;
- scoped_refptr<printing::PrinterQuery> printer_query =
+ std::unique_ptr<printing::PrinterQuery> printer_query =
m_printerQueriesQueue->PopPrinterQuery(documentCookie);
if (printer_query.get()) {
base::PostTaskWithTraits(FROM_HERE, {content::BrowserThread::IO},
- base::BindOnce(&printing::PrinterQuery::StopWorker, printer_query));
+ base::BindOnce(&printing::PrinterQuery::StopWorker, std::move(printer_query)));
}
}