[gimp] libgimpconfig: fix negative float parsing



commit b8505a4eaccb840678a31b6e0b84900af3343770
Author: Ell <ell_se yahoo com>
Date:   Sat May 27 15:48:51 2017 -0400

    libgimpconfig: fix negative float parsing

 libgimpconfig/gimpscanner.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/libgimpconfig/gimpscanner.c b/libgimpconfig/gimpscanner.c
index 877ba1c..490a76a 100644
--- a/libgimpconfig/gimpscanner.c
+++ b/libgimpconfig/gimpscanner.c
@@ -559,12 +559,23 @@ gboolean
 gimp_scanner_parse_float (GScanner *scanner,
                           gdouble  *dest)
 {
+  gboolean negate = FALSE;
+
+  if (g_scanner_peek_next_token (scanner) == '-')
+    {
+      negate = TRUE;
+      g_scanner_get_next_token (scanner);
+    }
+
   if (g_scanner_peek_next_token (scanner) != G_TOKEN_FLOAT)
     return FALSE;
 
   g_scanner_get_next_token (scanner);
 
-  *dest = scanner->value.v_float;
+  if (negate)
+    *dest = -scanner->value.v_float;
+  else
+    *dest = scanner->value.v_float;
 
   return TRUE;
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]