From 0f7e980b29612e0c231f94170b02d0dadea51248 Mon Sep 17 00:00:00 2001 From: Vladimir 'phcoder' Serbinenko Date: Fri, 10 May 2013 20:57:32 +0200 Subject: [PATCH] Redirect xasprintf to grub_xvasprintf rather than having #ifdef's for vasprintf presence. --- ChangeLog | 5 +++++ configure.ac | 2 +- grub-core/kern/emu/misc.c | 39 +++------------------------------------ include/grub/emu/misc.h | 8 -------- 4 files changed, 9 insertions(+), 45 deletions(-) diff --git a/ChangeLog b/ChangeLog index fdfa56b80..a57e631c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-05-10 Vladimir Serbinenko + + Redirect xasprintf to grub_xvasprintf rather than having #ifdef's + for vasprintf presence. + 2013-05-10 Vladimir Serbinenko * util/grub-install.in: Handle efibootmgr presence check. diff --git a/configure.ac b/configure.ac index fa0e00a12..bb4071a90 100644 --- a/configure.ac +++ b/configure.ac @@ -355,7 +355,7 @@ else fi # Check for functions and headers. -AC_CHECK_FUNCS(posix_memalign memalign asprintf vasprintf getextmntent) +AC_CHECK_FUNCS(posix_memalign memalign getextmntent) AC_CHECK_HEADERS(sys/param.h sys/mount.h sys/mnttab.h sys/mkdev.h limits.h) AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$ac_includes_default diff --git a/grub-core/kern/emu/misc.c b/grub-core/kern/emu/misc.c index 21954ed50..ce338fd20 100644 --- a/grub-core/kern/emu/misc.c +++ b/grub-core/kern/emu/misc.c @@ -145,36 +145,6 @@ xstrdup (const char *str) return newstr; } -#ifndef HAVE_VASPRINTF - -int -vasprintf (char **buf, const char *fmt, va_list ap) -{ - /* Should be large enough. */ - *buf = xmalloc (512); - - return vsnprintf (*buf, 512, fmt, ap); -} - -#endif - -#ifndef HAVE_ASPRINTF - -int -asprintf (char **buf, const char *fmt, ...) -{ - int status; - va_list ap; - - va_start (ap, fmt); - status = vasprintf (buf, fmt, ap); - va_end (ap); - - return status; -} - -#endif - char * xasprintf (const char *fmt, ...) { @@ -182,12 +152,9 @@ xasprintf (const char *fmt, ...) char *result; va_start (ap, fmt); - if (vasprintf (&result, fmt, ap) < 0) - { - if (errno == ENOMEM) - grub_util_error ("%s", _("out of memory")); - return NULL; - } + result = grub_xvasprintf (fmt, ap); + if (!result) + grub_util_error ("%s", _("out of memory")); return result; } diff --git a/include/grub/emu/misc.h b/include/grub/emu/misc.h index 3c9f07ed3..92669f09a 100644 --- a/include/grub/emu/misc.h +++ b/include/grub/emu/misc.h @@ -64,14 +64,6 @@ void EXPORT_FUNC(grub_util_warn) (const char *fmt, ...) __attribute__ ((format ( void EXPORT_FUNC(grub_util_info) (const char *fmt, ...) __attribute__ ((format (printf, 1, 2))); void EXPORT_FUNC(grub_util_error) (const char *fmt, ...) __attribute__ ((format (printf, 1, 2), noreturn)); -#ifndef HAVE_VASPRINTF -int EXPORT_FUNC(vasprintf) (char **buf, const char *fmt, va_list ap); -#endif - -#ifndef HAVE_ASPRINTF -int EXPORT_FUNC(asprintf) (char **buf, const char *fmt, ...); -#endif - extern char * canonicalize_file_name (const char *path); #ifdef HAVE_DEVICE_MAPPER