mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-12 22:14:25 +02:00
* pas2jni: Again fixed exclusion of descendant classes.
git-svn-id: trunk@29161 -
This commit is contained in:
parent
830e3ceb0d
commit
0809bde8f2
@ -1256,14 +1256,22 @@ procedure TWriter.WriteUnit(u: TUnitDef);
|
|||||||
i: integer;
|
i: integer;
|
||||||
d: TDef;
|
d: TDef;
|
||||||
s: string;
|
s: string;
|
||||||
|
excl: boolean;
|
||||||
begin
|
begin
|
||||||
for i:=0 to u.Count - 1 do begin
|
for i:=0 to u.Count - 1 do begin
|
||||||
d:=u[i];
|
d:=u[i];
|
||||||
if d.DefType = dtClass then begin
|
if d.DefType = dtClass then begin
|
||||||
s:=u.Name + '.' + d.Name;
|
s:=u.Name + '.' + d.Name;
|
||||||
if (TClassDef(d).AncestorClass = AAncestorClass) or
|
if AAncestorClass = nil then begin
|
||||||
( (AAncestorClass = nil) and (DoCheckItem(u.Name + '.' + d.Name) = crExclude) )
|
excl:=DoCheckItem(s) = crExclude;
|
||||||
then begin
|
if not excl then
|
||||||
|
with TClassDef(d).AncestorClass do
|
||||||
|
excl:=DoCheckItem(Parent.Name + '.' + Name) = crExclude;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
excl:=TClassDef(d).AncestorClass = AAncestorClass;
|
||||||
|
|
||||||
|
if excl then begin
|
||||||
d.SetNotUsed;
|
d.SetNotUsed;
|
||||||
ExcludeList.Add(s);
|
ExcludeList.Add(s);
|
||||||
_ExcludeClasses(TClassDef(d));
|
_ExcludeClasses(TClassDef(d));
|
||||||
|
Loading…
Reference in New Issue
Block a user