Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Mar 2009 06:14:44 +0000 (UTC)
From:      Tim Kientzle <kientzle@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r189440 - head/lib/libarchive
Message-ID:  <200903060614.n266EiSD010358@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kientzle
Date: Fri Mar  6 06:14:44 2009
New Revision: 189440
URL: http://svn.freebsd.org/changeset/base/189440

Log:
  Merge r668 from libarchive.googlecode.com:  Style correction to the
  'ar' reader:  Don't redefine 'isdigit' and don't create a macro that's
  only used once.

Modified:
  head/lib/libarchive/archive_read_support_format_ar.c

Modified: head/lib/libarchive/archive_read_support_format_ar.c
==============================================================================
--- head/lib/libarchive/archive_read_support_format_ar.c	Fri Mar  6 06:13:25 2009	(r189439)
+++ head/lib/libarchive/archive_read_support_format_ar.c	Fri Mar  6 06:14:44 2009	(r189440)
@@ -72,8 +72,6 @@ struct ar {
 #define AR_fmag_offset 58
 #define AR_fmag_size 2
 
-#define isdigit(x)	(x) >= '0' && (x) <= '9'
-
 static int	archive_read_format_ar_bid(struct archive_read *a);
 static int	archive_read_format_ar_cleanup(struct archive_read *a);
 static int	archive_read_format_ar_read_data(struct archive_read *a,
@@ -309,8 +307,10 @@ archive_read_format_ar_read_header(struc
 	/*
 	 * GNU variant handles long filenames by storing /<number>
 	 * to indicate a name stored in the filename table.
+	 * XXX TODO: Verify that it's all digits... Don't be fooled
+	 * by "/9xyz" XXX
 	 */
-	if (filename[0] == '/' && isdigit(filename[1])) {
+	if (filename[0] == '/' && filename[1] >= '0' && filename[1] <= '9') {
 		number = ar_atol10(h + AR_name_offset + 1, AR_name_size - 1);
 		/*
 		 * If we can't look up the real name, warn and return



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