1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

add safemalloc back

... but differently

client/mysqltest.cc:
  my_safe_print_str() don't append \n anymore
dbug/dbug.c:
  restore safemalloc as a part of dbug suite
dbug/user.r:
  restore 'S' flag documentation
include/my_dbug.h:
  restore safemalloc as a part of dbug suite
include/my_sys.h:
  move valgrind defines to a dedicated header
mysys/my_malloc.c:
  use new safemalloc
mysys/stacktrace.c:
  don't append \n. let the calller do it, if needed
sql/mysqld.cc:
  my_safe_print_str() don't append \n anymore
This commit is contained in:
Sergei Golubchik
2011-07-10 19:55:54 +02:00
parent 02b8232629
commit 172f5e28ba
12 changed files with 442 additions and 70 deletions

View File

@ -117,12 +117,8 @@ static int safe_print_str(const char *addr, int max_len)
break;
}
/* Output a new line if something was printed. */
if (total != (size_t) max_len)
fputc('\n', stderr);
if (nbytes == -1)
fprintf(stderr, "Can't read from address %p: %m.\n", addr);
fprintf(stderr, "Can't read from address %p: %m.", addr);
close(fd);
@ -144,13 +140,12 @@ void my_safe_print_str(const char* val, int max_len)
if (!PTR_SANE(val))
{
fprintf(stderr, "is an invalid pointer\n");
fprintf(stderr, "is an invalid pointer");
return;
}
for (; max_len && PTR_SANE(val) && *val; --max_len)
fputc(*val++, stderr);
fputc('\n', stderr);
}
#if defined(HAVE_PRINTSTACK)
@ -704,11 +699,11 @@ void my_safe_print_str(const char *val, int len)
{
__try
{
fprintf(stderr, "%.*s\n", len, val);
fprintf(stderr, "%.*s", len, val);
}
__except(EXCEPTION_EXECUTE_HANDLER)
{
fprintf(stderr, "is an invalid string pointer\n");
fprintf(stderr, "is an invalid string pointer");
}
}
#endif /*__WIN__*/