]> git.saurik.com Git - wxWidgets.git/commitdiff
When deciding whether to convert wxAny to 'long' or 'longlong' wxVariant, use wxINT32...
authorJaakko Salli <jaakko.salli@dnainternet.net>
Mon, 19 Apr 2010 14:25:41 +0000 (14:25 +0000)
committerJaakko Salli <jaakko.salli@dnainternet.net>
Mon, 19 Apr 2010 14:25:41 +0000 (14:25 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/common/any.cpp

index a50349800c9272c27fbe73ebca5a3ba1c4c4a644..69bb19c14361c8f100c7e801effbd1ecdf0d2ad8 100644 (file)
@@ -172,7 +172,10 @@ bool wxConvertAnyToVariant(const wxAny& any, wxVariant* variant)
         wxLongLong_t ll = 0;
         if ( any.GetAs(&ll) )
         {
         wxLongLong_t ll = 0;
         if ( any.GetAs(&ll) )
         {
-            if ( ll > LONG_MAX )
+            // NB: Do not use LONG_MAX here. Explicitly using 32-bit
+            //     integer constraint yields more consistent behavior across
+            //     builds.
+            if ( ll > wxINT32_MAX or ll < wxINT32_MIN )
                 *variant = wxLongLong(ll);
             else
                 *variant = (long) wxLongLong(ll).GetLo();
                 *variant = wxLongLong(ll);
             else
                 *variant = (long) wxLongLong(ll).GetLo();