PERFORCE change 123553 for review
Garrett Cooper
gcooper at FreeBSD.org
Sun Jul 15 22:18:08 UTC 2007
http://perforce.freebsd.org/chv.cgi?CH=123553
Change 123553 by gcooper at optimus-revised_pkgtools on 2007/07/15 22:17:41
Important base case I didn't think of before. If the length of the string returned was null, no dice, exit add_plist immediately.
This fixes pkg_version.
Affected files ...
.. //depot/projects/soc2007/revised_fbsd_pkgtools/usr/src/usr.sbin/pkg_install/lib/plist.c#10 edit
Differences ...
==== //depot/projects/soc2007/revised_fbsd_pkgtools/usr/src/usr.sbin/pkg_install/lib/plist.c#10 (text+ko) ====
@@ -357,19 +357,18 @@
return PLIST_CONFLICTS;
/** FALL-THROUGH **/
-
case 'e':
/** EXEC **/
if (!strcmp(cmd, "exec"))
return PLIST_CMD;
+
/** FALL-THROUGH **/
-
case 'u':
/** UN(DO)EXEC **/
if (!strcmp(cmd, "unexec"))
return PLIST_UNEXEC;
+
/** FALL-THROUGH **/
-
case 'i':
/** IGNORE **/
if (!strcmp(cmd, "ignore"))
@@ -377,8 +376,8 @@
/** IGNORE_INST **/
else if(!strcmp(cmd, "ignore_inst"))
return PLIST_IGNORE_INST;
+
/** FALL-THROUGH **/
-
case 'd':
/** DIRRM **/
if (!strcmp(cmd, "dirrm"))
@@ -386,8 +385,8 @@
/** DISPLAY **/
else if(!strcmp(cmd, "display"))
return PLIST_DISPLAY;
+
/** FALL-THROUGH **/
-
case 'n':
/** NAME **/
if(!strcmp(cmd, "name"))
@@ -395,8 +394,8 @@
/** NOINST **/
else if (!strcmp(cmd, "noinst"))
return PLIST_NOINST;
+
/** FALL-THROUGH **/
-
case 'm':
/** MODE **/
if(!strcmp(cmd, "mode"))
@@ -404,8 +403,8 @@
/** MTREE **/
else if(!strcmp(cmd, "mtree"))
return PLIST_MTREE;
+
/** FALL-THROUGH **/
-
case 'o':
/** OWNER **/
if(!strcmp(cmd, "owner"))
@@ -413,28 +412,28 @@
/** OPTION **/
else if (!strcmp(cmd, "option"))
return PLIST_OPTION;
+
/** FALL-THROUGH **/
-
case 's':
/** SRCDIR **/
if(!strcmp(cmd, "srcdir"))
return PLIST_SRC;
+
/** FALL-THROUGH **/
-
case 'g':
/** GROUP **/
if (!strcmp(cmd, "group"))
return PLIST_CHGRP;
+
/** FALL-THROUGH **/
-
case 'p':
/** PKGDEP **/
if (!strcmp(cmd, "pkgdep"))
return PLIST_PKGDEP;
+
/** FALL-THROUGH **/
- /** Apparently the command didn't match .. oops **/
- default:
+ default: /** Apparently the command didn't match anything above .. oops **/
return FAIL;
}
@@ -461,10 +460,15 @@
pkg->fmtver_mnr = 2;
pkg->origin = NULL;
- plines = fileGetContentsByDescriptor(fp, "+CONTENTS");
+ plines = fileGetContentsByDescriptor(fp, CONTENTS_FNAME);
+
+ if(0 == strlen(plines))
+ return;
pline = strtok(plines, "\n");
+ assert(pline != NULL);
+
if(0 == trim_end_whitespace(pline))
errx(-1, "Length of first line was 0. This shouldn't happen");
More information about the p4-projects
mailing list