Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Oct 2013 20:08:43 GMT
From:      dpl@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r259257 - soc2013/dpl/head/usr.bin/bsdiff/bsdiff
Message-ID:  <201310302008.r9UK8hwB068768@socsvn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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]);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310302008.r9UK8hwB068768>