Re: [rt.cpan.org #53914] Bug report for Win32::API::Callback

[email protected] (Reini Urban)
Newsgroups perl.libwin32
Message-ID <[email protected]>
2010/9/7 Cosimo Streppone via RT <[email protected]>:
> Tue Sep 07 07:04:22 2010: Request 53914 was acted upon.
> Transaction: Correspondence added by COSIMO
>       Queue: Win32-API
>     Subject: Bug report for Win32::API::Callback
>   Broken in: (no value)
>    Severity: (no value)
>       Owner: Nobody
>  Requestors: [email protected]
>      Status: new
>  Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=53914 >
>
>
> On Fri Jan 22 06:26:39 2010, [email protected] wrote:
>
>> The error occurs when cb() routine is called, no matter whether it is
>> triggered through GenerateConsoleCtrlEvent call or via while(1){} and
>> Ctrl+C. Also specific implementation of cb() routine doesn't matter,
>> i.e. callback body can be just return 0 or return 1 - same effect (in
>> my implementation no file is created, so I assume that exception is
>> generated when OS try to call the callback). My personal opinion is
>> that $callback handler is not properly implemented.
>
> Hi Julian,
>
> sorry for the late reply.
> I have to admit I don't have too much time to debug this,
> but I also have no clue about what's going wrong.
>
> I guess you haven't found a way around your problem...

/usr/include/w32api/windef.h:#define CALLBACK __stdcall

So it should just work, both are the same calling convention,
CALLBACK is not using cdecl.

I'll check if I see something wrong how callbacks (T_CODE)
are handled in API.xs
But I rather believe the user callback sub is just wrong.
You have to debug into the perl-side of the callback.
-- 
Reini Urban
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.