Subject: libgit: git_setup_directory() is not reentrant

From: Christian Thaeter <[email-masked]>
Date: Fri, 04 Jan 2008 18:07:17 +0100

While working on a git-browser, I noticed that git_setup_directory() is
not reentrant. Once called it initializes (by calling other functions in
turn) several static/hidden variables which can't be altered afterwards.
This is ugly when one wants  to iterate over different repositories
(generating a list of available repos).

How could we fix this?
I would propose that subsequent 'git_setup_directory()' calls will
reinit the setup completely.

Another way would be to provide a 'git_setup_reset()' function which
lets one cleanup all setup things before calling 'git_setup_directory()'
again.

Comments?

	Christian