- Add patch to shuffle around the command line realloc loop to

avoid a assigning endp to the end of the buffer then realloc()ing
  the buffer to a different location. 'cmdwatch ps ruaxww' failed
  consistently due to this bug.
- Bump PORTREVISION.

Submitted by:	brian@ (via private mail)
Approved by:	miwi (mentor, implicit)
This commit is contained in:
beat
2009-06-06 08:14:40 +00:00
parent 5a189a6a7d
commit 71f925aa2d
2 changed files with 21 additions and 1 deletions
+1 -1
View File
@@ -7,7 +7,7 @@
PORTNAME= cmdwatch
PORTVERSION= 0.2.0
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= sysutils
MASTER_SITES= http://www.chruetertee.ch/files/download/
+20
View File
@@ -0,0 +1,20 @@
--- cmdwatch.c.orig 2009-06-04 01:07:21.000000000 -0700
+++ cmdwatch.c 2009-06-04 01:11:52.000000000 -0700
@@ -163,12 +163,11 @@
command_length = strlen(command);
for (;optind<argc;optind++)
{
- int s = strlen(argv[optind]);
- char *endp = &command[command_length];
- *endp = ' ';
- command_length += s + 1;
- command = realloc(command, command_length+1);
- strcpy(endp+1, argv[optind]);
+ int nlen = command_length + 1 + strlen(argv[optind]);
+ command = realloc(command, nlen + 1);
+ command[command_length] = ' ';
+ strcpy(command + command_length + 1, argv[optind]);
+ command_length = nlen;
}
get_terminal_size();