--- /dev/null
+Index: lib/fsm.c
+===================================================================
+RCS file: /cvs/devel/rpm/lib/fsm.c,v
+retrieving revision 2.101
+retrieving revision 2.102
+diff -u -u -r2.101 -r2.102
+--- rpm/lib/fsm.c 5 Jan 2004 14:09:47 -0000 2.101
++++ rpm/lib/fsm.c 9 Jan 2004 23:20:07 -0000 2.102
+@@ -2152,7 +2152,7 @@
+ }
+ break;
+ case FSM_LSETFCON:
+- if (fsm->fcontext == NULL)
++ if (fsm->fcontext == NULL || *fsm->fcontext == '\0')
+ break;
+ rc = lsetfilecon(fsm->path, (security_context_t)fsm->fcontext);
+ if (_fsm_debug && (stage & FSM_SYSCALL))
+Index: lib/rpmfi.c
+===================================================================
+RCS file: /cvs/devel/rpm/lib/rpmfi.c,v
+retrieving revision 2.52
+retrieving revision 2.54
+diff -u -u -r2.52 -r2.54
+--- rpm/lib/rpmfi.c 5 Jan 2004 14:09:47 -0000 2.52
++++ rpm/lib/rpmfi.c 9 Jan 2004 23:17:33 -0000 2.54
+@@ -1593,7 +1593,7 @@
+ fi = rpmfiInit(fi, 0);
+ if (fi != NULL)
+ while (rpmfiNext(fi) >= 0) {
+- av[ac] = NULL;
++ av[ac] = "";
+ if (fcnb[ac] > 0) {
+ av[ac] = t;
+ t += fcnb[ac];
+@@ -1670,7 +1670,7 @@
+ fi = rpmfiInit(fi, 0);
+ if (fi != NULL)
+ while (rpmfiNext(fi) >= 0) {
+- av[ac] = NULL;
++ av[ac] = "";
+ if (fcnb[ac] > 0) {
+ av[ac] = t;
+ t += fcnb[ac];