socsvn commit: r259257 - soc2013/dpl/head/usr.bin/bsdiff/bsdiff
dpl at FreeBSD.org
dpl at FreeBSD.org
Wed Oct 30 20:08:43 UTC 2013
Author: dpl
Date: Wed Oct 30 20:08:43 2013
New Revision: 259257
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=259257
Log:
Make bsdiff allocate new.
Modified:
soc2013/dpl/head/usr.bin/bsdiff/bsdiff/bsdiff.c
Modified: soc2013/dpl/head/usr.bin/bsdiff/bsdiff/bsdiff.c
==============================================================================
--- soc2013/dpl/head/usr.bin/bsdiff/bsdiff/bsdiff.c Wed Oct 30 18:40:55 2013 (r259256)
+++ soc2013/dpl/head/usr.bin/bsdiff/bsdiff/bsdiff.c Wed Oct 30 20:08:43 2013 (r259257)
@@ -32,6 +32,7 @@
#include <bzlib.h>
#include <err.h>
+#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
@@ -231,13 +232,13 @@
err(1,"%s",argv[3]);
cap_rights_init(&rights,CAP_READ,CAP_SEEK);
- if (cap_rights_limit(oldfd,&filerights) < 0 && errno != ENOSYS)
+ if (cap_rights_limit(oldfd,&rights) < 0 && errno != ENOSYS)
err(1,"Couldn't limit fd");
- if (cap_rights_limit(newfd,&filerights) < 0 && errno != ENOSYS)
+ if (cap_rights_limit(newfd,&rights) < 0 && errno != ENOSYS)
err(1,"Couldn't limit fd");
cap_rights_init(&rights,CAP_WRITE,CAP_SEEK);
- if (cap_rights_limit(fileno(pf),&pathrights) < 0 && errno != ENOSYS)
+ if (cap_rights_limit(fileno(pf),&rights) < 0 && errno != ENOSYS)
err(1,"Couldn't limit fd");
if (cap_enter() < 0 && errno != ENOSYS)
@@ -249,7 +250,7 @@
err(1,"%s",argv[1]);
if ((old = malloc(oldsize + 1)) == NULL)
err(1,"%s",argv[1]);
- if ((lseek(oldfd,0,SEEK_SET) != 0)
+ if (lseek(oldfd,0,SEEK_SET) != 0)
err(1,"%s",argv[1]);
if (read(oldfd,old,oldsize) != oldsize)
err(1,"%s",argv[1]);
@@ -267,9 +268,11 @@
that we never try to malloc(0) and get a NULL pointer */
if ((newsize = lseek(newfd,0,SEEK_END)) == -1)
err(1,"%s",argv[1]);
+ if ((new=malloc(newsize+1)) == NULL)
+ err(1,"%s",argv[1]);
if ((old = malloc(newsize + 1)) == NULL)
err(1,"%s",argv[1]);
- if ((lseek(newfd,0,SEEK_SET) != 0)
+ if (lseek(newfd,0,SEEK_SET) != 0)
err(1,"%s",argv[1]);
if (read(newfd,old,newsize) != newsize)
err(1,"%s",argv[1]);
More information about the svn-soc-all
mailing list