X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0cecad314c1052c1e3545f431af4228b3c737033..92bbd64f7fc6d489fa7af1193feef7f3308da549:/src/html/htmprint.cpp diff --git a/src/html/htmprint.cpp b/src/html/htmprint.cpp index 3dd7639e7b..fac5d33635 100644 --- a/src/html/htmprint.cpp +++ b/src/html/htmprint.cpp @@ -10,7 +10,7 @@ #ifdef __GNUG__ -#pragma implementation +#pragma implementation "htmprint.h" #endif // For compilers that support precompilation, includes "wx/wx.h". @@ -269,7 +269,8 @@ void wxHtmlPrintout::SetHtmlText(const wxString& html, const wxString &basepath, m_BasePathIsDir = isdir; } - +// defined in htmlfilt.cpp +void wxPrivate_ReadString(wxString& str, wxInputStream* s); void wxHtmlPrintout::SetHtmlFile(const wxString& htmlfile) { @@ -283,12 +284,9 @@ void wxHtmlPrintout::SetHtmlFile(const wxString& htmlfile) } wxInputStream *st = ff->GetStream(); - char *t = new char[st->GetSize() + 1]; - st->Read(t, st->GetSize()); - t[st->GetSize()] = 0; + wxString doc; + wxPrivate_ReadString(doc, st); - wxString doc = wxString(t); - delete t; delete ff; SetHtmlText(doc, htmlfile, FALSE); @@ -545,6 +543,12 @@ void wxHtmlEasyPrinting::PrinterSetup() void wxHtmlEasyPrinting::PageSetup() { + if (!m_PrintData->Ok()) + { + wxLogError(_("There was a problem during page setup: you may need to set a default printer.")); + return; + } + m_PageSetupData->SetPrintData(*m_PrintData); wxPageSetupDialog pageSetupDialog(m_Frame, m_PageSetupData);