All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] builtins: do not commit pager choice early
@ 2010-03-25 13:38 Nguyễn Thái Ngọc Duy
  2010-03-25 13:38 ` [PATCH 2/2] builtins: setup repository before print unknown command error Nguyễn Thái Ngọc Duy
  2010-03-26 20:03 ` [PATCH 1/2] builtins: do not commit pager choice early Jonathan Nieder
  0 siblings, 2 replies; 4+ messages in thread
From: Nguyễn Thái Ngọc Duy @ 2010-03-25 13:38 UTC (permalink / raw)
  To: git, Junio C Hamano; +Cc: Duy Nguyen

From: Duy Nguyen <pclouds@gmail.com>

Committing pager choice may require setting up the pager, which
will need access to repository.

At the time after handle_options() is called, the repository has not
been found yet. As a result, unallowed access to repository may
happen.

There are several possible code path after
handle_options()/commit_pager_choice() is called:

1. list_common_cmds_help()
2. run_argv()
3. help_unknown_cmd()

Case 2. will have commit_pager_choice() called inside run_builtin() if
a command is found. Case 1. and 3. won't need a pager, it's short
printout and should be fitted within a screen. So, removing
commit_pager_choice() call after handle_options() is safe.

Signed-off-by: Duy Nguyen <pclouds@gmail.com>
---
 On top of nd/setup. This may help fix the breakage in t7006. And forget t9100
 breakage I mentioned elsewhere. My system is broken, git-svn dies when it "exit 0;"
 and even git one year ago does not fix it.

 git.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/git.c b/git.c
index 3798791..bd1d4bb 100644
--- a/git.c
+++ b/git.c
@@ -514,7 +514,6 @@ int main(int argc, const char **argv)
 	argv++;
 	argc--;
 	handle_options(&argv, &argc, NULL);
-	commit_pager_choice();
 	if (argc > 0) {
 		if (!prefixcmp(argv[0], "--"))
 			argv[0] += 2;
-- 
1.7.0.rc1.541.g2da82.dirty

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-03-26 21:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-25 13:38 [PATCH 1/2] builtins: do not commit pager choice early Nguyễn Thái Ngọc Duy
2010-03-25 13:38 ` [PATCH 2/2] builtins: setup repository before print unknown command error Nguyễn Thái Ngọc Duy
2010-03-26 20:58   ` Jonathan Nieder
2010-03-26 20:03 ` [PATCH 1/2] builtins: do not commit pager choice early Jonathan Nieder

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.