OSDN Git Service

Upgrade to mksh 50e.
[android-x86/external-mksh.git] / src / var.c
index 9f05ec1..452b6e2 100644 (file)
--- a/src/var.c
+++ b/src/var.c
@@ -2,7 +2,7 @@
 
 /*-
  * Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
- *              2011, 2012, 2013, 2014
+ *              2011, 2012, 2013, 2014, 2015
  *     Thorsten Glaser <tg@mirbsd.org>
  *
  * Provided that these terms and disclaimer and all copyright notices
@@ -28,7 +28,7 @@
 #include <sys/sysctl.h>
 #endif
 
-__RCSID("$MirOS: src/bin/mksh/var.c,v 1.183 2014/10/04 11:47:19 tg Exp $");
+__RCSID("$MirOS: src/bin/mksh/var.c,v 1.183.2.2 2015/03/01 15:43:07 tg Exp $");
 
 /*-
  * Variables
@@ -308,7 +308,6 @@ local(const char *n, bool copy)
         * dereference namerefs; must come first
         */
        n = array_index_calc(n, &array, &val);
-       mkssert(n != NULL);
        h = hash(n);
        if (!ksh_isalphx(*n)) {
                vp = &vtemp;
@@ -679,8 +678,6 @@ exportprep(struct tbl *vp, const char *val)
        char *op = (vp->flag&ALLOC) ? vp->val.s : NULL;
        size_t namelen, vallen;
 
-       mkssert(val != NULL);
-
        namelen = strlen(vp->name);
        vallen = strlen(val) + 1;
 
@@ -1114,6 +1111,8 @@ makenv(void)
                                }
                                XPput(denv, vp->val.s);
                        }
+               if (l->flags & BF_STOPENV)
+                       break;
        }
        XPput(denv, NULL);
        return ((char **)XPclose(denv));