Conversion of HACMOBJ to void* (bug #478)

Eric Pouech eric.pouech at wanadoo.fr
Tue Mar 26 00:17:54 CST 2002


Vincent Béron a écrit :
> 
> I had to transform acmMetrics16 to a atub (was dubbed "semi-stub")
> because of an impossibility to convert a HACMOBJ16 (16bit offset
> pointer, without segment info) to a HACMOBJ (32bit linear pointer): a
> pointer less or equal than 0x0000ffff would certainly not access the
> right memory area.
two points:
1/ a handle can have any value... it's up to the DLL to decide what
   value it really is (pointer, index into an internal array, key
   to look up in a set...). in msacm case, since 16bit handles are
   not implemented yet, you cannot really tell
2/ you can leave the semi-stub as it is, mainly when the handle is
   NULL (which is in lots of cases for acmMetrics). However, since
   no 16 bit handle can be created, acmMetrics16 will only be called
   with NULL handles, since the semi-stub

so, I'd propose to let acmMetrics16 call acmMetrics only if hao is 0

A+



More information about the wine-devel mailing list