From 50cb4b00a29d36d99bb36be9b15c78ef5da14305 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 16 May 2011 14:10:36 +0100 Subject: [PATCH] Fix test for error_one_per_line mode in error (cherry picked from commit 15cc7dd182a6be79cbb01a5de4f13e958717bd69) --- ChangeLog | 5 +++++ misc/error.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0609c9183aa..1dbb1767551 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2011-05-16 Ulrich Drepper + [BZ #12766] + * misc/error.c (error_at_line): Ensure file_name and old_file_name + point to strings before performing equality test for error_one_per_line + mode. + [BZ #11697] * login/programs/pt_chown.c (do_pt_chown): Always call chown. diff --git a/misc/error.c b/misc/error.c index 85d1cffbf93..9a73a61c74c 100644 --- a/misc/error.c +++ b/misc/error.c @@ -1,5 +1,5 @@ /* Error handler for noninteractive utilities - Copyright (C) 1990-1998, 2000-2005, 2006 Free Software Foundation, Inc. + Copyright (C) 1990-1998, 2000-2006, 2011 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -272,7 +272,9 @@ error_at_line (int status, int errnum, const char *file_name, if (old_line_number == line_number && (file_name == old_file_name - || strcmp (old_file_name, file_name) == 0)) + || (old_file_name != NULL + && file_name != NULL + && strcmp (old_file_name, file_name) == 0))) /* Simply return and print nothing. */ return; -- 2.47.2