svn commit: branches/busybox_1_1_stable/editors

aldot at busybox.net aldot at busybox.net
Fri May 19 10:49:39 UTC 2006


Author: aldot
Date: 2006-05-19 03:49:38 -0700 (Fri, 19 May 2006)
New Revision: 15113

Log:
Patch to fix bug 868, and some related cleanup while I was in the area.
A tab is now taken as the end of filename if it's there, but if it isn't
(because the timestamp isn't there) we continue with the existing untruncated
line as the filename.
(r15025 from trunk plus coding-style fixes for the patch)


Modified:
   branches/busybox_1_1_stable/editors/patch.c


Changeset:
Modified: branches/busybox_1_1_stable/editors/patch.c
===================================================================
--- branches/busybox_1_1_stable/editors/patch.c	2006-05-19 10:45:16 UTC (rev 15112)
+++ branches/busybox_1_1_stable/editors/patch.c	2006-05-19 10:49:38 UTC (rev 15113)
@@ -54,29 +54,19 @@
 
 static char *extract_filename(char *line, int patch_level)
 {
-	char *filename_start_ptr = line + 4;
+	char *temp, *filename_start_ptr = line + 4;
 	int i;
 
 	/* Terminate string at end of source filename */
-	{
-		char *line_ptr;
-		line_ptr = strchr(filename_start_ptr, '\t');
-		if (!line_ptr) {
-			bb_perror_msg("Malformed line %s", line);
-			return(NULL);
-		}
-		*line_ptr = '\0';
-	}
+	temp = strchr(filename_start_ptr, '\t');
+	if (temp)
+		*temp = 0;
 
 	/* Skip over (patch_level) number of leading directories */
 	for (i = 0; i < patch_level; i++) {
-		char *dirname_ptr;
-
-		dirname_ptr = strchr(filename_start_ptr, '/');
-		if (!dirname_ptr) {
+		if (!(temp = strchr(filename_start_ptr, '/')))
 			break;
-		}
-		filename_start_ptr = dirname_ptr + 1;
+		filename_start_ptr = temp + 1;
 	}
 
 	return(bb_xstrdup(filename_start_ptr));




More information about the busybox-cvs mailing list