diff options
Diffstat (limited to 'test/testHelpers.cpp')
-rw-r--r-- | test/testHelpers.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/test/testHelpers.cpp b/test/testHelpers.cpp new file mode 100644 index 0000000..c69e5f3 --- /dev/null +++ b/test/testHelpers.cpp @@ -0,0 +1,16 @@ +#include "testHelpers.h" +#include <cstdarg> + +std::unique_ptr<char, decltype(&free)> +uasprintf(const char * fmt, ...) +{ + char * buf {}; + va_list args; + va_start(args, fmt); + if (vasprintf(&buf, fmt, args) < 0) { + va_end(args); + return {nullptr, &free}; + } + va_end(args); + return std::unique_ptr<char, decltype(&free)> {buf, &free}; +} |