X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6489e7ee028debbcdb8aae980b503fce7482538b..b9efe021b554fa3967d1442cf758435c5cd5ae8f:/src/common/docview.cpp diff --git a/src/common/docview.cpp b/src/common/docview.cpp index 9946ac2668..221ce1b136 100644 --- a/src/common/docview.cpp +++ b/src/common/docview.cpp @@ -1225,7 +1225,12 @@ wxDocument *wxDocManager::CreateDocument(const wxString& path, long flags) { newDoc->SetDocumentName(temp->GetDocumentName()); newDoc->SetDocumentTemplate(temp); - newDoc->OnNewDocument(); + if (!newDoc->OnNewDocument() ) + { + // Document is implicitly deleted by DeleteAllViews + newDoc->DeleteAllViews(); + return NULL; + } } return newDoc; } @@ -1248,7 +1253,12 @@ wxDocument *wxDocManager::CreateDocument(const wxString& path, long flags) { newDoc->SetDocumentName(temp->GetDocumentName()); newDoc->SetDocumentTemplate(temp); - newDoc->OnNewDocument(); + if (!newDoc->OnNewDocument() ) + { + // Document is implicitly deleted by DeleteAllViews + newDoc->DeleteAllViews(); + return NULL; + } } return newDoc; }