Thread (6 messages) flat view 6 messages, 3 authors, 2016-06-15

Re: update-cache ./test.c

From: Lennert Buytenhek <hidden>
Date: 2016-06-15 22:41:55

On Sun, May 01, 2005 at 10:54:27AM +0200, Lennert Buytenhek wrote:
But that wasn't quite the point :)  It makes sense that update-cache
doesn't like ambiguous path names, but it's easier for update-cache to
detect and strip "^./" than for me to remember to type sed "s#^./##"
every time.
Something like this:
--- git/update-cache.c.orig	2005-05-01 10:56:17.859313581 +0200
+++ git/update-cache.c	2005-05-01 10:57:31.634897508 +0200
@@ -328,6 +328,7 @@
 
 	for (i = 1 ; i < argc; i++) {
 		char *path = argv[i];
+		char *_path;
 
 		if (allow_options && *path == '-') {
 			if (!strcmp(path, "--")) {
@@ -358,12 +359,15 @@
 			}
 			die("unknown option %s", path);
 		}
-		if (!verify_path(path)) {
+		_path = path;
+		if (!strncmp(_path, "./", 2))
+			_path += 2;
+		if (!verify_path(_path)) {
 			fprintf(stderr, "Ignoring path %s\n", argv[i]);
 			continue;
 		}
-		if (add_file_to_cache(path))
-			die("Unable to add %s to database", path);
+		if (add_file_to_cache(_path))
+			die("Unable to add %s to database", _path);
 	}
 	if (write_cache(newfd, active_cache, active_nr) || rename(lockfile, indexfile))
 		die("Unable to write new cachefile");

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help