Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: caps strings



2009/3/3 Peter Stephenson <pws@xxxxxxx>:
> This should fix string arguments to functions in the caps module as
> noticed by Mikael.  It looks like all the returned strings are output
> directly by library calls so aren't affected.
>
> Index: Src/Modules/cap.c
> ===================================================================
> RCS file: /cvsroot/zsh/zsh/Src/Modules/cap.c,v
> retrieving revision 1.7
> diff -u -r1.7 cap.c
> --- Src/Modules/cap.c   6 Jul 2007 21:52:40 -0000       1.7
> +++ Src/Modules/cap.c   3 Mar 2009 17:39:34 -0000
> @@ -38,6 +38,7 @@
>     int ret = 0;
>     cap_t caps;
>     if(*argv) {
> +       unmetafy(*argv, NULL);
>        caps = cap_from_text(*argv);
>        if(!caps) {
>            zwarnnam(nam, "invalid capability string");
> @@ -90,6 +91,7 @@
>     cap_t caps;
>     int ret = 0;
>
> +    unmetafy(*argv, NULL);
>     caps = cap_from_text(*argv++);
>     if(!caps) {
>        zwarnnam(nam, "invalid capability string");
> @@ -97,6 +99,7 @@
>     }
>
>     do {
> +       unmetafy(*argv, NULL);
>        if(cap_set_file(*argv, caps)) {
>            zwarnnam(nam, "%s: %e", *argv, errno);
>            ret = 1;

I think the two zwarnnam calls with *argv needs them to be
re-metafy()ed. When i didn't do that in attr.c, I got output like
myutf8file\M-p.

-- 
Mikael Magnusson



Messages sorted by: Reverse Date, Date, Thread, Author