]> git.saurik.com Git - wxWidgets.git/commitdiff
fixed last commit to not break ToString() for negative numbers but still fix it for...
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 28 Feb 2005 00:13:38 +0000 (00:13 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 28 Feb 2005 00:13:38 +0000 (00:13 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/common/longlong.cpp

index aa40465563c3c8b3e3972acc09dcbb0ff25c5977..e3d6a5658623702d4e770d20657450224e4c1004 100644 (file)
@@ -1092,24 +1092,24 @@ void *wxULongLongWx::asArray(void) const
                                                                      \
         name ll = *this;                                             \
                                                                      \
-        bool neg;                                                    \
-        if ( ll < 0 )                                                \
+        bool neg = ll < 0;                                           \
+        if ( neg )                                                   \
         {                                                            \
-            ll.Negate();                                             \
-            neg = true;                                              \
+            while ( ll != 0 )                                        \
+            {                                                        \
+                long digit = (ll % 10).ToLong();                     \
+                result.Prepend((wxChar)(_T('0') - digit));           \
+                ll /= 10;                                            \
+            }                                                        \
         }                                                            \
         else                                                         \
         {                                                            \
-            neg = false;                                             \
-        }                                                            \
-                                                                     \
-        while ( ll != 0 )                                            \
-        {                                                            \
-            long digit = (ll % 10).ToLong();                         \
-            if ( neg )                                               \
-                digit = -digit;                                      \
-            result.Prepend((wxChar)(_T('0') + digit));               \
-            ll /= 10;                                                \
+            while ( ll != 0 )                                        \
+            {                                                        \
+                long digit = (ll % 10).ToLong();                     \
+                result.Prepend((wxChar)(_T('0') + digit));           \
+                ll /= 10;                                            \
+            }                                                        \
         }                                                            \
                                                                      \
         if ( result.empty() )                                        \