lmdb: restrict the visibility of some symbols
RFC PATCH 1/1 lmdb: restrict the visibility of some symbols
---
Hi David,
If you need to re-roll your 'dt/refs-backend-lmdb' branch, please consider squashing something like this into the relevant patches. Note that I marked this as RFC, because I haven't got lmdb installed, so I can't actually test it! ;-)
So, I've just eyeballed it and, hopefully, it will actually work.
Let me know.
Thanks!
ATB,
Ramsay Jones
refs.c | 2 +- refs.h | 5 ----- refs/refs-internal.h | 3 +++ test-refs-lmdb-backend.c | 5 +++-- 4 files changed, 7 insertions(+), 8 deletions(-)
refs.c +1 -1
@@ -22,7 +22,7 @@ static struct ref_storage_be *refs_backends = NULL;const char *ref_storage_backend ="files" ; -void register_ref_storage_backend (struct ref_storage_be *be) +static void register_ref_storage_backend (struct ref_storage_be *be) { be->next = refs_backends; refs_backends = be;
refs.h +0 -5
@@ -515,9 +515,6 @@ extern int reflog_expire(const char *refname, const unsigned char *sha1,*/ int ref_storage_backend_config (const char *var,const char *value,void *ptr); -struct ref_storage_be ; - -extern struct ref_storage_be refs_be_lmdb;/* * Switch to an alternate ref storage backend. */
@@ -525,8 +522,6 @@ int set_ref_storage_backend(const char *name);int ref_storage_backend_exists (const char *name); -void register_ref_storage_backend (struct ref_storage_be *be); -void register_ref_storage_backends (void );#endif /* REFS_H */
refs/refs-internal.h +3 -0
@@ -308,5 +308,8 @@ struct ref_storage_be { };extern struct ref_storage_be refs_be_files; +#ifdef USE_LIBLMDB +extern struct ref_storage_be refs_be_lmdb; +#endif #endif /* REFS_REFS_INTERNAL_H */
test-refs-lmdb-backend.c +3 -2
@@ -43,8 +43,9 @@ int main(int argc, const char **argv)git_config (git_default_config,NULL ); -register_ref_storage_backend (&refs_be_lmdb); -set_ref_storage_backend ("lmdb" ); +register_ref_storage_backends (); +if (!set_ref_storage_backend ("lmdb" )) +die ("could not set lmdb reference backend" );if (clear_reflog) {test_refdb_raw_delete_reflog (argv[0 ]);
Signature · 1 line
2.7.0
Instead of directly applying this patch, I rearranged the code a bit, but hopefully now have reduced the non-static surface area. Thanks for the suggestions.
Quoted 92 lines · Ramsay Jones
Signed-off-by Ramsay Jones <[email protected]>---
Hi David,
If you need to re-roll your 'dt/refs-backend-lmdb' branch, please consider squashing something like this into the relevant patches. Note that I marked this as RFC, because I haven't got lmdb installed, so I can't actually test it! ;-)
So, I've just eyeballed it and, hopefully, it will actually work.
Let me know.
Thanks!
ATB,
Ramsay Jonesrefs.c | 2 +- refs.h | 5 ----- refs/refs-internal.h | 3 +++ test-refs-lmdb-backend.c | 5 +++-- 4 files changed, 7 insertions(+), 8 deletions(-)refs.c +1
-1@@ -22,7 +22,7 @@ static struct ref_storage_be *refs_backends = NULL;const char *ref_storage_backend ="files" ; -void register_ref_storage_backend (struct ref_storage_be *be) +static void register_ref_storage_backend (struct ref_storage_be *be) { be->next = refs_backends; refs_backends = be;refs.h +0
-3@@ -515,9 +515,6 @@ extern int reflog_expire(const char *refname,const unsigned char *sha1, */ int ref_storage_backend_config (const char *var,const char *value,void *ptr); -struct ref_storage_be ; - -extern struct ref_storage_be refs_be_lmdb;/* * Switch to an alternate ref storage backend.
*/refs.h +0
-2@@ -525,8 +522,6 @@ int set_ref_storage_backend(const char *name);int ref_storage_backend_exists (const char *name); -void register_ref_storage_backend (struct ref_storage_be *be); -void register_ref_storage_backends (void );#endif /* REFS_H */ refs/refs-internal.h +3
-0@@ -308,5 +308,8 @@ struct ref_storage_be { };extern struct ref_storage_be refs_be_files; +#ifdef USE_LIBLMDB +extern struct ref_storage_be refs_be_lmdb; +#endif #endif /* REFS_REFS_INTERNAL_H */ test-refs-lmdb-backend.c +3
-2@@ -43,8 +43,9 @@ int main(int argc, const char **argv)git_config (git_default_config,NULL ); -register_ref_storage_backend (&refs_be_lmdb); -set_ref_storage_backend ("lmdb" ); +register_ref_storage_backends (); +if (!set_ref_storage_backend ("lmdb" )) +die ("could not set lmdb reference backend" );if (clear_reflog) {test_refdb_raw_delete_reflog (argv[0 ]);