1 Index: busybox-1.4.2/shell/ash.c
2 ===================================================================
3 --- busybox-1.4.2.orig/shell/ash.c 2007-06-04 13:21:32.248074216 +0200
4 +++ busybox-1.4.2/shell/ash.c 2007-06-04 13:21:34.000807760 +0200
5 @@ -12237,9 +12237,18 @@
8 int flag = argv[0][0] == 'r'? VREADONLY : VEXPORT;
12 - notp = nextopt("p") - 'p';
13 + while ((notp = nextopt("np"))) {
22 if (notp && ((name = *(aptr = argptr)))) {
24 if ((p = strchr(name, '=')) != NULL) {
25 @@ -12247,10 +12256,11 @@
27 if ((vp = *findvar(hashvar(name), name))) {
33 - setvar(name, p, flag);
34 + setvar(name, p, flag & mask);
35 } while ((name = *++aptr) != NULL);
37 showvars(argv[0], flag, 0);