libgit: git_setup_directory() is not reentrant
From: Christian Thaeter <hidden>
Date: 2016-06-15 22:44:02
From: Christian Thaeter <hidden>
Date: 2016-06-15 22:44:02
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