Просмотр исходного кода

libdpkg: Add new warningv() function and make warning() use it

Guillem Jover лет назад: 15
Родитель
Сommit
180e2e0e47
3 измененных файлов с 12 добавлено и 4 удалено
  1. 10 4
      lib/dpkg/ehandle.c
  2. 1 0
      lib/dpkg/ehandle.h
  3. 1 0
      lib/dpkg/libdpkg.Versions

+ 10 - 4
lib/dpkg/ehandle.c

@@ -377,17 +377,23 @@ void ohshite(const char *fmt, ...) {
   run_error_handler();
 }
 
+void
+warningv(const char *fmt, va_list args)
+{
+  char buf[1024];
+
+  vsnprintf(buf, sizeof(buf), fmt, args);
+  fprintf(stderr, _("%s: warning: %s\n"), thisname, buf);
+}
+
 void
 warning(const char *fmt, ...)
 {
   va_list args;
-  char buf[1024];
 
   va_start(args, fmt);
-  vsnprintf(buf, sizeof(buf), fmt, args);
+  warningv(fmt, args);
   va_end(args);
-
-  fprintf(stderr, _("%s: warning: %s\n"), thisname, buf);
 }
 
 void werr(const char *fn) {

+ 1 - 0
lib/dpkg/ehandle.h

@@ -59,6 +59,7 @@ void push_cleanup(void (*f1)(int argc, void **argv), int flagmask1,
 void push_checkpoint(int mask, int value);
 void pop_cleanup(int flagset);
 
+void warningv(const char *fmt, va_list args) DPKG_ATTR_VPRINTF(1);
 void warning(const char *fmt, ...) DPKG_ATTR_PRINTF(1);
 
 void ohshitv(const char *fmt, va_list args)

+ 1 - 0
lib/dpkg/libdpkg.Versions

@@ -24,6 +24,7 @@ LIBDPKG_PRIVATE {
 	ohshit;
 	werr;			# XXX: remove
 	do_internerr;
+	warningv;
 	warning;
 
 	# Generic cleanup