2004-09-09  Ulrich Drepper  <drepper@redhat.com>

	* malloc/hooks.c (top_check): Print top chunk corruption as normal
	error message.

	* malloc/malloc.c (malloc_printerr): Don't make informational
	message look like error message.
This commit is contained in:
Ulrich Drepper 2004-09-09 21:10:29 +00:00
parent 14abadc8bf
commit a962d7dc18
3 changed files with 23 additions and 8 deletions

View File

@ -1,3 +1,11 @@
2004-09-09 Ulrich Drepper <drepper@redhat.com>
* malloc/hooks.c (top_check): Print top chunk corruption as normal
error message.
* malloc/malloc.c (malloc_printerr): Don't make informational
message look like error message.
2004-09-09 Andreas Jaeger <aj@suse.de>
* nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.

View File

@ -216,7 +216,7 @@ top_check()
if((char*)t + chunksize(t) == mp_.sbrk_base + main_arena.system_mem ||
t == initial_top(&main_arena)) return 0;
malloc_printerr (check_action | 4, "malloc: top chunk is corrupt", NULL);
malloc_printerr (check_action, "malloc: top chunk is corrupt", t);
/* Try to set up a new top chunk. */
brk = MORECORE(0);

View File

@ -5453,13 +5453,20 @@ malloc_printerr(int action, const char *str, void *ptr)
}
struct iovec iov[3];
iov[0].iov_base = (char *) "*** glibc detected *** ";
iov[0].iov_len = strlen (iov[0].iov_base);
iov[1].iov_base = (char *) str;
iov[1].iov_len = strlen (str);
iov[2].iov_base = cp;
iov[2].iov_len = &buf[sizeof (buf) - 1] - cp;
TEMP_FAILURE_RETRY (__writev (STDERR_FILENO, iov, 3));
int n = 0;
if ((action & 4) == 0)
{
iov[0].iov_base = (char *) "*** glibc detected *** ";
iov[0].iov_len = strlen (iov[0].iov_base);
++n;
}
iov[n].iov_base = (char *) str;
iov[n].iov_len = strlen (str);
++n;
iov[n].iov_base = cp;
iov[n].iov_len = &buf[sizeof (buf) - 1] - cp;
++n;
TEMP_FAILURE_RETRY (__writev (STDERR_FILENO, iov, n));
}
if (action & 2)
abort ();