diff --git a/src/combine_path.h b/src/combine_path.h index 1df024cb5e44c8d5b1443ca86f1ba41a2ed14e52..f0615f33c154aa669b3871250ef00c183e29aaef 100644 --- a/src/combine_path.h +++ b/src/combine_path.h @@ -85,7 +85,7 @@ static void APPEND_PATH(struct string_builder *s, if(s->s->len && !IS_SEP(LAST_PUSHED())) PUSH('/'); - while(s->s->len==2) + if(s->s->len==2) { PCHARP to=MKPCHARP_STR(s->s); if(INDEX_PCHARP(to, 0) == '.') @@ -163,7 +163,7 @@ static void APPEND_PATH(struct string_builder *s, if(from>=len) break; PUSH(INDEX_PCHARP(path, from++)); } - if(s->s->len && + if((s->s->len > 1) && !IS_SEP(INDEX_PCHARP(path, from-1)) && IS_SEP(LAST_PUSHED())) s->s->len--;