Forráskód Böngészése

Merged revisions 9611-9612,9616,9618 via svnmerge from
svn+ssh://[email protected]/FPC/svn/fpc/trunk

........
r9611 | marco | 2008-01-02 10:43:55 +0100 (Wed, 02 Jan 2008) | 2 lines

* patch from KMS, resolves 10147
........
r9612 | marco | 2008-01-02 11:41:42 +0100 (Wed, 02 Jan 2008) | 2 lines

* fix for 10535 IProvideClassinfo + -2
........
r9616 | marco | 2008-01-02 20:50:02 +0100 (Wed, 02 Jan 2008) | 2 lines

* Fix for 10534. tagstatstg now aliased in activex.pp to types.pp
........
r9618 | marco | 2008-01-02 21:45:09 +0100 (Wed, 02 Jan 2008) | 2 lines

* Fix for 10482, iinterfacecomponentreference
........

git-svn-id: branches/fixes_2_2@9636 -

marco 17 éve
szülő
commit
34f2105cd4

+ 1 - 1
compiler/utils/msgdif.pp

@@ -362,7 +362,7 @@ function MsgToSet(const Msg, FileName: string; var R: TArgSet): Boolean;
       begin
         j:=i+1; l:=length(msg)+1;
         while (j<l) and (Msg[j] in ['0'..'9']) do Inc(j);
-        if j = l then
+        if j > (i+1) then
         begin
           val(copy(Msg,i+1,j-i-1),num,code);
           if num > high(TArgSet) then begin

+ 11 - 14
packages/base/winunits/activex.pp

@@ -1125,22 +1125,10 @@ TYPE
 
 
 
-   tagSTATSTG                   = record
-                                    pwcsName      : POleStr;
-                                    dwType        : DWord;
-                                    cbSize        : ULarge_integer;
-                                    mtime         : TFileTime;
-                                    ctime         : TFileTime;
-                                    atime         : TFileTime;
-                                    grfMode       : DWord;
-                                    grfLocksSupported : DWord;
-                                    clsid         : TCLSID;
-                                    grfStateBits  : DWord;
-                                    reserved      : DWord;
-                                    end;
+   tagSTATSTG                   = types.tagSTATSTG;
 
    TStatStg                     = tagSTATSTG;
-   PStatStg                     = ^TStatStg;
+   PStatStg                     = types.PStatStg;
    STATSTG                      = TStatStg;
 
 {    TagRemSNB = Record
@@ -2724,6 +2712,15 @@ TYPE
   POleMenuGroupWidths = LPOLEMENUGROUPWIDTHS;
 
 
+    IProvideClassInfo = Interface (IUnknown)
+       ['{B196B283-BAB4-101A-B69C-00AA00341D07}']
+         function GetClassInfo(out pptti : ITypeInfo):HResult; StdCall;
+			 end;
+    IProvideClassInfo2 = Interface (IProvideClassInfo)
+       ['{A6BC3AC0-DBAA-11CE-9DE3-00AA004BB851}']
+         function GetGUID(dwguid:DWord;out pguid:TGUID):HResult; StdCall;
+	end;
+
 { ******************************************************************************************************************
                                                           stuff from objbase.h
   ****************************************************************************************************************** }

+ 4 - 0
rtl/objpas/classes/compon.inc

@@ -580,4 +580,8 @@ begin
   result:=-1;
 end;
 
+function TComponent.iicrGetComponent: TComponent;
 
+begin
+  result:=self;
+end;

+ 11 - 11
rtl/objpas/types.pp

@@ -228,17 +228,17 @@ type
   packed
 {$endif FPC_REQUIRES_PROPER_ALIGNMENT}
   record
-     pwcsName : POleStr;
-     dwType : Longint;
-     cbSize : Largeint;
-     mtime : TFileTime;
-     ctime : TFileTime;
-     atime : TFileTime;
-     grfMode : Longint;
-     grfLocksSupported : Longint;
-     clsid : TCLSID;
-     grfStateBits : Longint;
-     reserved : Longint;
+     pwcsName      : POleStr;
+     dwType        : DWord;
+     cbSize        : Large_uint;
+     mtime         : TFileTime;
+     ctime         : TFileTime;
+     atime         : TFileTime;
+     grfMode       : DWord;
+     grfLocksSupported : DWord;
+     clsid         : TCLSID;
+     grfStateBits  : DWord;
+     reserved      : DWord;
   end;
   TStatStg = tagSTATSTG;
   STATSTG = TStatStg;