Original patch from: mpf_set_str.c.4.diff

-= BEGIN original header =-
-= END original header =-

diff -durN gmp-4.2.4.orig/mpf/set_str.c gmp-4.2.4/mpf/set_str.c
--- gmp-4.2.4.orig/mpf/set_str.c	2008-08-25 16:11:37.000000000 +0200
+++ gmp-4.2.4/mpf/set_str.c	2009-03-08 18:36:16.000000000 +0100
@@ -137,7 +137,12 @@
       c = (unsigned char) *++str;
     }
 
+  /* Default base to decimal.  */
+  if (base == 0)
+    base = 10;
+
   exp_base = base;
+
   if (base < 0)
     {
       exp_base = 10;
@@ -165,10 +170,6 @@
 	return -1;
     }
 
-  /* Default base to decimal.  */
-  if (base == 0)
-    base = 10;
-
   /* Locate exponent part of the input.  Look from the right of the string,
      since the exponent is usually a lot shorter than the mantissa.  */
   expptr = NULL;
