diff options
author | Marcus Meissner <marcus@jet.franken.de> | 2014-09-12 06:39:33 +0000 |
---|---|---|
committer | Marcus Meissner <marcus@jet.franken.de> | 2014-09-12 06:39:33 +0000 |
commit | 7e8957d8b5d3a723ed949476875e759d6b5d9137 (patch) | |
tree | 64f96b1eda88b101493ae5c5c4c43784bc9c1e93 /libgphoto2/gphoto2-context.c | |
parent | 5e8a10669cd03db3fb1cc1bb9edc5fd9341980f2 (diff) | |
download | libgphoto2-7e8957d8b5d3a723ed949476875e759d6b5d9137.tar.gz |
From: Axel Waggershauser <awagger@web.de>
make gpi_vsnprintf internal export
and use it in gphoto2-context.c too
git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@15178 67ed7778-7388-44ab-90cf-0a291f65f57c
Diffstat (limited to 'libgphoto2/gphoto2-context.c')
-rw-r--r-- | libgphoto2/gphoto2-context.c | 185 |
1 files changed, 21 insertions, 164 deletions
diff --git a/libgphoto2/gphoto2-context.c b/libgphoto2/gphoto2-context.c index ec3d1daf6..58835d056 100644 --- a/libgphoto2/gphoto2-context.c +++ b/libgphoto2/gphoto2-context.c @@ -156,51 +156,21 @@ gp_context_progress_start (GPContext *context, float target, const char *format, ...) { va_list args; - unsigned int id; -#ifdef HAVE_VA_COPY - va_list xargs; -#else -#define xargs args -#endif - int strsize = 1000; char *str; - int n; + unsigned int id; if (!context) return (0); if (!context->progress_start_func) return (0); - str = malloc(strsize); - if (!str) { - return 0; - } va_start (args, format); -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - if (n+1>strsize) { - free (str); - str = malloc(n+1); - if (!str) { - va_end (args); - return 0; - } - strsize = n+1; -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - } + str = gpi_vsnprintf(format, args); va_end (args); + if (!str) + return 0; + id = context->progress_start_func (context, target, str, context->progress_func_data); free (str); @@ -233,43 +203,15 @@ void gp_context_error (GPContext *context, const char *format, ...) { va_list args; -#ifdef HAVE_VA_COPY - va_list xargs; -#endif - int strsize = 1000; char *str; - int n; - str = malloc(strsize); - if (!str) { - return; - } va_start (args, format); -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - if (n+1>strsize) { - free (str); - str = malloc(n+1); - if (!str) { - va_end (args); - return; - } - strsize = n+1; -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - } + str = gpi_vsnprintf(format, args); va_end (args); + if (!str) + return; + /* Log the error message */ gp_log( GP_LOG_ERROR, __func__, "%s", str); @@ -282,43 +224,15 @@ void gp_context_status (GPContext *context, const char *format, ...) { va_list args; -#ifdef HAVE_VA_COPY - va_list xargs; -#endif - int strsize = 1000; char *str; - int n; - str = malloc(strsize); - if (!str) { - return; - } va_start (args, format); -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - if (n+1>strsize) { - free (str); - str = malloc(n+1); - if (!str) { - va_end (args); - return; - } - strsize = n+1; -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - } + str = gpi_vsnprintf(format, args); va_end (args); + if (!str) + return; + /* Log the status message */ GP_LOG_D ("%s", str); @@ -343,44 +257,15 @@ void gp_context_message (GPContext *context, const char *format, ...) { va_list args; -#ifdef HAVE_VA_COPY - va_list xargs; -#endif - int strsize = 1000; char *str; - int n; - str = malloc(strsize); - if (!str) { - va_end (xargs); - return; - } va_start (args, format); -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - if (n+1>strsize) { - free (str); - str = malloc(n+1); - if (!str) { - va_end (args); - return; - } - strsize = n+1; -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - } + str = gpi_vsnprintf(format, args); va_end (args); + if (!str) + return; + /* Log the message */ GP_LOG_D ("%s", str); @@ -407,43 +292,15 @@ gp_context_question (GPContext *context, const char *format, ...) { GPContextFeedback feedback; va_list args; -#ifdef HAVE_VA_COPY - va_list xargs; -#endif - int strsize = 1000; char *str; - int n; - str = malloc(strsize); - if (!str) { - return GP_CONTEXT_FEEDBACK_OK; - } va_start (args, format); -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - if (n+1>strsize) { - free (str); - str = malloc(n+1); - if (!str) { - va_end (args); - return GP_CONTEXT_FEEDBACK_OK; - } - strsize = n+1; -#ifdef HAVE_VA_COPY - va_copy (xargs, args); -#endif - n = vsnprintf (str, strsize, format, xargs); -#ifdef HAVE_VA_COPY - va_end (xargs); -#endif - } + str = gpi_vsnprintf(format, args); va_end (args); + if (!str) + return GP_CONTEXT_FEEDBACK_OK; + feedback = GP_CONTEXT_FEEDBACK_OK; if (context && context->question_func) feedback = context->question_func (context, str, context->question_func_data); |