ref: 9ad775c1e0f25faa06a758fc4efd1a4890b84d44
parent: 4cc627c537ef90257049bb57d8802d937ad9c6d0
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Mon Jan 4 13:33:06 EST 2016
libmp: mistake in strtomp()
--- a/sys/src/libmp/port/strtomp.c
+++ b/sys/src/libmp/port/strtomp.c
@@ -199,18 +199,19 @@
}
if(base == 0){- if(*a == '0'){- a++;
- if(*a == 'x' || *a == 'X') {- a++;
+ base = 10;
+ if(a[0] == '0'){+ if(a[1] == 'x' || a[1] == 'X') {+ a += 2;
base = 16;
- } else if(*a == 'b' || *a == 'B') {- a++;
+ } else if(a[1] == 'b' || a[1] == 'B') {+ a += 2;
base = 2;
- } else
+ } else if(a[1] >= '0' && a[1] <= '7') {+ a++;
base = 8;
- } else
- base = 10;
+ }
+ }
}
switch(base){--
⑨