From dff1666b6c18ab9d508f613cdbf2eb7f7cf68592 Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Thu, 31 Dec 2009 15:13:33 +0000 Subject: [PATCH] BUGFIX: Fix possible crash when drawing piece downloaded/availability bars --- Changelog | 3 +++ src/downloadedpiecesbar.h | 13 +++++++------ src/pieceavailabilitybar.h | 13 +++++++------ 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/Changelog b/Changelog index f1e873ff0..7804eb8de 100644 --- a/Changelog +++ b/Changelog @@ -1,3 +1,6 @@ +* Unreleased - Christophe Dumez - v2.0.5 + - BUGFIX: Fix possible crash when drawing piece downloaded/availability bars + * Wed Dec 30 2009 - Christophe Dumez - v2.0.4 - BUGFIX: Fix PeerGuardian .p2b binary filter support - BUGFIX: Fix possible crash when closing a search engine tab diff --git a/src/downloadedpiecesbar.h b/src/downloadedpiecesbar.h index 8ab6b1a65..6f4788b66 100644 --- a/src/downloadedpiecesbar.h +++ b/src/downloadedpiecesbar.h @@ -55,13 +55,13 @@ public: void setProgress(bitfield pieces) { if(pieces.empty()) { // Empty bar - pixmap = QPixmap(1, 1); - QPainter painter(&pixmap); - painter.setPen(Qt::white); - painter.drawPoint(0,0); + QPixmap pix = QPixmap(1, 1); + pix.fill(); + pixmap = pix; } else { - pixmap = QPixmap(pieces.size(), 1); - QPainter painter(&pixmap); + QPixmap pix = QPixmap(pieces.size(), 1); + pix.fill(); + QPainter painter(&pix); for(uint i=0; i::iterator it; for(uint i=0; i < nb_pieces; ++i) { painter.setPen(getPieceColor(avail[i], average)); painter.drawPoint(i,0); } + pixmap = pix; } update(); return average;