# HG changeset patch # User Jim Meyering # Date 913007647 0 # Node ID db3dc1c514e181dfccac08c99aca8c6ac112fd97 # Parent 38fd8f5d359d0fbbffe3575c474c7996a7aa6198 (rpmatch) [!ENABLE_NLS]: Hard-code tests to use `^[yY]' and `^[nN]'. From Karl Heuer. diff --git a/lib/rpmatch.c b/lib/rpmatch.c --- a/lib/rpmatch.c +++ b/lib/rpmatch.c @@ -29,15 +29,11 @@ # endif #endif -#include -#include - #if ENABLE_NLS +# include +# include # include # define _(Text) gettext (Text) -#else -# define _(Text) Text -#endif static int try (const char *response, const char *pattern, const int match, const int nomatch, const char **lastp, regex_t *re) @@ -60,11 +56,13 @@ /* See if the regular expression matches RESPONSE. */ return regexec (re, response, 0, NULL, 0) == 0 ? match : nomatch; } +#endif int rpmatch (const char *response) { +#if ENABLE_NLS /* Match against one of the response patterns, compiling the pattern first if necessary. */ @@ -77,4 +75,9 @@ &yesexpr, &yesre)) ? result : try (response, _("^[nN]"), 0, -1, &noexpr, &nore)); +#else + /* Test against "^[yY]" and "^[nN]", hardcoded to avoid requiring regex */ + return (*response == 'y' || *response == 'Y' ? 1 + : *response == 'n' || *response == 'N' ? 0 : -1); +#endif }