From 3cbd3d196dbcb6045291da9d570a80c319c2511f Mon Sep 17 00:00:00 2001 From: Devine Lu Linvega Date: Fri, 10 May 2024 09:45:58 -0700 Subject: [PATCH] Faster parse frag --- src/modal.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/modal.c b/src/modal.c index bdb77be..8c21e5c 100644 --- a/src/modal.c +++ b/src/modal.c @@ -228,10 +228,12 @@ parse_frag(char **side, char *s) if(c == ')' || (c == '<' || c == '>')) *side = ∅ else { - int wrapped; - *side = dict_, cap = walk(s), wrapped = c == '('; - if(wrapped) s++, cap--; - dict_ = copy(s, dict_, cap - s), s = cap + wrapped, *dict_++ = 0; + cap = walk(s), *side = dict_; + if(c == '(') + dict_ = copy(s + 1, dict_, cap - s - 2); + else + dict_ = copy(s, dict_, cap - s); + s = cap, *dict_++ = 0; } return s; }