svn commit: r290157 - head/usr.bin/ar

Bryan Drewery bdrewery at FreeBSD.org
Thu Oct 29 19:28:23 UTC 2015


Author: bdrewery
Date: Thu Oct 29 19:28:21 2015
New Revision: 290157
URL: https://svnweb.freebsd.org/changeset/base/290157

Log:
  Check archive_entry_new() result.
  
  Coverity CID:	1331341

Modified:
  head/usr.bin/ar/write.c

Modified: head/usr.bin/ar/write.c
==============================================================================
--- head/usr.bin/ar/write.c	Thu Oct 29 19:07:00 2015	(r290156)
+++ head/usr.bin/ar/write.c	Thu Oct 29 19:28:21 2015	(r290157)
@@ -664,6 +664,9 @@ write_objs(struct bsdar *bsdar)
 	if ((bsdar->s_cnt != 0 && !(bsdar->options & AR_SS)) ||
 	    bsdar->options & AR_S) {
 		entry = archive_entry_new();
+		if (entry == NULL)
+			bsdar_errc(bsdar, EX_SOFTWARE, 0,
+			    "archive_entry_new failed");
 		archive_entry_copy_pathname(entry, "/");
 		if ((bsdar->options & AR_D) == 0)
 			archive_entry_set_mtime(entry, time(NULL), 0);
@@ -681,6 +684,9 @@ write_objs(struct bsdar *bsdar)
 	/* write the archive string table, if any. */
 	if (bsdar->as != NULL) {
 		entry = archive_entry_new();
+		if (entry == NULL)
+			bsdar_errc(bsdar, EX_SOFTWARE, 0,
+			    "archive_entry_new failed");
 		archive_entry_copy_pathname(entry, "//");
 		archive_entry_set_size(entry, bsdar->as_sz);
 		AC(archive_write_header(a, entry));
@@ -691,6 +697,9 @@ write_objs(struct bsdar *bsdar)
 	/* write normal members. */
 	TAILQ_FOREACH(obj, &bsdar->v_obj, objs) {
 		entry = archive_entry_new();
+		if (entry == NULL)
+			bsdar_errc(bsdar, EX_SOFTWARE, 0,
+			    "archive_entry_new failed");
 		archive_entry_copy_pathname(entry, obj->name);
 		archive_entry_set_uid(entry, obj->uid);
 		archive_entry_set_gid(entry, obj->gid);


More information about the svn-src-head mailing list