Re: Bug in wire_read() of cvsgui_protocol\cvsgui_wire.cpp
"kaczoroj" <[email protected]> Wed, 19 Jul 2006 23:45:35 -0000
| Newsgroups | gmane.comp.version-control.cvs.gui.devel |
|---|---|
| Message-ID | <[email protected]> |
Arthur, The signature of wire used to be: int wire_read(pipe_t fd, guint8 *buf, gulong count, gulong& rcount) But on July 15 Karl did the changes for gcvs compilation which resulted in: int wire_read(pipe_t fd, guint8 *buf, gulong count, gulong *rcount) That seems to be a newly introduced bug and must be fixed and all other places checked carefully. BTW, what are still doing with VS.NET 2003? Upgrade to VS2005. 2003 is a mere alpha quality while 2005 is already reaching beta quality! ;) Best Regards, Jerzy --- In [email protected], "Arthur Barrett" <arthur.barrett@...> wrote: > > > Hi all, > > Think I've found the reason why processes don't always seem to terminate > properly when WinCVS is compiled with VS.NET 2003. > > At the end of wire_read() in the source cvsgui_protocol/ cvsgui_wire.cpp > there is this line to pass back to the caller how many bytes have been > read: > rcount += totalcount; > > rcount is a pointer to type gulong (more or less int I think). > > The problem is that this statement actually increments the pointer, not > the contents of the pointer. I think it is supposed to be: > > *rcount += totalcount; > > The pointer rcount is passed all the way down from cvsgui_process.cpp > and ServeProtocol() which ends up in a loop because totalBytesAvail > never decreases. > > HTH. > > Arthur ------------------------ Yahoo! Groups Sponsor --------------------~--> Great things are happening at Yahoo! Groups. See the new email design. http://us.click.yahoo.com/TISQkA/hOaOAA/yQLSAA/NhFolB/TM --------------------------------------------------------------------~-> Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/cvsgui-dev/ <*> To unsubscribe from this group, send an email to: [email protected] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/