return r;
}
+int __pakfire_path_format(char* buffer, const size_t length, const char* format, ...) {
+ va_list args;
+ int r;
+
+ va_start(args, format);
+ r = __pakfire_string_vformat(buffer, length, format, args);
+ va_end(args);
+
+ // Return any errors
+ if (r < 0)
+ return r;
+
+ // Normalize the path
+ return __pakfire_path_normalize(buffer, length);
+}
+
int __pakfire_path_append(char* buffer, const size_t length, const char* s1, const char* s2) {
struct pakfire_path* path = NULL;
int r;
__pakfire_path_normalize(path, sizeof(path))
int __pakfire_path_normalize(char* p, const size_t length);
+#define pakfire_path_format(path, format, ...) \
+ __pakfire_path_format(path, sizeof(path), format, __VA_ARGS__)
+int __pakfire_path_format(char* buffer, const size_t length, const char* format, ...);
+
#define pakfire_path_append(path, s1, s2) \
__pakfire_path_append(path, sizeof(path), s1, s2)
int __pakfire_path_append(char* buffer, const size_t length, const char* s1, const char* s2);