1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-26 18:01:03 +02:00

27357: fix compiler warnings in attr module

27358: fix error if $0 altered in sourced file
This commit is contained in:
Peter Stephenson 2009-11-06 22:38:47 +00:00
parent d6c4e4c692
commit f30af94885
3 changed files with 16 additions and 7 deletions

View file

@ -1,3 +1,10 @@
2009-11-06 Peter Stephenson <p.w.stephenson@ntlworld.com>
* 27358: Src/builtin.c: error if $0 was altered within
a sourced file.
* 27357: Src/Modules/attr.c: fix compiler warnings
2009-11-06 Peter Stephenson <pws@csr.com> 2009-11-06 Peter Stephenson <pws@csr.com>
* Frank Terbeck: 27353: Functions/VCS_Info/VCS_INFO_bydir_detect, * Frank Terbeck: 27353: Functions/VCS_Info/VCS_INFO_bydir_detect,
@ -12301,5 +12308,5 @@
***************************************************** *****************************************************
* This is used by the shell to define $ZSH_PATCHLEVEL * This is used by the shell to define $ZSH_PATCHLEVEL
* $Revision: 1.4803 $ * $Revision: 1.4804 $
***************************************************** *****************************************************

View file

@ -42,7 +42,7 @@ xgetxattr(const char *path, const char *name, void *value, size_t size, int syml
switch (symlink) { switch (symlink) {
case 0: case 0:
return getxattr(path, name, value, size); return getxattr(path, name, value, size);
case 1: default:
return lgetxattr(path, name, value, size); return lgetxattr(path, name, value, size);
} }
#endif #endif
@ -57,7 +57,7 @@ xlistxattr(const char *path, char *list, size_t size, int symlink)
switch (symlink) { switch (symlink) {
case 0: case 0:
return listxattr(path, list, size); return listxattr(path, list, size);
case 1: default:
return llistxattr(path, list, size); return llistxattr(path, list, size);
} }
#endif #endif
@ -73,7 +73,7 @@ xsetxattr(const char *path, const char *name, const void *value,
switch (symlink) { switch (symlink) {
case 0: case 0:
return setxattr(path, name, value, size, flags); return setxattr(path, name, value, size, flags);
case 1: default:
return lsetxattr(path, name, value, size, flags); return lsetxattr(path, name, value, size, flags);
} }
#endif #endif
@ -88,7 +88,7 @@ xremovexattr(const char *path, const char *name, int symlink)
switch (symlink) { switch (symlink) {
case 0: case 0:
return removexattr(path, name); return removexattr(path, name);
case 1: default:
return lremovexattr(path, name); return lremovexattr(path, name);
} }
#endif #endif

View file

@ -4747,7 +4747,7 @@ bin_dot(char *name, char **argv, UNUSED(Options ops), UNUSED(int func))
enam = arg0 = ztrdup(*argv); enam = arg0 = ztrdup(*argv);
if (isset(FUNCTIONARGZERO)) { if (isset(FUNCTIONARGZERO)) {
old0 = argzero; old0 = argzero;
argzero = arg0; argzero = ztrdup(arg0);
} }
s = unmeta(enam); s = unmeta(enam);
errno = ENOENT; errno = ENOENT;
@ -4802,8 +4802,10 @@ bin_dot(char *name, char **argv, UNUSED(Options ops), UNUSED(int func))
if (ret == SOURCE_NOT_FOUND) if (ret == SOURCE_NOT_FOUND)
zwarnnam(name, "%e: %s", errno, enam); zwarnnam(name, "%e: %s", errno, enam);
zsfree(arg0); zsfree(arg0);
if (old0) if (old0) {
zsfree(argzero);
argzero = old0; argzero = old0;
}
return ret == SOURCE_OK ? lastval : 128 - ret; return ret == SOURCE_OK ? lastval : 128 - ret;
} }