CVS: winex/dlls/winsock socket.c,1.50,1.51

[email protected] 31 Jul 2007 19:56:29 -0000
Newsgroups gmane.comp.emulators.winex.cvs
Message-ID <[email protected]>
Subject: winex/dlls/winsock socket.c,1.50,1.51Update of /var/lib/cvsd/cvsroot/winex/dlls/winsock
In directory agravaine:/tmp/cvs-serv1861/dlls/winsock

Modified Files:
	socket.c 
Log Message:
- winsocktext debugmsg improvements


Index: socket.c
===================================================================
RCS file: /var/lib/cvsd/cvsroot/winex/dlls/winsock/socket.c,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -d -r1.50 -r1.51
--- socket.c	31 Jul 2007 19:52:38 -0000	1.50
+++ socket.c	31 Jul 2007 19:56:27 -0000	1.51
@@ -824,8 +824,32 @@
     char textout[16];
 
     if (WINE_TRACE_ON (winsocktext))
-       DPRINTF ("winsocktext (%s): %.*s\n", (Sent ? "send" : "recv"),
-                (int)len, cdata);
+    {
+       char *pCur;
+       int left, curlen;
+
+       TRACE_(winsocktext) ("%s of %lu bytes\n", (Sent ? "send" : "recv"),
+                            len);
+       left = len;
+       pCur = cdata;
+       while (left > 0)
+       {
+          char *pNewline = memchr (pCur, '\n', left);
+
+          if (pNewline && ((pNewline - pCur) <= 70))
+             curlen = pNewline - pCur + 1;
+          else
+          {
+             curlen = min (left, 70);
+             pNewline = NULL;
+          }
+
+          TRACE_(winsocktext) ("%.*s%s", curlen, pCur,
+                               (pNewline ? "" : "\n"));
+          pCur += curlen;
+          left -= curlen;
+       }
+    }
 
     if (!WINE_TRACE_ON(winsockhex))
        return;