summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libopkg/user.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libopkg/user.c b/libopkg/user.c
index af133ba..04dfd9e 100644
--- a/libopkg/user.c
+++ b/libopkg/user.c
@@ -33,14 +33,16 @@ char *get_user_response(const char *format, ...)
int len = question_len;
va_list ap;
char *response;
- va_start(ap, format);
do {
if (question == NULL || len > question_len) {
question = realloc(question, len + 1);
question_len = len;
}
+
+ va_start(ap, format);
len = vsnprintf(question,question_len,format,ap);
+ va_end(ap);
} while (len > question_len);
response = strdup(opkg_cb_response(question));
str_chomp(response);