git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ls-files: Don't require exclude files to end with a newline.
@ 2006-03-18 10:27 Alexandre Julliard
  2006-03-19 21:29 ` Petr Baudis
  0 siblings, 1 reply; 3+ messages in thread
From: Alexandre Julliard @ 2006-03-18 10:27 UTC (permalink / raw)
  To: git

Without this patch, the last line of an exclude file is silently
ignored if it doesn't end with a newline.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

---

 ls-files.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

9c5a78851bcf3b541364f818f6b397c29a8f4592
diff --git a/ls-files.c b/ls-files.c
index df25c8c..e42119c 100644
--- a/ls-files.c
+++ b/ls-files.c
@@ -92,11 +92,12 @@ static int add_excludes_from_file_1(cons
 		close(fd);
 		return 0;
 	}
-	buf = xmalloc(size);
+	buf = xmalloc(size+1);
 	if (read(fd, buf, size) != size)
 		goto err;
 	close(fd);
 
+	buf[size++] = '\n';
 	entry = buf;
 	for (i = 0; i < size; i++) {
 		if (buf[i] == '\n') {
-- 
1.2.4.g5a1f-dirty

-- 
Alexandre Julliard
julliard@winehq.org

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

* Re: [PATCH] ls-files: Don't require exclude files to end with a newline.
  2006-03-18 10:27 [PATCH] ls-files: Don't require exclude files to end with a newline Alexandre Julliard
@ 2006-03-19 21:29 ` Petr Baudis
  2006-03-20  9:14   ` Alexandre Julliard
  0 siblings, 1 reply; 3+ messages in thread
From: Petr Baudis @ 2006-03-19 21:29 UTC (permalink / raw)
  To: Alexandre Julliard; +Cc: git

Dear diary, on Sat, Mar 18, 2006 at 11:27:45AM CET, I got a letter
where Alexandre Julliard <julliard@winehq.org> said that...
> Without this patch, the last line of an exclude file is silently
> ignored if it doesn't end with a newline.
> 
> Signed-off-by: Alexandre Julliard <julliard@winehq.org>

$ echo -en "a\nb" | wc -l
1

In UNIX, a line is a string terminated by a newline, therefore the blob
past the last newline character is not really a line at all. ;-)

Perhaps a warning might be in order. Why don't you just add the trailing
newline to the file?

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
Right now I am having amnesia and deja-vu at the same time.  I think
I have forgotten this before.

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

* Re: [PATCH] ls-files: Don't require exclude files to end with a newline.
  2006-03-19 21:29 ` Petr Baudis
@ 2006-03-20  9:14   ` Alexandre Julliard
  0 siblings, 0 replies; 3+ messages in thread
From: Alexandre Julliard @ 2006-03-20  9:14 UTC (permalink / raw)
  To: Petr Baudis; +Cc: git

Petr Baudis <pasky@suse.cz> writes:

> Dear diary, on Sat, Mar 18, 2006 at 11:27:45AM CET, I got a letter
> where Alexandre Julliard <julliard@winehq.org> said that...
>> Without this patch, the last line of an exclude file is silently
>> ignored if it doesn't end with a newline.
>> 
>> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
>
> $ echo -en "a\nb" | wc -l
> 1
>
> In UNIX, a line is a string terminated by a newline, therefore the blob
> past the last newline character is not really a line at all. ;-)
>
> Perhaps a warning might be in order. Why don't you just add the trailing
> newline to the file?

Of course I can do that, but I think that if a user entered something
on the last line it's a safe bet they didn't mean for it to be
ignored; and since it's trivial to DTRT here, I don't see why we
shouldn't.

-- 
Alexandre Julliard
julliard@winehq.org

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

end of thread, other threads:[~2006-03-20  9:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-18 10:27 [PATCH] ls-files: Don't require exclude files to end with a newline Alexandre Julliard
2006-03-19 21:29 ` Petr Baudis
2006-03-20  9:14   ` Alexandre Julliard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).