[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
indent-2.2.13 does not set a locale
From: |
Petr Pisar |
Subject: |
indent-2.2.13 does not set a locale |
Date: |
Wed, 12 Apr 2023 12:21:13 +0200 |
I noticed that indent-2.2.13 stopped printing localized messages:
$ strace -e file ./src/indent --version
execve("./src/indent", ["./src/indent", "--version"], 0x7ffcc7072328 /* 20
vars */) = 0
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or
directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=27589, ...},
AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2633640, ...},
AT_EMPTY_PATH) = 0
openat(AT_FDCWD, ".indent.pro", O_RDONLY) = -1 ENOENT (No such file or
directory)
openat(AT_FDCWD, "/home/test/.indent.pro", O_RDONLY) = -1 ENOENT (No such
file or directory)
newfstatat(1, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...},
AT_EMPTY_PATH) = 0
GNU indent 2.2.13
+++ exited with 64 +++
That's because setlocale() is not called in src/indent.c:
#if defined (HAVE_SETLOCALE)
setlocale(LC_ALL, "");
#endif
because HAVE_SETLOCALE is not defined in config.h.
It seems that configure.ac ported to autoconf-2.71
(AC_CHECK_INCLUDES_DEFAULT?) stopped checking for setlocale() and defining the
macro. Actually diffing config.h between 2.2.12 and 2.2.13, both generated
with the same autoconf, shows plenty of removed macros. So HAVE_SETLOCALE
might be not the only missing feature.
-- Petr
signature.asc
Description: PGP signature
- indent-2.2.13 does not set a locale,
Petr Pisar <=