Re: [gtkmm] GLIBMM dispatcher comment



Am 17.09.2002 12:11 schrieb(en) Andrew E. Makeev:
Martin Schulze wrote:

>
> But there are no comment in the source that would justify this
behaviour.
> So there is no reason _not_ to open a bugzilla bug. Please do it and
add
> backtrace or any information that could help to solve the problem.
>
> > Problem was found in MsgWaitForMultipleObjects() call when we
"switched"
> > dispatcher on.
>
> I'm afraid this information is not very helpful. Does your program
segfault
> while in MsgWaitForMultipleObjects()?
>

I suggest, you just go into gtkmm/glib/glibmm directory and add
dispatcher.lo
in object list for building libglibmm-1.3.la.
Probably, you will have to comment body of function

    void fd_set_close_on_exec(int fd).

ReBuild libs, then just go to gtkmm/examples/thread and try
dispatcher.cc.

Shortly, MsgWaitForMultipleObjects is expecting different HANDLE type in
it's
parameters than it has from pipe opened by Dispatcher. See also comment
from
gmain.h:

 * On Win32, the fd in a GPollFD should be Win32 HANDLE (*not* a file
 * descriptor as provided by the C runtime) that can be used by
 * MsgWaitForMultipleObjects. This does *not* include file handles
 * from CreateFile, SOCKETs, nor pipe handles. (But you can use
 * WSAEventSelect to signal events when a SOCKET is readable).

So, what should I start on bugzilla? Something like "Please, improve
Dispatcher to let it support Win32"?

Yes: since you seem to have the best knowledge about these things for WIN32
on the list it is helpful for us to collect all the information you give
in a bug report. This way it can't get lost even if it takes a while before
someone has the time to work on the code. Apart from that I do consider it
a bug that Dispatcher doesn't work on WIN32.

Regards,

  Martin



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]