mORMot and Open Source friends
Check-in [077dbf58cc]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:{4354} fixed ExceptionInheritsFrom() - again
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 077dbf58cc53a7f1abab0afa0b1ca6dfa3624d3b
User & Date: ab 2018-02-28 09:12:42
Context
2018-02-28
11:01
{4355} fixed multithreaded cache access in TMVCRunOnRestServer - another achechulin patch check-in: 2b47f14411 user: ab tags: trunk
09:12
{4354} fixed ExceptionInheritsFrom() - again check-in: 077dbf58cc user: ab tags: trunk
09:05
{4353} fixed ExceptionInheritsFrom() for some FPC versions check-in: a801b139a4 user: ab tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to SynLog.pas.

2812
2813
2814
2815
2816
2817
2818



2819
2820
2821

2822
2823
2824
2825
2826
2827
2828
function ExceptionInheritsFrom(E: TClass; const Name: ShortString): boolean;
begin // avoid linking of ComObj.pas just for EOleSysError
  while (E<>nil) and (E<>Exception) do
    if IdemPropName(PShortString(PPointer(PtrInt(E)+vmtClassName)^)^,Name) then begin
      result := true;
      exit;
    end else begin



      E := {$ifdef FPC}E.ClassParent{$else}PPointer(PtrInt(E)+vmtParent)^{$endif};
      if E<>nil then
        E := PPointer(E)^;

    end;
  result := false;
end;

{$endif MSWINDOWS}

function InternalDefaultSynLogExceptionToStr(






>
>
>
|


>







2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
function ExceptionInheritsFrom(E: TClass; const Name: ShortString): boolean;
begin // avoid linking of ComObj.pas just for EOleSysError
  while (E<>nil) and (E<>Exception) do
    if IdemPropName(PShortString(PPointer(PtrInt(E)+vmtClassName)^)^,Name) then begin
      result := true;
      exit;
    end else begin
      {$ifdef FPC}
      E := E.ClassParent;
      {$else}
      E := PPointer(PtrInt(E)+vmtParent)^;
      if E<>nil then
        E := PPointer(E)^;
      {$endif}
    end;
  result := false;
end;

{$endif MSWINDOWS}

function InternalDefaultSynLogExceptionToStr(

Changes to SynopseCommit.inc.

1
'1.18.4353'
|
1
'1.18.4354'