Browse Source

* removed unaligned workarounds

git-svn-id: trunk@4831 -
florian 19 years ago
parent
commit
de87469127
1 changed files with 7 additions and 18 deletions
  1. 7 18
      fcl/db/memds/memds.pp

+ 7 - 18
fcl/db/memds/memds.pp

@@ -125,12 +125,12 @@ type
     function  MDSFilterRecord(Buffer: PChar): Boolean;
     function  MDSFilterRecord(Buffer: PChar): Boolean;
     function  MDSGetRecInfo(Buffer: PChar): TMTRecInfo;
     function  MDSGetRecInfo(Buffer: PChar): TMTRecInfo;
     procedure MDSSetRecInfo(Buffer: PChar;
     procedure MDSSetRecInfo(Buffer: PChar;
-                            Flag: TBookmarkFlag); 
+                            Flag: TBookmarkFlag);
     procedure MDSSetRecInfo(Buffer: PChar;
     procedure MDSSetRecInfo(Buffer: PChar;
                             Flag: TBookmarkFlag;
                             Flag: TBookmarkFlag;
-                            ABookmark: Longint); 
+                            ABookmark: Longint);
     procedure MDSSetRecInfo(Buffer: PChar;
     procedure MDSSetRecInfo(Buffer: PChar;
-                            ABookmark: Longint); 
+                            ABookmark: Longint);
   public
   public
     constructor Create(AOwner:tComponent); override;
     constructor Create(AOwner:tComponent); override;
     destructor Destroy; override;
     destructor Destroy; override;
@@ -766,12 +766,8 @@ end;
 
 
 procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
 procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
                                     Flag: TBookmarkFlag);
                                     Flag: TBookmarkFlag);
-var ARecInfo: TMTRecInfo;
 begin
 begin
-  //Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).BookmarkFlag := Flag;
-  ARecInfo:=MDSGetRecInfo(Buffer);
-  ARecInfo.BookmarkFlag:=Flag;
-  Move(ARecInfo,PRecInfo(Buffer+FRecInfoOffset)^,FRecInfoSize);
+  Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).BookmarkFlag := Flag;
 end;
 end;
 
 
 procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
 procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
@@ -779,22 +775,15 @@ procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
                                     ABookmark: Longint);
                                     ABookmark: Longint);
 var ARecInfo: TMTRecInfo;
 var ARecInfo: TMTRecInfo;
 begin
 begin
-  //Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).Bookmark := ABookmark;
-  //Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).BookmarkFlag := Flag;
-  ARecInfo:=MDSGetRecInfo(Buffer);
-  ARecInfo.Bookmark:=ABookmark;
-  ARecInfo.BookmarkFlag:=Flag;
-  Move(ARecInfo,PRecInfo(Buffer+FRecInfoOffset)^,FRecInfoSize);
+  Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).Bookmark := ABookmark;
+  Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).BookmarkFlag := Flag;
 end;
 end;
 
 
 procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
 procedure TMemDataset.MDSSetRecInfo(Buffer: PChar;
                                     ABookmark: Longint);
                                     ABookmark: Longint);
 var ARecInfo: TMTRecInfo;
 var ARecInfo: TMTRecInfo;
 begin
 begin
-  //Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).BookmarkFlag := ABookmark;
-  ARecInfo:=MDSGetRecInfo(Buffer);
-  ARecInfo.Bookmark:=ABookmark;
-  Move(ARecInfo,PRecInfo(Buffer+FRecInfoOffset)^,FRecInfoSize);
+  Unaligned(PRecInfo(Buffer+FRecInfoOffset)^).BookmarkFlag := ABookmark;
 end;
 end;
 
 
 Function TMemDataset.DataSize : Integer;
 Function TMemDataset.DataSize : Integer;