From fdf235ec2de459bf6a48e3bd06509bf6ddb1bd51 Mon Sep 17 00:00:00 2001 From: Leah Neukirchen Date: Mon, 9 Oct 2017 16:11:22 +0200 Subject: small cleanup --- xe.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/xe.c b/xe.c index 040925c..109e161 100644 --- a/xe.c +++ b/xe.c @@ -393,6 +393,14 @@ perc(char *pat, char *str, int lvl) if (!*str || *str == '/') return 0; return perc(pat+1, str+1, lvl); + case '/': + if (*str != '/') + return 0; + while (*pat == '/') + pat++; + while (*str == '/') + str++; + return perc(pat, str, lvl); case '*': pat++; if (*pat == '*') { // any substring @@ -446,6 +454,7 @@ perc(char *pat, char *str, int lvl) while (*pat++ != '}') { if (!e) e = perc(pat, str, lvl+1); + // skip to next , or } for (l = 0; *pat && !(l == 0 && (*pat == ',' || *pat == '}')); pat++) @@ -458,14 +467,6 @@ perc(char *pat, char *str, int lvl) pat++; } return e ? perc(pat, e, lvl) : 0; - case '/': - if (*str != '/') - return 0; - while (*pat == '/') - pat++; - while (*str == '/') - str++; - return perc(pat, str, lvl); case ',': case '}': if (lvl > 0) -- cgit 1.4.1