Code

Merge branch 'maint'
authorJunio C Hamano <gitster@pobox.com>
Tue, 20 Jul 2010 18:29:30 +0000 (11:29 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 20 Jul 2010 18:29:30 +0000 (11:29 -0700)
* maint:
  t/README: clarify test_must_fail description
  Check size of path buffer before writing into it

Conflicts:
t/README

setup.c
t/README

diff --git a/setup.c b/setup.c
index 87c21f02e0e3bedb42305bbfe2b4223885d4250f..276916052795c5ffa872b57a7e6723edc71dfdc4 100644 (file)
--- a/setup.c
+++ b/setup.c
@@ -170,6 +170,8 @@ static int is_git_directory(const char *suspect)
        char path[PATH_MAX];
        size_t len = strlen(suspect);
 
+       if (PATH_MAX <= len + strlen("/objects"))
+               die("Too long path: %.*s", 60, suspect);
        strcpy(path, suspect);
        if (getenv(DB_ENVIRONMENT)) {
                if (access(getenv(DB_ENVIRONMENT), X_OK))
index b906ceb4766a283ae6b22bd037f9e1619feb12d1..a5901424388b9cfb525b7bdbfd6d5afda3c9e014 100644 (file)
--- a/t/README
+++ b/t/README
@@ -451,8 +451,10 @@ library for your script to use.
  - test_must_fail <git-command>
 
    Run a git command and ensure it fails in a controlled way.  Use
-   this instead of "! <git-command>" to fail when git commands
-   segfault.
+   this instead of "! <git-command>".  When git-command dies due to a
+   segfault, test_must_fail diagnoses it as an error; "! <git-command>"
+   treats it as just another expected failure, which would let such a
+   bug go unnoticed.
 
  - test_might_fail <git-command>