ref: 17da0b9dd1e7dc8f6b43eaa55c291a6ecbb00d69
parent: bc73cbac76e2d3820db734afdb4e0775f844cfa3
author: cinap_lenrek <[email protected]>
date: Sat Aug 27 23:44:07 EDT 2016
strtomp: update the returned char* even if there were no characters parsed (from, fix mpbits() call in octal code
--- a/libmp/strtomp.c
+++ b/libmp/strtomp.c
@@ -82,7 +82,7 @@
if(tab.t10[*(uchar*)p] >= 8)
break;
- mpbits(b, (a-p)*3);
+ mpbits(b, (p-a)*3);
b->top = 0;
next = p;
@@ -240,12 +240,12 @@
return nil;
}
+ if(pp != nil)
+ *pp = e;
+
// if no characters parsed, there wasn't a number to convert
if(e == a)
return nil;
-
- if(pp != nil)
- *pp = e;
b->sign = sign;
return mpnorm(b);