Blame nfs-utils-1.1.1-xlog-valist.patch
|
|
51df58e |
commit 399cc3dad0cdfe8dca4a0ae9035a0554d7223eb2
|
|
|
51df58e |
Author: Steve Dickson <steved@dickson.boston.devel.redhat.com>
|
|
|
51df58e |
Date: Thu Jan 17 11:25:37 2008 -0500
|
|
|
51df58e |
|
|
|
51df58e |
Stop segfaults on amd64 during warnings messages by creating
|
|
|
51df58e |
a second va_list in xlog_backend() and then use that va_list
|
|
|
51df58e |
to print messages on stderr.
|
|
|
51df58e |
|
|
|
51df58e |
Signed-off-by: Steinar H. Gunderson <sesse@debian.org>
|
|
|
51df58e |
Signed-off-by: Steve Langasek <vorlon@debian.org>
|
|
|
51df58e |
Signed-off-by: Steve Dickson <steved@dickson.boston.devel.redhat.com>
|
|
|
51df58e |
|
|
|
51df58e |
diff -up nfs-utils-1.1.1/support/nfs/xlog.c.orig nfs-utils-1.1.1/support/nfs/xlog.c
|
|
|
51df58e |
--- nfs-utils-1.1.1/support/nfs/xlog.c.orig 2007-10-18 23:07:28.000000000 -0400
|
|
|
51df58e |
+++ nfs-utils-1.1.1/support/nfs/xlog.c 2008-01-22 14:13:36.000000000 -0500
|
|
|
51df58e |
@@ -133,9 +133,14 @@ xlog_enabled(int fac)
|
|
|
51df58e |
void
|
|
|
51df58e |
xlog_backend(int kind, const char *fmt, va_list args)
|
|
|
51df58e |
{
|
|
|
51df58e |
+ va_list args2;
|
|
|
51df58e |
+
|
|
|
51df58e |
if (!(kind & (L_ALL)) && !(logging && (kind & logmask)))
|
|
|
51df58e |
return;
|
|
|
51df58e |
|
|
|
51df58e |
+ if (log_stderr)
|
|
|
51df58e |
+ va_copy(args2, args);
|
|
|
51df58e |
+
|
|
|
51df58e |
if (log_syslog) {
|
|
|
51df58e |
switch (kind) {
|
|
|
51df58e |
case L_FATAL:
|
|
|
51df58e |
@@ -171,9 +176,9 @@ xlog_backend(int kind, const char *fmt,
|
|
|
51df58e |
#else
|
|
|
51df58e |
fprintf(stderr, "%s: ", log_name);
|
|
|
51df58e |
#endif
|
|
|
51df58e |
-
|
|
|
51df58e |
- vfprintf(stderr, fmt, args);
|
|
|
51df58e |
+ vfprintf(stderr, fmt, args2);
|
|
|
51df58e |
fprintf(stderr, "\n");
|
|
|
51df58e |
+ va_end(args2);
|
|
|
51df58e |
}
|
|
|
51df58e |
|
|
|
51df58e |
if (kind == L_FATAL)
|