about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
Diffstat (limited to 'Src')
-rw-r--r--Src/Modules/attr.c8
-rw-r--r--Src/builtin.c6
2 files changed, 8 insertions, 6 deletions
diff --git a/Src/Modules/attr.c b/Src/Modules/attr.c
index 72348623a..2cdb522c1 100644
--- a/Src/Modules/attr.c
+++ b/Src/Modules/attr.c
@@ -42,7 +42,7 @@ xgetxattr(const char *path, const char *name, void *value, size_t size, int syml
     switch (symlink) {
     case 0:
         return getxattr(path, name, value, size);
-    case 1:
+    default:
         return lgetxattr(path, name, value, size);
     }
 #endif
@@ -57,7 +57,7 @@ xlistxattr(const char *path, char *list, size_t size, int symlink)
     switch (symlink) {
     case 0:
         return listxattr(path, list, size);
-    case 1:
+    default:
         return llistxattr(path, list, size);
     }
 #endif
@@ -73,7 +73,7 @@ xsetxattr(const char *path, const char *name, const void *value,
     switch (symlink) {
     case 0:
         return setxattr(path, name, value, size, flags);
-    case 1:
+    default:
         return lsetxattr(path, name, value, size, flags);
     }
 #endif
@@ -88,7 +88,7 @@ xremovexattr(const char *path, const char *name, int symlink)
     switch (symlink) {
     case 0:
         return removexattr(path, name);
-    case 1:
+    default:
         return lremovexattr(path, name);
     }
 #endif
diff --git a/Src/builtin.c b/Src/builtin.c
index f032230b6..47b201264 100644
--- a/Src/builtin.c
+++ b/Src/builtin.c
@@ -4747,7 +4747,7 @@ bin_dot(char *name, char **argv, UNUSED(Options ops), UNUSED(int func))
     enam = arg0 = ztrdup(*argv);
     if (isset(FUNCTIONARGZERO)) {
 	old0 = argzero;
-	argzero = arg0;
+	argzero = ztrdup(arg0);
     }
     s = unmeta(enam);
     errno = ENOENT;
@@ -4802,8 +4802,10 @@ bin_dot(char *name, char **argv, UNUSED(Options ops), UNUSED(int func))
     if (ret == SOURCE_NOT_FOUND)
 	zwarnnam(name, "%e: %s", errno, enam);
     zsfree(arg0);
-    if (old0)
+    if (old0) {
+	zsfree(argzero);
 	argzero = old0;
+    }
     return ret == SOURCE_OK ? lastval : 128 - ret;
 }