Code

diff.c: don't add extra '/' to pathname
authorLinus Torvalds <torvalds@ppc970.osdl.org>
Wed, 27 Apr 2005 17:21:13 +0000 (10:21 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Wed, 27 Apr 2005 17:21:13 +0000 (10:21 -0700)
The "base" string already contains any finishing "/", so the way
to get the full pathname is to just concatenate the base and
path directly, with no extra slashes in between.

diff.c

diff --git a/diff.c b/diff.c
index 73834898f22544271cb628186116b3949ba18db2..4cc41f097dfe1ade230d2d6e438b0249dfbc1a76 100644 (file)
--- a/diff.c
+++ b/diff.c
@@ -256,7 +256,6 @@ void diff_addremove(int addremove, unsigned mode,
        
        if (path) {
                strcpy(concatpath, base);
-               strcat(concatpath, "/");
                strcat(concatpath, path);
        }
        run_external_diff(path ? concatpath : base, one, two);
@@ -278,7 +277,6 @@ void diff_change(unsigned old_mode, unsigned new_mode,
 
        if (path) {
                strcpy(concatpath, base);
-               strcat(concatpath, "/");
                strcat(concatpath, path);
        }
        run_external_diff(path ? concatpath : base, &spec[0], &spec[1]);