CARLOS GTR ha scritto: > Hi, I am working in chat program in Gambas that works with TCP sockets. > The problem is that the clients that connect to the server need to receive > the list of the contacts that are online (as any chat), The Server has the > list but cant send it. > > This is the code: > DIM y, x AS Integer > FOR x = 0 TO Client.Max > FOR y = 0 TO listacontactos.Count - 1 > ' Message(“dgdsgfds”) If I uncomment this line everything works > WRITE #Client[x], "[" & y & "]" & listacontactos[y].Text, > Len(listacontactos[y].Text) + 4 > NEXT > NEXT > > That code with the message instruction commented only send 1 contact, when I > uncomment that dummy message line everything works perfect. > > Another interesting fact is that If I put break points for the nested FORs > and see what happens the programs runs perfect even without the dummy > message instruction. > Sorry, I don't know how gambas works with sockets, but instead I noticed something else that perhaps is worth to be investigated. When you write on socket, you send something like "[0]text". The length of this example string is 7 characters, but your formula gives 8 because you add 4 to the length of the original text. Perhaps, this code tries to access past the end of the string. In other languages this could lead to an exception - don't know what happens in gambas: who knows... may be it does strange things...
Regards, Doriano ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user