[qgis] 02/13: Add patch from Peter Green to fix qreal vs double issues with qmin and qmax.
Bas Couwenberg
sebastic at xs4all.nl
Fri Feb 14 17:08:19 UTC 2014
This is an automated email from the git hooks/post-receive script.
sebastic-guest pushed a commit to branch master
in repository qgis.
commit 1a8fa5bce0d31d44e76a001f7e7a3e3a51659d16
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date: Sat Feb 8 05:33:07 2014 +0100
Add patch from Peter Green to fix qreal vs double issues with qmin and qmax.
---
debian/changelog | 1 +
debian/patches/fix-qreal-vs-double.patch | 45 ++++++++++++++++++++++++++++++++
debian/patches/series | 1 +
3 files changed, 47 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index ae13310..29caf40 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ qgis (2.0.1-2) UNRELEASED; urgency=low
[ Peter Michael Green ]
* Fix broken ARM patch by Konstantinos Margaritis.
+ * Fix qreal vs double issues with qmin and qmax.
-- Bas Couwenberg <sebastic at xs4all.nl> Fri, 31 Jan 2014 19:42:03 +0100
diff --git a/debian/patches/fix-qreal-vs-double.patch b/debian/patches/fix-qreal-vs-double.patch
new file mode 100644
index 0000000..aac8c00
--- /dev/null
+++ b/debian/patches/fix-qreal-vs-double.patch
@@ -0,0 +1,45 @@
+Description: Fix qreal vs double.
+ In qt4 on arm architectures qreal is defined as float while on other
+ architectures it is defined as double. This can cause problems if qreal
+ and double are carelessly mixed.
+ .
+ In this particular case the problem is that qMin/qMax are templates defined
+ to take two parameters of the same type. If two different types are passed
+ in then C++ can't resolve what type the template parameter should be and
+ bails out. The fix is simple, typecast one of the parameters so they
+ match.
+ .
+Author: Peter Michael Green <plugwash at debian.org>
+Bug-Debian: http://bugs.debian.org/737814
+
+--- a/src/app/gps/qwtpolar-1.0/qwt_polar_curve.cpp
++++ b/src/app/gps/qwtpolar-1.0/qwt_polar_curve.cpp
+@@ -433,7 +433,7 @@ void QwtPolarCurve::drawLines( QPainter
+
+ if ( !clipRect.isEmpty() )
+ {
+- double off = qCeil( qMax( 1.0, painter->pen().widthF() ) );
++ double off = qCeil( qMax((qreal)1.0,painter->pen().widthF() ) );
+ clipRect = clipRect.toRect().adjusted( -off, -off, off, off );
+ polyline = QwtClipper::clipPolygonF( clipRect, polyline );
+ }
+--- a/src/app/gps/qwtpolar-1.0/qwt_polar_layout.cpp
++++ b/src/app/gps/qwtpolar-1.0/qwt_polar_layout.cpp
+@@ -278,7 +278,7 @@ QRectF QwtPolarLayout::layoutLegend( Opt
+ // We don't allow vertical legends to take more than
+ // half of the available space.
+
+- dim = qMin( hint.width(), rect.width() * d_data->legendRatio );
++ dim = qMin( hint.width(), (qreal)(rect.width() * d_data->legendRatio) );
+
+ if ( !( options & IgnoreScrollbars ) )
+ {
+@@ -293,7 +293,7 @@ QRectF QwtPolarLayout::layoutLegend( Opt
+ }
+ else
+ {
+- dim = qMin( hint.height(), rect.height() * d_data->legendRatio );
++ dim = qMin( hint.height(), (qreal)(rect.height() * d_data->legendRatio) );
+ dim = qMax( dim, d_data->layoutData.legend.hScrollBarHeight );
+ }
+
diff --git a/debian/patches/series b/debian/patches/series
index f713d5a..6cd4cf0 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -26,3 +26,4 @@ remove-google-adsense.patch
python-env.patch
wms-c-don-t-crash-if-tile-matrix-set-isn-t-available.patch
use-local-icon.patch
+fix-qreal-vs-double.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/qgis.git
More information about the Pkg-grass-devel
mailing list