add addconf arg checking; fix bug found by argument checking. Reference: /n/sources/patch/applied/9loadaddconf Date: Sun Jan 20 20:24:36 CET 2008 Signed-off-by: quanstro@quanstro.net --- /sys/src/boot/pc/lib.h Sun Jan 20 20:23:35 2008 +++ /sys/src/boot/pc/lib.h Sun Jan 20 20:23:34 2008 @@ -53,6 +53,7 @@ extern int snprint(char*, int, char*, ...); extern int fmtinstall(int, int (*)(Fmt*)); +#pragma varargck argpos addconf 1 #pragma varargck argpos fmtprint 2 #pragma varargck argpos print 1 #pragma varargck argpos seprint 3 --- /sys/src/boot/pc/devsd.c Sun Jan 20 20:23:42 2008 +++ /sys/src/boot/pc/devsd.c Sun Jan 20 20:23:40 2008 @@ -462,7 +462,7 @@ addconf("%spart=", unit->name); for(i=1, pp=&unit->part[i]; inpart; i++, pp++) /* skip 0, which is "data" */ - addconf("%s%s %ld %ld", i==1 ? "" : "/", pp->name, + addconf("%s%s %lld %lld", i==1 ? "" : "/", pp->name, pp->start, pp->end); addconf("\n"); }