diff --git a/src/kernel/qpainter_x11.cpp b/src/kernel/qpainter_x11.cpp index 126c0d6..fd6979b 100644 --- a/src/kernel/qpainter_x11.cpp +++ b/src/kernel/qpainter_x11.cpp @@ -1839,7 +1839,8 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h, static char winfocus_line[] = { 1, 1 }; QPen old_pen = cpen; - RasterOp old_rop = (RasterOp)rop; + QBrush old_brush = cbrush; + RasterOp old_rop = (RasterOp)rop; if ( xorPaint ) { if ( QColor::numBitPlanes() <= 8 ) @@ -1858,10 +1859,13 @@ void QPainter::drawWinFocusRect( int x, int y, int w, int h, if ( testf(ExtDev) ) { QPDevCmdParam param[1]; QRect r( x, y, w-1, h-1 ); + QBrush noBrush; param[0].rect = &r; + param[0].brush = &noBrush; if ( !pdev->cmd( QPaintDevice::PdcDrawRect, this, param ) || !hd) { setRasterOp( old_rop ); setPen( old_pen ); + setBrush( old_brush ); return; } }