diff options
| author | Carlos Martín Nieto <cmn@elego.de> | 2011-05-17 12:12:59 +0200 |
|---|---|---|
| committer | Carlos Martín Nieto <cmn@elego.de> | 2011-05-17 12:12:59 +0200 |
| commit | 94711cad3b83445dfcf45a6e0b29b045e06a29f6 (patch) | |
| tree | c0b5560d53aac94756a4d9759fdcf25f1582c40f /include/git2 | |
| parent | c0335005495c1b49986d19031557f9df6bf49922 (diff) | |
| parent | 335d6c998041f7c44dce48d3bb087c52136d970f (diff) | |
| download | libgit2-94711cad3b83445dfcf45a6e0b29b045e06a29f6.tar.gz | |
Merge upstream/development
Diffstat (limited to 'include/git2')
| -rw-r--r-- | include/git2/common.h | 86 | ||||
| -rw-r--r-- | include/git2/errors.h | 100 | ||||
| -rw-r--r-- | include/git2/index.h | 4 | ||||
| -rw-r--r-- | include/git2/thread-utils.h | 1 |
4 files changed, 103 insertions, 88 deletions
diff --git a/include/git2/common.h b/include/git2/common.h index ab267e620..9a27ac2e5 100644 --- a/include/git2/common.h +++ b/include/git2/common.h @@ -84,92 +84,6 @@ * @{ */ -/** Operation completed successfully. */ -#define GIT_SUCCESS 0 - -/** - * Operation failed, with unspecified reason. - * This value also serves as the base error code; all other - * error codes are subtracted from it such that all errors - * are < 0, in typical POSIX C tradition. - */ -#define GIT_ERROR -1 - -/** Input was not a properly formatted Git object id. */ -#define GIT_ENOTOID (GIT_ERROR - 1) - -/** Input does not exist in the scope searched. */ -#define GIT_ENOTFOUND (GIT_ERROR - 2) - -/** Not enough space available. */ -#define GIT_ENOMEM (GIT_ERROR - 3) - -/** Consult the OS error information. */ -#define GIT_EOSERR (GIT_ERROR - 4) - -/** The specified object is of invalid type */ -#define GIT_EOBJTYPE (GIT_ERROR - 5) - -/** The specified object has its data corrupted */ -#define GIT_EOBJCORRUPTED (GIT_ERROR - 6) - -/** The specified repository is invalid */ -#define GIT_ENOTAREPO (GIT_ERROR - 7) - -/** The object or config variable type is invalid or doesn't match */ -#define GIT_EINVALIDTYPE (GIT_ERROR - 8) - -/** The object cannot be written because it's missing internal data */ -#define GIT_EMISSINGOBJDATA (GIT_ERROR - 9) - -/** The packfile for the ODB is corrupted */ -#define GIT_EPACKCORRUPTED (GIT_ERROR - 10) - -/** Failed to acquire or release a file lock */ -#define GIT_EFLOCKFAIL (GIT_ERROR - 11) - -/** The Z library failed to inflate/deflate an object's data */ -#define GIT_EZLIB (GIT_ERROR - 12) - -/** The queried object is currently busy */ -#define GIT_EBUSY (GIT_ERROR - 13) - -/** The index file is not backed up by an existing repository */ -#define GIT_EBAREINDEX (GIT_ERROR - 14) - -/** The name of the reference is not valid */ -#define GIT_EINVALIDREFNAME (GIT_ERROR - 15) - -/** The specified reference has its data corrupted */ -#define GIT_EREFCORRUPTED (GIT_ERROR - 16) - -/** The specified symbolic reference is too deeply nested */ -#define GIT_ETOONESTEDSYMREF (GIT_ERROR - 17) - -/** The pack-refs file is either corrupted or its format is not currently supported */ -#define GIT_EPACKEDREFSCORRUPTED (GIT_ERROR - 18) - -/** The path is invalid */ -#define GIT_EINVALIDPATH (GIT_ERROR - 19) - -/** The revision walker is empty; there are no more commits left to iterate */ -#define GIT_EREVWALKOVER (GIT_ERROR - 20) - -/** The state of the reference is not valid */ -#define GIT_EINVALIDREFSTATE (GIT_ERROR - 21) - -/** This feature has not been implemented yet */ -#define GIT_ENOTIMPLEMENTED (GIT_ERROR - 22) - -/** A reference with this name already exists */ -#define GIT_EEXISTS (GIT_ERROR - 23) - -/** The given integer literal is too large to be parsed */ -#define GIT_EOVERFLOW (GIT_ERROR - 24) - -/** The given literal is not a valid number */ -#define GIT_ENOTNUM (GIT_ERROR - 25) - GIT_BEGIN_DECL typedef struct { diff --git a/include/git2/errors.h b/include/git2/errors.h index 627e67c70..7e957b803 100644 --- a/include/git2/errors.h +++ b/include/git2/errors.h @@ -25,6 +25,8 @@ #ifndef INCLUDE_git_errors_h__ #define INCLUDE_git_errors_h__ +#include "common.h" + /** * @file git2/errors.h * @brief Git error handling routines and variables @@ -33,8 +35,106 @@ */ GIT_BEGIN_DECL +typedef enum { + GIT_SUCCESS = 0, + GIT_ERROR = -1, + + /** Input was not a properly formatted Git object id. */ + GIT_ENOTOID = -2, + + /** Input does not exist in the scope searched. */ + GIT_ENOTFOUND = -3, + + /** Not enough space available. */ + GIT_ENOMEM = -4, + + /** Consult the OS error information. */ + GIT_EOSERR = -5, + + /** The specified object is of invalid type */ + GIT_EOBJTYPE = -6, + + /** The specified repository is invalid */ + GIT_ENOTAREPO = -7, + + /** The object type is invalid or doesn't match */ + GIT_EINVALIDTYPE = -8, + + /** The object cannot be written because it's missing internal data */ + GIT_EMISSINGOBJDATA = -9, + + /** The packfile for the ODB is corrupted */ + GIT_EPACKCORRUPTED = -10, + + /** Failed to acquire or release a file lock */ + GIT_EFLOCKFAIL = -11, + + /** The Z library failed to inflate/deflate an object's data */ + GIT_EZLIB = -12, + + /** The queried object is currently busy */ + GIT_EBUSY = -13, + + /** The index file is not backed up by an existing repository */ + GIT_EBAREINDEX = -14, + + /** The name of the reference is not valid */ + GIT_EINVALIDREFNAME = -15, + + /** The specified reference has its data corrupted */ + GIT_EREFCORRUPTED = -16, + + /** The specified symbolic reference is too deeply nested */ + GIT_ETOONESTEDSYMREF = -17, + + /** The pack-refs file is either corrupted or its format is not currently supported */ + GIT_EPACKEDREFSCORRUPTED = -18, + + /** The path is invalid */ + GIT_EINVALIDPATH = -19, + + /** The revision walker is empty; there are no more commits left to iterate */ + GIT_EREVWALKOVER = -20, + + /** The state of the reference is not valid */ + GIT_EINVALIDREFSTATE = -21, + + /** This feature has not been implemented yet */ + GIT_ENOTIMPLEMENTED = -22, + + /** A reference with this name already exists */ + GIT_EEXISTS = -23, + + /** The given integer literal is too large to be parsed */ + GIT_EOVERFLOW = -24, + + /** The given literal is not a valid number */ + GIT_ENOTNUM = -25, + + /** Streaming error */ + GIT_ESTREAM = -26, + + /** invalid arguments to function */ + GIT_EINVALIDARGS = -27, + + /** The specified object has its data corrupted */ + GIT_EOBJCORRUPTED = -28, +} git_error; + +/** + * Return a detailed error string with the latest error + * that occurred in the library. + * @return a string explaining the error + */ +GIT_EXTERN(const char *) git_lasterror(void); + /** * strerror() for the Git library + * + * Get a string description for a given error code. + * NOTE: This method will be eventually deprecated in favor + * of the new `git_lasterror`. + * * @param num The error code to explain * @return a string explaining the error code */ diff --git a/include/git2/index.h b/include/git2/index.h index 7991de92e..2d8975ca1 100644 --- a/include/git2/index.h +++ b/include/git2/index.h @@ -232,10 +232,10 @@ GIT_EXTERN(int) git_index_append(git_index *index, const char *path, int stage); * @param source_entry new entry object * @return 0 on success, otherwise an error code */ -GIT_EXTERN(int) git_index_apppend2(git_index *index, const git_index_entry *source_entry); +GIT_EXTERN(int) git_index_append2(git_index *index, const git_index_entry *source_entry); /** - * Remove an entry from the index + * Remove an entry from the index * * @param index an existing index object * @param position position of the entry to remove diff --git a/include/git2/thread-utils.h b/include/git2/thread-utils.h index fb8644b93..e26876bea 100644 --- a/include/git2/thread-utils.h +++ b/include/git2/thread-utils.h @@ -35,6 +35,7 @@ #if defined(__APPLE__) && defined(__MACH__) # undef GIT_TLS +# define GIT_TLS #elif defined(__GNUC__) || \ defined(__SUNPRO_C) || \ |
