diff --git a/dlls/msi/action.c b/dlls/msi/action.c index 5328193a848..511d82b0396 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c @@ -3245,8 +3245,7 @@ static UINT ACTION_ProcessComponents(MSIPACKAGE *package) '>','=',' ','%','i',' ','O','R','D','E','R',' ','B','Y',' ', '`','D','i','s','k','I','d','`',0}; - file = get_loaded_file(package, comp->KeyPath); - if (!file) + if (!comp->KeyPath || !(file = get_loaded_file(package, comp->KeyPath))) continue; row = MSI_QueryGetRecord(package->db, query, file->Sequence); diff --git a/dlls/msi/classes.c b/dlls/msi/classes.c index 9305e043ea9..d11f48b4eab 100644 --- a/dlls/msi/classes.c +++ b/dlls/msi/classes.c @@ -850,8 +850,7 @@ UINT ACTION_RegisterClassInfo(MSIPACKAGE *package) } feature->Action = feature->ActionRequest; - file = get_loaded_file( package, comp->KeyPath ); - if (!file) + if (!comp->KeyPath || !(file = get_loaded_file( package, comp->KeyPath ))) { TRACE("COM server not provided, skipping class %s\n", debugstr_w(cls->clsid)); continue;