|
|
@@ -84,14 +84,11 @@ m_strndup(const char *str, size_t n)
|
|
|
}
|
|
|
|
|
|
int
|
|
|
-m_asprintf(char **strp, const char *fmt, ...)
|
|
|
+m_vasprintf(char **strp, const char *fmt, va_list args)
|
|
|
{
|
|
|
- va_list args;
|
|
|
int n;
|
|
|
|
|
|
- va_start(args, fmt);
|
|
|
n = vasprintf(strp, fmt, args);
|
|
|
- va_end(args);
|
|
|
|
|
|
onerr_abort++;
|
|
|
if (n < 0)
|
|
|
@@ -101,6 +98,19 @@ m_asprintf(char **strp, const char *fmt, ...)
|
|
|
return n;
|
|
|
}
|
|
|
|
|
|
+int
|
|
|
+m_asprintf(char **strp, const char *fmt, ...)
|
|
|
+{
|
|
|
+ va_list args;
|
|
|
+ int n;
|
|
|
+
|
|
|
+ va_start(args, fmt);
|
|
|
+ n = m_vasprintf(strp, fmt, args);
|
|
|
+ va_end(args);
|
|
|
+
|
|
|
+ return n;
|
|
|
+}
|
|
|
+
|
|
|
void m_dup2(int oldfd, int newfd) {
|
|
|
const char *const stdstrings[]= { "in", "out", "err" };
|
|
|
|