libgit: git_setup_directory() is not reentrant
- From
- Christian Thaeter <ct@pipapo.org>
- Date
- Jan 4, 2008, 17:07 UTC
- Message-ID
- <477E67C5.5020301@pipapo.org>
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