mirror of
https://github.com/mirror/make.git
synced 2026-08-09 17:38:47 +00:00
Get error messages in the C locale for comparision with make output.
Fixes Savannah bug #35764.
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
2012-09-09 Paul Smith <psmith@gnu.org>
|
||||
|
||||
* scripts/functions/file: Get errors in the C locale, not the
|
||||
current locale. Fixes Savannah bug #35764.
|
||||
|
||||
* scripts/features/escape: Check that backslashes before
|
||||
non-special characters are not removed.
|
||||
|
||||
|
||||
@@ -35,9 +35,16 @@ touch('file.out');
|
||||
chmod(0444, 'file.out');
|
||||
|
||||
# Find the error that will be printed
|
||||
# This seems complicated, but we need the message from the C locale
|
||||
my $loc = undef;
|
||||
if ($has_POSIX) {
|
||||
$loc = POSIX::setlocale(POSIX::LC_MESSAGES);
|
||||
POSIX::setlocale(POSIX::LC_MESSAGES, 'C');
|
||||
}
|
||||
my $e;
|
||||
open(my $F, '>', 'file.out') and die "Opened read-only file!\n";
|
||||
$e = "$!";
|
||||
$loc and POSIX::setlocale(POSIX::LC_MESSAGES, $loc);
|
||||
|
||||
run_make_test(q!
|
||||
define A
|
||||
|
||||
Reference in New Issue
Block a user