On Thursday 26 March 2009, Johannes Sixt wrote: > Johan Herland schrieb: > > In the above patch, I've passed mode == -1 to finalize_temp_file() > > from all callsites where there was no corresponding (f)chmod(foo, > > 0444). However, after looking at the context (these are all either > > packs or loose objects), I'm wondering if we shouldn't pass mode == > > 0444 for all of these. At which point we could replace the above > > patch with this much simpler version: > > Indeed! > > > (We could also add an optional "mode" argument to > > adjust_shared_perm(), to get rid of the double chmod().) > > And I think you should do that, otherwise you have a short time > window where the permissions of a pack or loose object is less > restrictive than you want. Ok, here's a cleaned-up series on top of Junio's patch. It should resolve the chmod()-after-adjust_shared_perm() issue in Junio's patch, as well as the rename-after-chmod Windows issue reported by Hannes. The first patch is the second alternative I sent in an earlier mail. The second patch resolves the double chmod() left by the first patch. Johan Herland (2): Move chmod(foo, 0444) into move_temp_to_file() Resolve double chmod() in move_temp_to_file() cache.h | 1 + fast-import.c | 3 --- http-push.c | 1 - http-walker.c | 1 - index-pack.c | 7 +++---- path.c | 26 +++++++++++++++++++------- sha1_file.c | 3 +-- 7 files changed, 24 insertions(+), 18 deletions(-) Have fun! :) ...Johan -- Johan Herland, <johan@xxxxxxxxxxx> www.herland.net -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html