[Qgis-developer] Qt5 rounding issue spotted in the wild
Matthias Kuhn
matthias at opengis.ch
Mon Sep 5 01:35:19 PDT 2016
Hi
I asked on Qt bug tracker
https://bugreports.qt.io/browse/QTBUG-47192?focusedCommentId=330334&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-330334
Matthias
On 09/05/2016 08:23 AM, Mathieu Pellerin wrote:
> Denis,
>
> There's an additional way to mitigate this:
> 1/ requesting Qt devs to apply the patch fixing this issue (
> http://code.qt.io/cgit/qt/qtbase.git/patch/src/corelib/tools/qlocale.h?id=726fed0d67013cbfac7921d3d4613ca83406fb0f
> ) onto Qt 5.6, which after all is a LTS version;
> 2/ requesting distributions - such as Ubuntu and Fedora - to apply the
> patch onto the packages maintained and offered through their repositories.
>
> Regarding #2, I've filed such a request earlier today:
> https://bugs.launchpad.net/ubuntu/+source/qtbase-opensource-src/+bug/1620173
>
> It's a shame we can't override the QVariant conversion to QString with
> some code of our own to patch the issue on Qt5 < 5.7.
>
> Math
>
> On Mon, Sep 5, 2016 at 12:23 PM, Denis Rouzaud <denis.rouzaud at gmail.com
> <mailto:denis.rouzaud at gmail.com>> wrote:
>
> Hi Mathieu,
>
> For reference, here is the Qt issue
> https://bugreports.qt.io/browse/QTBUG-47192
> <https://bugreports.qt.io/browse/QTBUG-47192>
>
> It's the conversion from QVariant to QString which is broken.
>
> There are several ways to deal with this:
> * fix this for some versions of Qt (no idea how)
> * require Qt 5.7+
> * ship like this with a warning notice
>
> The discussion already arised and the latter seems to be prefered:
> https://lists.osgeo.org/pipermail/qgis-developer/2016-August/044127.html
> <https://lists.osgeo.org/pipermail/qgis-developer/2016-August/044127.html>
>
> Denis
>
>
>
> On 09/05/2016 04:39 AM, Mathieu Pellerin wrote:
>> Greetings,
>>
>> While testing QGIS compiled against Qt5 5.6.1 (the version that
>> will be offered in Ubuntu's next release in a month or so), I ran
>> into a rounding issue, whereas the round() expression engine
>> function simply fails to round values to the stated number of
>> decimals.
>>
>> As seen in this screenshot[1], using this expression "round(
>> 0.972743..., 2 )" to round the double value to two decimals
>> returns 0.96999999999997.
>>
>> Nyall says the issue has been fixed in Qt5 5.7. For Qt5 < 5.7, is
>> there a contingency plan for this problem? Could we get
>> distributions to include a fix in their 5.6.x packages (if that’s
>> possible)?
>>
>> Math
>>
>> [1] http://i.imgur.com/7v2Z24Z.png
>>
>>
>>
>> _______________________________________________
>> Qgis-developer mailing list
>> Qgis-developer at lists.osgeo.org <mailto:Qgis-developer at lists.osgeo.org>
>> List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer
>> <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>
>
>
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
More information about the Qgis-developer
mailing list