]> git.proxmox.com Git - libgit2.git/blobdiff - include/git2/errors.h
New upstream version 1.5.0+ds
[libgit2.git] / include / git2 / errors.h
index 16712f988b987071ccbbdcbbe4080c48e6ad851b..a61964bbb1264bfe99cd216ed8e11ab5540e618e 100644 (file)
@@ -107,7 +107,7 @@ typedef enum {
        GIT_ERROR_FILESYSTEM,
        GIT_ERROR_PATCH,
        GIT_ERROR_WORKTREE,
-       GIT_ERROR_SHA1,
+       GIT_ERROR_SHA,
        GIT_ERROR_HTTP,
        GIT_ERROR_INTERNAL
 } git_error_t;
@@ -131,7 +131,8 @@ GIT_EXTERN(const git_error *) git_error_last(void);
 GIT_EXTERN(void) git_error_clear(void);
 
 /**
- * Set the error message string for this thread.
+ * Set the error message string for this thread, using `printf`-style
+ * formatting.
  *
  * This function is public so that custom ODB backends and the like can
  * relay an error message through libgit2.  Most regular users of libgit2
@@ -144,7 +145,20 @@ GIT_EXTERN(void) git_error_clear(void);
  *
  * @param error_class One of the `git_error_t` enum above describing the
  *                    general subsystem that is responsible for the error.
- * @param string The formatted error message to keep
+ * @param fmt The `printf`-style format string; subsequent arguments must
+ *            be the arguments for the format string.
+ */
+GIT_EXTERN(void) git_error_set(int error_class, const char *fmt, ...)
+                 GIT_FORMAT_PRINTF(2, 3);
+
+/**
+ * Set the error message string for this thread.  This function is like
+ * `git_error_set` but takes a static string instead of a `printf`-style
+ * format.
+ *
+ * @param error_class One of the `git_error_t` enum above describing the
+ *                    general subsystem that is responsible for the error.
+ * @param string The error message to keep
  * @return 0 on success or -1 on failure
  */
 GIT_EXTERN(int) git_error_set_str(int error_class, const char *string);