Bail out of RtlQueryRegistryValues if RTL_QUERY_REGISTRY_REQUIRED specified

and value not found

svn path=/trunk/; revision=6425
This commit is contained in:
Gé van Geldorp 2003-10-24 21:38:33 +00:00
parent cda5a1a107
commit bdb5b824b5

View file

@ -459,12 +459,15 @@ RtlQueryRegistryValues(IN ULONG RelativeTo,
&ResultSize); &ResultSize);
if (!NT_SUCCESS(Status)) if (!NT_SUCCESS(Status))
{ {
Status = QueryEntry->QueryRoutine(QueryEntry->Name, if (! (QueryEntry->Flags & RTL_QUERY_REGISTRY_REQUIRED))
QueryEntry->DefaultType, {
QueryEntry->DefaultData, Status = QueryEntry->QueryRoutine(QueryEntry->Name,
QueryEntry->DefaultLength, QueryEntry->DefaultType,
Context, QueryEntry->DefaultData,
QueryEntry->EntryContext); QueryEntry->DefaultLength,
Context,
QueryEntry->EntryContext);
}
} }
else if ((ValueInfo->Type == REG_MULTI_SZ) && else if ((ValueInfo->Type == REG_MULTI_SZ) &&
!(QueryEntry->Flags & RTL_QUERY_REGISTRY_NOEXPAND)) !(QueryEntry->Flags & RTL_QUERY_REGISTRY_NOEXPAND))