rpms/tcl/F-7 tcl-8.4.13-fd_select.patch, NONE, 1.1 tcl.spec, 1.58, 1.59

Marcela Mašláňová (mmaslano) fedora-extras-commits at redhat.com
Wed Oct 24 07:50:33 UTC 2007


Author: mmaslano

Update of /cvs/pkgs/rpms/tcl/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv8978

Modified Files:
	tcl.spec 
Added Files:
	tcl-8.4.13-fd_select.patch 
Log Message:
#349731 64-bit select() descriptor bug


tcl-8.4.13-fd_select.patch:

--- NEW FILE tcl-8.4.13-fd_select.patch ---
diff -up tcl-8.4.13/tcl8.4.13/unix/tclUnixChan.c.old tcl-8.4.13/tcl8.4.13/unix/tclUnixChan.c
--- tcl8.4.13/unix/tclUnixChan.c.old	2005-11-30 01:55:31.000000000 +0100
+++ tcl8.4.13/unix/tclUnixChan.c	2007-10-24 09:05:34.000000000 +0200
@@ -3185,7 +3185,8 @@ TclUnixWaitForFile(fd, mask, timeout)
 {
     Tcl_Time abortTime = {0, 0}, now; /* silence gcc 4 warning */
     struct timeval blockTime, *timeoutPtr;
-    int index, bit, numFound, result = 0;
+    int index, numFound, result = 0;
+	fd_mask bit;
     fd_mask readyMasks[3*MASK_SIZE];
 				/* This array reflects the readable/writable
 				 * conditions that were found to exist by the
@@ -3222,7 +3223,7 @@ TclUnixWaitForFile(fd, mask, timeout)
     }
     memset((VOID *) readyMasks, 0, 3*MASK_SIZE*sizeof(fd_mask));
     index = fd/(NBBY*sizeof(fd_mask));
-    bit = 1 << (fd%(NBBY*sizeof(fd_mask)));
+    bit = ((fd_mask) 1) << (fd%(NBBY*sizeof(fd_mask)));
 
     /*
      * Loop in a mini-event loop of our own, waiting for either the
@@ -3282,6 +3283,9 @@ TclUnixWaitForFile(fd, mask, timeout)
 	if (timeout == 0) {
 	    break;
 	}
+	if (timeout < 0) {
+	    continue;
+	}
 
 	/*
 	 * The select returned early, so we need to recompute the timeout.


Index: tcl.spec
===================================================================
RCS file: /cvs/pkgs/rpms/tcl/F-7/tcl.spec,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -r1.58 -r1.59
--- tcl.spec	22 May 2007 07:40:04 -0000	1.58
+++ tcl.spec	24 Oct 2007 07:50:00 -0000	1.59
@@ -3,7 +3,7 @@
 Summary: Tcl scripting language development environment
 Name: tcl
 Version: %{majorver}.13
-Release: 18%{?dist}
+Release: 19%{?dist}
 Epoch: 1 
 License: BSD
 Group: Development/Languages
@@ -21,6 +21,7 @@
 Patch5: tcl-8.4.13-autoconf.patch
 Patch6: tcl-8.4.13-cflags.patch
 Patch7: tcl-8.4.13-tests.patch
+Patch8: tcl-8.4.13-fd_select.patch
 
 %description
 The Tcl (Tool Command Language) provides a powerful platform for
@@ -72,6 +73,7 @@
 %patch6 -p1 -b .6-cflags
 popd
 %patch7 -p1 -b .7-tests
+%patch8 -p1 -b .8-fdsel
 
 # patch1 touches tcl.m4, and patch3 touches configure.in
 # patch7 change placement of tests (merge review)
@@ -158,6 +160,9 @@
 %doc %{name}%{version}/html/*
 
 %changelog
+* Wed Oct 24 2007 Marcela Maslanova <mmaslano at redhat.com> - 1:8.4.13-19
+- #349731 64-bit select() descriptor bug
+
 * Tue May 22 2007 Marcela Maslanova <mmaslano at redhat.com> - 1:8.4.13-18
 - rhbz#235812
 




More information about the fedora-extras-commits mailing list