gecko-dev/embedding/components/printingui/ipc/PrintSettingsDialogChild.cpp
L. David Baron ext:(%2C%20Ben%20Turner%20%3Cbent.mozilla%40gmail.com%3E) aa31a08c28 Bug 1152921 - Don't send an uninitialized PrintData over IPC when cancelling print dialog (or failing ShowPrintDialog for other reasons). r=mconley
This fixes a crash in debug builds (due to uninitialized booleans) when
canceling a print dialog.
2015-04-16 19:27:01 -07:00

39 lines
932 B
C++

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "PrintSettingsDialogChild.h"
using mozilla::unused;
namespace mozilla {
namespace embedding {
PrintSettingsDialogChild::PrintSettingsDialogChild()
: mReturned(false)
{
MOZ_COUNT_CTOR(PrintSettingsDialogChild);
}
PrintSettingsDialogChild::~PrintSettingsDialogChild()
{
MOZ_COUNT_DTOR(PrintSettingsDialogChild);
}
bool
PrintSettingsDialogChild::Recv__delete__(const PrintDataOrNSResult& aData)
{
if (aData.type() == PrintDataOrNSResult::Tnsresult) {
mResult = aData.get_nsresult();
MOZ_ASSERT(NS_FAILED(mResult), "expected a failure result");
} else {
mResult = NS_OK;
mData = aData.get_PrintData();
}
mReturned = true;
return true;
}
} // namespace embedding
} // namespace mozilla