diff --git a/src/x11/bitmap.cpp b/src/x11/bitmap.cpp index 73406ad376..2af78decca 100644 --- a/src/x11/bitmap.cpp +++ b/src/x11/bitmap.cpp @@ -593,10 +593,11 @@ bool wxBitmap::CreateFromImage( const wxImage& image, int depth ) M_BMPDATA->m_pixmap = XCreatePixmap( xdisplay, xroot, width, height, depth ); - // Create mask + // Create mask if necessary + const bool hasMask = image.HasMask(); XImage *mask_image = (XImage*) NULL; - if (image.HasMask()) + if ( hasMask ) { mask_image = XCreateImage( xdisplay, xvisual, 1, ZPixmap, 0, 0, width, height, 32, 0 ); mask_image->data = (char*) malloc( mask_image->bytes_per_line * mask_image->height ); @@ -646,8 +647,6 @@ bool wxBitmap::CreateFromImage( const wxImage& image, int depth ) unsigned char *colorCube = wxTheApp->GetVisualInfo(M_BMPDATA->m_display)->m_colorCube; - bool hasMask = image.HasMask(); - int index = 0; for (int y = 0; y < height; y++) {