Wrapped parameter generation fix

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@505 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
inoussa
2008-07-03 16:42:26 +00:00
parent 2549456a52
commit c8ea997a2b

View File

@ -694,12 +694,18 @@ Var
elt := SymbolTable.FindElement(SymbolTable.GetExternalName(elt)); elt := SymbolTable.FindElement(SymbolTable.GetExternalName(elt));
if elt.InheritsFrom(TPasUnresolvedTypeRef) then begin if elt.InheritsFrom(TPasUnresolvedTypeRef) then begin
Indent(); WriteLn('if ( PTypeInfo(TypeInfo(%s))^.Kind = tkClass ) then',[elt.Name]); Indent(); WriteLn('if ( PTypeInfo(TypeInfo(%s))^.Kind = tkClass ) then',[elt.Name]);
IncIndent();
Indent(); WriteLn('if ( %s <> nil ) then',[sOUTPUT_PARAM]);
IncIndent(); IncIndent();
Indent(); WriteLn('TObject(%s.%s) := nil;',[sOUTPUT_PARAM,origineResProp.Name]); Indent(); WriteLn('TObject(%s.%s) := nil;',[sOUTPUT_PARAM,origineResProp.Name]);
DecIndent(); DecIndent();
DecIndent();
end else begin end else begin
if SymbolTable.IsOfType(TPasType(elt),TPasClassType) then begin if SymbolTable.IsOfType(TPasType(elt),TPasClassType) then begin
Indent(); WriteLn('if ( %s <> nil ) then',[sOUTPUT_PARAM]);
IncIndent();
Indent(); WriteLn('%s.%s := nil;',[sOUTPUT_PARAM,origineResProp.Name]); Indent(); WriteLn('%s.%s := nil;',[sOUTPUT_PARAM,origineResProp.Name]);
DecIndent();
end; end;
end; end;
end; end;