On Tue, Jan 26, 2016 at 2:37 PM, Michael J Gruber <g...@drmicha.warpmail.net> wrote: > Hi there, > > with current next (989ee58 plus local additions) it seems that typo > DWIMery with aliases is broken, see below. > > It appears that the typo DWIMery is broken only when there is a unique > automatic DWIM substitution for a mistyped alias. > > I haven't bisected yet, but I suspect this to be related to recent > changes regarding the environment in which commands/aliases are started > (though this happens without extra work trees), so I'm cc'ing an expert > in that area. Funny, though, that my user name shows up... > > I think the reason is that git.c's handle_alias() (or something else) > calls restore_env() multiple times, and restore_env frees orig_cwd such > that subsequent restore_env(0) with external_alias=0 tries to cd to a > random location. > > I have no idea whether orig_cwd=0 after freeing or something else would > be the proper fix.
I think the key is to reset saved_env_before_alias to zero in restore_env(). With that flag remains set, the second save_env turns no-op. orig_cwd should be reset too, but that's minor. It's working for me. I'll send a patch later. -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html