]> cvs.zerfleddert.de Git - micropolis/blob - src/tclx/tkucbsrc/tkevent.dif
Fix for shared memory leak by Kurt Miller.
[micropolis] / src / tclx / tkucbsrc / tkevent.dif
1 *** ../../tk2.3/tkEvent.c Fri Aug 21 16:16:16 1992
2 --- tkEvent.c Tue Oct 6 17:28:21 1992
3 ***************
4 *** 23,28
5 #include "tkInt.h"
6 #include <errno.h>
7 #include <signal.h>
8
9 /*
10 * For each timer callback that's pending, there is one record
11
12 --- 23,29 -----
13 #include "tkInt.h"
14 #include <errno.h>
15 #include <signal.h>
16 + extern Tcl_Interp *tk_mainInterp;
17
18 /*
19 * For each timer callback that's pending, there is one record
20 ***************
21 *** 1321,1326
22 memcpy((VOID *) ready, (VOID *) masks, 3*MASK_SIZE*sizeof(int));
23 timeout.tv_sec = timeout.tv_usec = 0;
24 do {
25 numFound = select(numFds, (SELECT_MASK *) readPtr,
26 (SELECT_MASK *) writePtr, (SELECT_MASK *) exceptPtr,
27 &timeout);
28
29 --- 1322,1330 -----
30 memcpy((VOID *) ready, (VOID *) masks, 3*MASK_SIZE*sizeof(int));
31 timeout.tv_sec = timeout.tv_usec = 0;
32 do {
33 + if (Tcl_CheckForSignal (tk_mainInterp, TCL_OK) == TCL_ERROR)
34 + TkBindError(tk_mainInterp);
35 +
36 numFound = select(numFds, (SELECT_MASK *) readPtr,
37 (SELECT_MASK *) writePtr, (SELECT_MASK *) exceptPtr,
38 &timeout);
39 ***************
40 *** 1384,1389
41 }
42 memcpy((VOID *) ready, (VOID *) masks, 3*MASK_SIZE*sizeof(int));
43 do {
44 numFound = select(numFds, (SELECT_MASK *) readPtr,
45 (SELECT_MASK *) writePtr, (SELECT_MASK *) exceptPtr,
46 timeoutPtr);
47
48 --- 1388,1396 -----
49 }
50 memcpy((VOID *) ready, (VOID *) masks, 3*MASK_SIZE*sizeof(int));
51 do {
52 + if (Tcl_CheckForSignal (tk_mainInterp, TCL_OK) == TCL_ERROR)
53 + TkBindError(tk_mainInterp);
54 +
55 numFound = select(numFds, (SELECT_MASK *) readPtr,
56 (SELECT_MASK *) writePtr, (SELECT_MASK *) exceptPtr,
57 timeoutPtr);
Impressum, Datenschutz