| Index: chrome/browser/printing/print_dialog_gtk.cc
|
| diff --git a/chrome/browser/printing/print_dialog_gtk.cc b/chrome/browser/printing/print_dialog_gtk.cc
|
| index 652a205b688c42c75355922e36467b4f8fc0fc2b..0625743d47f49a8c086d121a74a4b269a4c2dc6e 100644
|
| --- a/chrome/browser/printing/print_dialog_gtk.cc
|
| +++ b/chrome/browser/printing/print_dialog_gtk.cc
|
| @@ -100,8 +100,7 @@ printing::PrintDialogGtkInterface* PrintDialogGtk::CreatePrintDialog(
|
| }
|
|
|
| PrintDialogGtk::PrintDialogGtk(PrintingContextGtk* context)
|
| - : callback_(NULL),
|
| - context_(context),
|
| + : context_(context),
|
| dialog_(NULL),
|
| gtk_settings_(NULL),
|
| page_setup_(NULL),
|
| @@ -232,7 +231,7 @@ bool PrintDialogGtk::UpdateSettings(const DictionaryValue& job_settings,
|
| }
|
|
|
| void PrintDialogGtk::ShowDialog(
|
| - PrintingContextGtk::PrintSettingsCallback* callback) {
|
| + const PrintingContextGtk::PrintSettingsCallback& callback) {
|
| callback_ = callback;
|
|
|
| GtkWindow* parent = BrowserList::GetLastActive()->window()->GetNativeHandle();
|
| @@ -343,14 +342,14 @@ void PrintDialogGtk::OnResponse(GtkWidget* dialog, int response_id) {
|
| printing::PrintSettingsInitializerGtk::InitPrintSettings(
|
| gtk_settings_, page_setup_, ranges_vector, false, &settings);
|
| context_->InitWithSettings(settings);
|
| - callback_->Run(PrintingContextGtk::OK);
|
| - callback_ = NULL;
|
| + callback_.Run(PrintingContextGtk::OK);
|
| + callback_.Reset();
|
| return;
|
| }
|
| case GTK_RESPONSE_DELETE_EVENT: // Fall through.
|
| case GTK_RESPONSE_CANCEL: {
|
| - callback_->Run(PrintingContextGtk::CANCEL);
|
| - callback_ = NULL;
|
| + callback_.Run(PrintingContextGtk::CANCEL);
|
| + callback_.Reset();
|
| return;
|
| }
|
| case GTK_RESPONSE_APPLY:
|
|
|