From: Junio C Hamano Date: Wed, 16 Feb 2022 18:49:52 GMT Subject: Re: [PATCH v3 5/5] sparse-checkout: reject arguments in cone-mode that look like patterns Message-ID: In-Reply-To: Victoria Dye writes: >> I considered strtok, but strtok & strtok_r are documented as modifying >> their argument. Perhaps they don't modify the argument if they don't >> find any of the listed tokens, but I didn't want to rely on that since >> I found no guarantees in the documentation. > > Maybe `strpbrk` would work? Unless I'm misunderstanding, it should > consolidate the condition to one line without potentially modifying the > arguments. E.g.: > > if (!strpbrk(argv[i], "*?[]")) > die(_("specify directories rather than patterns. If your directory really has any of '*?[]' in it, pass --skip-checks")); Yes, either that or strspn() are good match for the problem (I suspect Ævar actually meant strspn() not strtok() in the first place, though ;-).