diff options
author | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2015-09-29 19:06:43 +0100 |
---|---|---|
committer | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2015-09-29 19:47:21 +0100 |
commit | d07783628e935daab518509db123141ceb535a28 (patch) | |
tree | 3eab2a8ff3ce8630b0de3e16fef86ed3e4c0e6c1 /Src/zsh.h | |
parent | f9d7651c2554bb5db0373f63185ff358f795ab3c (diff) | |
download | zsh-d07783628e935daab518509db123141ceb535a28.tar.gz zsh-d07783628e935daab518509db123141ceb535a28.tar.xz zsh-d07783628e935daab518509db123141ceb535a28.zip |
36700: unmetafy early for parameter match
Diffstat (limited to 'Src/zsh.h')
-rw-r--r-- | Src/zsh.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Src/zsh.h b/Src/zsh.h index 32f2e0cb2..15fa5e417 100644 --- a/Src/zsh.h +++ b/Src/zsh.h @@ -480,6 +480,7 @@ typedef struct heap *Heap; typedef struct heapstack *Heapstack; typedef struct histent *Histent; typedef struct hookdef *Hookdef; +typedef struct imatchdata *Imatchdata; typedef struct jobfile *Jobfile; typedef struct job *Job; typedef struct linkedmod *Linkedmod; @@ -1593,6 +1594,31 @@ typedef struct zpc_disables_save *Zpc_disables_save; /* Range: token followed by the (possibly multibyte) start and end */ #define PP_RANGE 21 +/* + * Argument to get_match_ret() in glob.c + */ +struct imatchdata { + /* Metafied trial string */ + char *mstr; + /* Its length */ + int mlen; + /* Unmetafied string */ + char *ustr; + /* Its length */ + int ulen; + /* Flags (SUB_*) */ + int flags; + /* Replacement string (metafied) */ + char *replstr; + /* + * List of bits of matches to concatenate with replacement string. + * The data is a struct repldata. It is not used in cases like + * ${...//#foo/bar} even though SUB_GLOBAL is set, since the match + * is anchored. It goes on the heap. + */ + LinkList repllist; +}; + /* Globbing flags: lower 8 bits gives approx count */ #define GF_LCMATCHUC 0x0100 #define GF_IGNCASE 0x0200 |