[svn:parrot] r43188 - trunk/src/io

jkeenan at svn.parrot.org jkeenan at svn.parrot.org
Tue Dec 22 00:18:37 UTC 2009


Author: jkeenan
Date: Tue Dec 22 00:18:36 2009
New Revision: 43188
URL: https://trac.parrot.org/parrot/changeset/43188

Log:
Applying
http://trac.parrot.org/parrot/attachment/ticket/886/edited.tt_886_win.patch.
JimmyZ++.

Modified:
   trunk/src/io/socket_win32.c
   trunk/src/io/win32.c

Modified: trunk/src/io/socket_win32.c
==============================================================================
--- trunk/src/io/socket_win32.c	Mon Dec 21 19:50:37 2009	(r43187)
+++ trunk/src/io/socket_win32.c	Tue Dec 22 00:18:36 2009	(r43188)
@@ -77,8 +77,8 @@
 Parrot_io_socket_win32(PARROT_INTERP, ARGIN(PMC * s), int fam, int type, int proto)
 {
     ASSERT_ARGS(Parrot_io_socket_win32)
-    int sock, i = 1;
-    sock = socket(fam, type, proto);
+    int       i    = 1;
+    const int sock = socket(fam, type, proto);
     if (sock >= 0) {
         setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (const char*)&i, sizeof (i));
         Parrot_io_set_os_handle(interp, s, sock);
@@ -443,10 +443,8 @@
 Parrot_io_sockaddr_in(PARROT_INTERP, ARGIN(STRING *addr), INTVAL port)
 {
     ASSERT_ARGS(Parrot_io_sockaddr_in)
-    PMC * sockaddr;
-    char * s;
-
-    s = Parrot_str_to_cstring(interp, addr);
+    PMC  * sockaddr;
+    char * const s = Parrot_str_to_cstring(interp, addr);
     sockaddr = pmc_new(interp, enum_class_Sockaddr);
     get_sockaddr_in(interp, sockaddr, s, port);
     Parrot_str_free_cstring(s);

Modified: trunk/src/io/win32.c
==============================================================================
--- trunk/src/io/win32.c	Mon Dec 21 19:50:37 2009	(r43187)
+++ trunk/src/io/win32.c	Tue Dec 22 00:18:36 2009	(r43188)
@@ -701,8 +701,6 @@
             NULL, NULL, TRUE, 0,
             NULL, NULL, &start, &procinfo) == 0)
         goto fail;
-    Parrot_str_free_cstring(cmd);
-    cmd = NULL;
     if (f_read) {
         Parrot_io_set_os_handle(interp, io, hread);
         CloseHandle(hwrite);
@@ -711,6 +709,8 @@
         Parrot_io_set_os_handle(interp, io, hwrite);
         CloseHandle(hread);
     }
+
+    Parrot_str_free_cstring(cmd); 
     CloseHandle(procinfo.hThread);
     VTABLE_set_integer_keyed_int(interp, io, 0, (INTVAL)procinfo.hProcess);
     return io;


More information about the parrot-commits mailing list