diff options
Diffstat (limited to 'src/common.h')
-rw-r--r-- | src/common.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/common.h b/src/common.h index dd97a3099..807e5fa39 100644 --- a/src/common.h +++ b/src/common.h @@ -170,6 +170,11 @@ GIT_INLINE(void) git__init_structure(void *structure, size_t len, unsigned int v } #define GIT_INIT_STRUCTURE(S,V) git__init_structure(S, sizeof(*S), V) +#define GIT_INIT_STRUCTURE_FROM_TEMPLATE(PTR,VERSION,TYPE,TPL) do { \ + TYPE _tmpl = TPL; \ + GITERR_CHECK_VERSION(&(VERSION), _tmpl.version, #TYPE); \ + memcpy((PTR), &_tmpl, sizeof(_tmpl)); } while (0) + /* NOTE: other giterr functions are in the public errors.h header file */ #include "util.h" |