]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dcprint.cpp
Avoid core dumps when SetImageList is used.
[wxWidgets.git] / src / msw / dcprint.cpp
index aac533377b575177fdc24c21ff9b33bf1379b6a2..819514bb60cd22b6b5681589547883c12d7673a4 100644 (file)
@@ -17,7 +17,7 @@
 // headers
 // ----------------------------------------------------------------------------
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma implementation "dcprint.h"
 #endif
 
@@ -195,13 +195,11 @@ bool wxPrinterDC::StartDoc(const wxString& message)
 
     int ret = ::StartDoc(GetHdc(), &docinfo);
 
-#ifndef __WIN16__
     if (ret <= 0)
     {
         DWORD lastError = GetLastError();
         wxLogDebug(wxT("wxDC::StartDoc failed with error: %ld\n"), lastError);
     }
-#endif
 
     return (ret > 0);
 }
@@ -229,7 +227,6 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
     deviceName.clear();
 
     LPDEVNAMES  lpDevNames;
-    LPTSTR      lpszDriverName;
     LPTSTR      lpszDeviceName;
     LPTSTR      lpszPortName;
 
@@ -263,7 +260,6 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
     if (pd.hDevNames)
     {
         lpDevNames = (LPDEVNAMES)GlobalLock(pd.hDevNames);
-        lpszDriverName = (LPTSTR)lpDevNames + lpDevNames->wDriverOffset;
         lpszDeviceName = (LPTSTR)lpDevNames + lpDevNames->wDeviceOffset;
         lpszPortName   = (LPTSTR)lpDevNames + lpDevNames->wOutputOffset;
 
@@ -311,15 +307,10 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst)
     {
         // Retrieve the default device name
         wxString portName;
-#ifdef  __WXDEBUG__
-        bool ret =
-#else   // !Debug
-        (void)
-#endif // Debug/Release
-        wxGetDefaultDeviceName(devNameStr, portName);
-
-        wxASSERT_MSG( ret, wxT("Could not get default device name.") );
-
+        if ( !wxGetDefaultDeviceName(devNameStr, portName) )
+        {
+            return 0; // Could not get default device name
+        }
         deviceName = devNameStr.c_str();
     }
 
@@ -347,7 +338,8 @@ bool DrawBitmapUsingStretchDIBits(HDC hdc,
 {
 #if wxUSE_WXDIB
     wxDIB dib(bmp);
-    if ( !dib.IsOk() )
+    bool ok = dib.IsOk();
+    if ( !ok )
         return FALSE;
 
     DIBSECTION ds;
@@ -408,7 +400,7 @@ void wxPrinterDC::DoDrawBitmap(const wxBitmap& bmp,
 bool wxPrinterDC::DoBlit(wxCoord xdest, wxCoord ydest,
                          wxCoord width, wxCoord height,
                          wxDC *source,
-                         wxCoord xsrc, wxCoord ysrc,
+                         wxCoord WXUNUSED(xsrc), wxCoord WXUNUSED(ysrc),
                          int WXUNUSED(rop), bool useMask,
                          wxCoord WXUNUSED(xsrcMask), wxCoord WXUNUSED(ysrcMask))
 {