diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2010-11-06 14:00:38 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-11-10 11:11:07 -0800 |
commit | e0500293852910c2f44fce61e7eb856adbc20d8a (patch) | |
tree | ae21f4a803f2092986b7db1f74040a0116e22373 /wrapper.c | |
parent | bc9b21755ebf82d06a60886947bdbd8d0f14baf1 (diff) | |
download | git-e0500293852910c2f44fce61e7eb856adbc20d8a.tar.gz |
Remove pack file handling dependency from wrapper.o
As v1.7.0-rc0~43 (slim down "git show-index", 2010-01-21) explains,
use of xmalloc() brings in a dependency on zlib, the sha1 lib, and the
rest of git's object file access machinery via try_to_free_pack_memory.
That is overkill when xmalloc is just being used as a convenience
wrapper to exit when no memory is available.
So defer setting try_to_free_pack_memory as try_to_free_routine until
the first packfile is opened in add_packed_git().
After this change, a simple program using xmalloc() and no other
functions will not pull in any code from libgit.a aside from wrapper.o
and usage.o.
Improved-by: René Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'wrapper.c')
-rw-r--r-- | wrapper.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -3,12 +3,11 @@ */ #include "cache.h" -static void try_to_free_builtin(size_t size) +static void do_nothing(size_t size) { - release_pack_memory(size, -1); } -static void (*try_to_free_routine)(size_t size) = try_to_free_builtin; +static void (*try_to_free_routine)(size_t size) = do_nothing; try_to_free_t set_try_to_free_routine(try_to_free_t routine) { |