blob: d8e32c40e7e58fd10f4f17bc1e64e592ce27d3d4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
--- busybox-1.3.1/util-linux/fdisk.c.orig 2007-06-06 21:18:45.000000000 -0500
+++ busybox-1.3.1/util-linux/fdisk.c 2007-06-06 21:17:20.000000000 -0500
@@ -331,13 +331,16 @@
read_hex(const struct systypes *sys)
{
unsigned long v;
+ char *e;
while (1) {
read_nonempty(_("Hex code (type L to list codes): "));
if (*line_ptr == 'l' || *line_ptr == 'L') {
list_types(sys);
continue;
}
- v = bb_strtoul(line_ptr, NULL, 16);
+ v = bb_strtoul(line_ptr, &e, 16);
+ /* Clear out EINVAL code if it's because of the trailing \n */
+ if ((errno == EINVAL) && (*e == '\n')) errno = 0;
if (errno || v > 0xff) continue;
return v;
}
|