[racket-dev] online check syntax deadlock: can you help?
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]))