"schema" node finding for non qualified name

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@567 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
inoussa 2008-09-21 16:59:30 +00:00
parent 650f9e9b34
commit 0a9511fbc8
2 changed files with 11 additions and 3 deletions

View File

@ -124,7 +124,7 @@
</Units>
</ProjectOptions>
<CompilerOptions>
<Version Value="5"/>
<Version Value="8"/>
<PathDelim Value="\"/>
<Target>
<Filename Value="ws_helper.exe"/>
@ -141,7 +141,6 @@
</SyntaxOptions>
</Parsing>
<CodeGeneration>
<Generate Value="Faster"/>
<Optimizations>
<OptimizationLevel Value="2"/>
</Optimizations>

View File

@ -1231,6 +1231,15 @@ begin
ParseFilter(CreateQualifiedNameFilterStr(s_schema,FXSShortNames),TDOMNodeRttiExposer)
);
FSchemaCursor.Reset();
if FSchemaCursor.MoveNext() then begin
FSchemaCursor.Reset();
end else begin
FSchemaCursor := CreateCursorOn(
CreateChildrenCursor(locObj.InnerObject,cetRttiNode),
ParseFilter(Format('%s=%s',[s_NODE_NAME,QuotedStr(s_schema)]),TDOMNodeRttiExposer)
);
FSchemaCursor.Reset();
end;
end;
end;
@ -1248,7 +1257,7 @@ var
begin
i := FXsdParsers.IndexOf(ANamespace);
if ( i < 0 ) then
raise EXsdParserAssertException.CreateFmt('Unable to find the parser of the parser, namespace : "%s".',[ANamespace]);
raise EXsdParserAssertException.CreateFmt('Unable to find the parser, namespace : "%s".',[ANamespace]);
Result := (FXsdParsers.Objects[i] as TIntfObjectRef).Intf as IXsdPaser;
end;