[blitter] Initialize m_devicePixelRatio to fix crash
authorLucile Quirion <lucile.quirion@savoirfairelinux.com>
Thu, 1 May 2014 17:50:15 +0000 (13:50 -0400)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Sun, 4 May 2014 04:03:25 +0000 (06:03 +0200)
commita5bba1f9da376840d92f2008d8ba8433753b1847
treec782e50d86301a882eb51269c8348c930d571192
parent8e48707cea01f5c456cd554d2628d2b4f59ca1fc
[blitter] Initialize m_devicePixelRatio to fix crash

When using directfb platform the drawing of some widgets (e.g. Toolbar)
would crash the application.

Pixmap device pixel ratio can be used in QCommonStyle::drawControl() as
a denominator to calculate pixmap width or size. The drawing of some
widgets (e.g. Toolbar) would fail the assertion of a non-zero
denominator.

This commit initializes the device pixel ratio when generating
BlitterClass pixmaps and makes QBlittablePlatformPixmap::metric(
PdmDevicePixelRatio) return devicePixelRatio() instead of 1.

Task-number: QTBUG-38709
Change-Id: Ia8b96c5341b5ac1297c483deed1c695846398b88
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
src/gui/image/qpixmap_blitter.cpp