Fix some bad code in mysqltest.c and mysql-test-run.pl which could cause segfault / wrong LD_LIBRARY_PATH settings.

client/mysqltest.c:
  Remove vsnprintf() and DBUG_PRINT from die() function, as it's not portable to Windows, and it's not allowed to call vsnprintf() and then vfprintf() with the same args.
  
  Can't just print the buffer here, because the buffer is a fixed size.  If the message is longer than will fit int he buffer, it would get truncated on Unix, and the full thing would be printed on Windows.  This DBUG_PRINT isn't important enough for this hassle, so just get rid of it.
mysql-test/mysql-test-run.pl:
  Remove bogus quoting of $ENV{LD_LIBRARY_PATH} and $ENV{DYLD_LIBRARY_PATH} in environment_setup().
This commit is contained in:
unknown 2006-10-11 00:03:21 -06:00
parent 46a3e809fc
commit da0b4e9743
2 changed files with 2 additions and 9 deletions

View file

@ -727,13 +727,6 @@ void die(const char *fmt, ...)
va_start(args, fmt);
if (fmt)
{
#ifdef DBUG_ON
#ifndef __WIN__
char buff[256];
vsnprintf(buff, sizeof(buff), fmt, args);
DBUG_PRINT("error", ("%s", buff));
#endif
#endif
fprintf(stderr, "mysqltest: ");
if (cur_file && cur_file != file_stack)
fprintf(stderr, "In included file \"%s\": ",

View file

@ -1505,11 +1505,11 @@ sub environment_setup () {
}
$ENV{'LD_LIBRARY_PATH'}= join(":", @ld_library_paths,
split(':', qw($ENV{'LD_LIBRARY_PATH'})));
split(':', $ENV{'LD_LIBRARY_PATH'}));
mtr_debug("LD_LIBRARY_PATH: $ENV{'LD_LIBRARY_PATH'}");
$ENV{'DYLD_LIBRARY_PATH'}= join(":", @ld_library_paths,
split(':', qw($ENV{'DYLD_LIBRARY_PATH'})));
split(':', $ENV{'DYLD_LIBRARY_PATH'}));
mtr_debug("DYLD_LIBRARY_PATH: $ENV{'DYLD_LIBRARY_PATH'}");