* ensure that FLock is released in case of an exception

git-svn-id: trunk@37385 -
This commit is contained in:
svenbarth 2017-10-02 18:51:52 +00:00
parent 1bf758c997
commit 794eb7c122

View File

@ -619,10 +619,13 @@ begin
Exit(Nil);
{$ifdef FPC_HAS_FEATURE_THREADING}
EnterCriticalsection(FLock);
try
{$endif}
Result := Copy(FTypesList, 0, FTypeCount);
{$ifdef FPC_HAS_FEATURE_THREADING}
finally
LeaveCriticalsection(FLock);
end;
{$endif}
end;
@ -634,6 +637,7 @@ begin
Exit(Nil);
{$ifdef FPC_HAS_FEATURE_THREADING}
EnterCriticalsection(FLock);
try
{$endif}
Result := Nil;
for i := 0 to FTypeCount - 1 do
@ -665,7 +669,9 @@ begin
Inc(FTypeCount);
end;
{$ifdef FPC_HAS_FEATURE_THREADING}
finally
LeaveCriticalsection(FLock);
end;
{$endif}
end;