On Sep 2, 2011, at 5:29 AM, Matthew Flatt wrote:

> At Thu, 1 Sep 2011 15:20:27 -0700, John Clements wrote:
>>> Note that the code ignores the result of `TransformProcessType', which
>>> is a bad idea. If you remove the `void' wrapper, what number result
>>> gets printed on your machine?
>>> 
>> 
>> Looks like it's -50.
> 
> -50 means "bad argument".
> 
> Apple's docs say
> 
> struct ProcessSerialNumber {
>   unsigned long highLongOfPSN;
>   unsigned long lowLongOfPSN;
> };
> 
> but "MacTypes.h" says
> 
> struct ProcessSerialNumber {
>   UInt32              highLongOfPSN;
>   UInt32              lowLongOfPSN;
> };
> 
> and those aren't the same on a 64-bit system. Maybe the docs that I
> found are too old or are only meant to apply to 32-bit systems.
> 
> Can you remind me whether you're using a 32-bit or 64-bit build?
> 
> When I try the 64-bit build, then it fails in the way you describe
> until I fix the `_ProcessSerialNumber' declaration:
> 
> (define-cstruct _ProcessSerialNumber
>   ([highLongOfPSN _uint32]
>    [lowLongOfPSN _uint32]))

Yep, this fixes it for me. I see you've pushed it already. Thanks!

John Clements

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to