Browse Source

* correctly mask the argument type of a dispatch parameter (only the top most bit needs to be removed, not the top most *two* bits)

git-svn-id: trunk@47516 -
svenbarth 4 years ago
parent
commit
50deb254e5
1 changed files with 1 additions and 1 deletions
  1. 1 1
      packages/winunits-base/src/comobj.pp

+ 1 - 1
packages/winunits-base/src/comobj.pp

@@ -1210,7 +1210,7 @@ HKCR
               writeln('DispatchInvoke: Params = ',hexstr(Params));
 {$endif DEBUG_COMDISPATCH}
               { get plain type }
-              CurrType:=CallDesc^.ArgTypes[i] and $3f;
+              CurrType:=CallDesc^.ArgTypes[i] and $7f;
               { a skipped parameter? Don't increment Params pointer if so. }
               if CurrType=varError then
                 begin