nix-update-helpers.cpp 478 B

123456789101112131415161718192021222324252627
  1. #include "nix-update-helpers.hpp"
  2. #include <stdarg.h>
  3. std::string vstrprintf(const char *format, va_list args)
  4. {
  5. if (!format)
  6. return std::string();
  7. std::string str;
  8. int size = (int)vsnprintf(nullptr, 0, format, args) + 1;
  9. str.resize(size);
  10. vsnprintf(&str[0], size, format, args);
  11. return str;
  12. }
  13. std::string strprintf(const char *format, ...)
  14. {
  15. std::string str;
  16. va_list args;
  17. va_start(args, format);
  18. str = vstrprintf(format, args);
  19. va_end(args);
  20. return str;
  21. }