Selaa lähdekoodia

+ added a getter for the NewExeSegmentFlags property, that returns the
nesfHasRelocationData flag according to whether the Relocations list is
non-empty

git-svn-id: trunk@42746 -

nickysn 6 vuotta sitten
vanhempi
commit
94e22f1262
1 muutettua tiedostoa jossa 11 lisäystä ja 1 poistoa
  1. 11 1
      compiler/ogomf.pas

+ 11 - 1
compiler/ogomf.pas

@@ -725,6 +725,7 @@ interface
         FSizeInFile: QWord;
         FRelocations: TNewExeRelocationList;
         function GetMinAllocSize: QWord;
+        function GetNewExeSegmentFlags: TNewExeSegmentFlags;
       public
         constructor create(AList:TFPHashObjectList;const AName:string);override;
         destructor destroy;override;
@@ -740,7 +741,7 @@ interface
         property DataPosSectors: Word read FDataPosSectors write FDataPosSectors;
         property MinAllocSize: QWord read GetMinAllocSize;
         property SizeInFile: QWord read FSizeInFile write FSizeInFile;
-        property NewExeSegmentFlags: TNewExeSegmentFlags read FNewExeSegmentFlags write FNewExeSegmentFlags;
+        property NewExeSegmentFlags: TNewExeSegmentFlags read GetNewExeSegmentFlags write FNewExeSegmentFlags;
         property Relocations: TNewExeRelocationList read FRelocations;
       end;
 
@@ -4361,6 +4362,15 @@ cleanup:
         Result:=Size-StackSize;
       end;
 
+    function TNewExeSection.GetNewExeSegmentFlags: TNewExeSegmentFlags;
+      begin
+        Result:=FNewExeSegmentFlags;
+        if Relocations.Count>0 then
+          Include(Result,nesfHasRelocationData)
+        else
+          Exclude(Result,nesfHasRelocationData);
+      end;
+
     constructor TNewExeSection.create(AList:TFPHashObjectList;const AName:string);
       begin
         inherited create(AList, AName);