diff options
Diffstat (limited to 'community/pdfgrep/no-locale.patch')
-rw-r--r-- | community/pdfgrep/no-locale.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/community/pdfgrep/no-locale.patch b/community/pdfgrep/no-locale.patch new file mode 100644 index 0000000000..d450055abe --- /dev/null +++ b/community/pdfgrep/no-locale.patch @@ -0,0 +1,31 @@ +Don't set locale explicitly. musl supports UTF-8 by default. + +With this change pdfgrep fails with: + + terminate called after throwing an instance of 'std::runtime_error' + what(): locale::facet::_S_create_c_locale name not valid + Aborted + +Unless LANG is set explicitly. + +Alternative solutions: + + * Use the "C" lang instead of the "" lang? + * Catch the error and ignore it? + +diff -upr pdfgrep-2.1.2.orig/src/pdfgrep.cc pdfgrep-2.1.2/src/pdfgrep.cc +--- pdfgrep-2.1.2.orig/src/pdfgrep.cc 2020-09-29 12:33:50.018014326 +0200 ++++ pdfgrep-2.1.2/src/pdfgrep.cc 2020-09-29 12:36:39.827698175 +0200 +@@ -457,10 +457,12 @@ int main(int argc, char** argv) + Options options; + init_colors(options.outconf.colors); + ++#if 0 + // Set locale to user-preference. If this locale is an UTF-8 locale, the + // regex-functions regcomp/regexec become unicode aware, which means + // e.g. that '.' will match a unicode character, not a single byte. + locale::global(locale("")); ++#endif + + enum re_engine_type { + RE_POSIX = 0, |