diff -up openscap-0.8.3/src/XCCDF/resolve.c.resolve openscap-0.8.3/src/XCCDF/resolve.c --- openscap-0.8.3/src/XCCDF/resolve.c.resolve 2012-07-25 09:44:55.000000000 +0200 +++ openscap-0.8.3/src/XCCDF/resolve.c 2012-07-31 14:25:33.374437192 +0200 @@ -102,8 +102,10 @@ static void xccdf_resolve_warning(void * #define XCCDF_RESOLVE_FLAG(ITEM,PARENT,FLAGNAME) do { \ if (!ITEM->item.defined_flags.FLAGNAME) { \ - ITEM->item.flags.FLAGNAME = PARENT->item.flags.FLAGNAME; \ - ITEM->item.defined_flags.FLAGNAME = true; \ + if (PARENT->item.defined_flags.FLAGNAME) { \ + ITEM->item.flags.FLAGNAME = PARENT->item.flags.FLAGNAME; \ + ITEM->item.defined_flags.FLAGNAME = true; \ + } \ }\ } while (false)