[Qgis-developer] Qt5 rounding issue spotted in the wild

Nyall Dawson nyall.dawson at gmail.com
Mon Sep 5 01:54:58 PDT 2016


On 5 September 2016 at 18:35, Matthias Kuhn <matthias at opengis.ch> wrote:
> 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
>

Thanks Matthias!

I was planning on doing that too but my Qt account seems broken - I
can't login and can't reset it... sigh.

Nyall

> 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
>>
> _______________________________________________
> 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