git-svn: honor ~/.subversion/ client cert file settings.
[gitweb.git] / cache.h
diff --git a/cache.h b/cache.h
index cec19ba4489f858a0dd7f6701c2411ab6d29b938..0525c4ee55a05304a6b2018cc27933baa5510aba 100644 (file)
--- a/cache.h
+++ b/cache.h
@@ -234,8 +234,11 @@ extern void verify_non_filename(const char *prefix, const char *name);
  */
 #define ALLOC_GROW(x, nr, alloc) \
        do { \
-               if ((nr) >= alloc) { \
-                       alloc = alloc_nr(alloc); \
+               if ((nr) > alloc) { \
+                       if (alloc_nr(alloc) < (nr)) \
+                               alloc = (nr); \
+                       else \
+                               alloc = alloc_nr(alloc); \
                        x = xrealloc((x), alloc * sizeof(*(x))); \
                } \
        } while(0)
@@ -529,6 +532,8 @@ extern char git_default_name[MAX_GITNAME];
 extern const char *git_commit_encoding;
 extern const char *git_log_output_encoding;
 
+/* IO helper functions */
+extern void maybe_flush_or_die(FILE *, const char *);
 extern int copy_fd(int ifd, int ofd);
 extern int read_in_full(int fd, void *buf, size_t count);
 extern int write_in_full(int fd, const void *buf, size_t count);