Diff
Not logged in

Differences From Artifact [a166a1b0a4]:

To Artifact [26ab920512]:


1359
1360
1361
1362
1363
1364
1365
1366

1367
1368
1369
1370
1371
1372
1373
1374
1359
1360
1361
1362
1363
1364
1365

1366

1367
1368
1369
1370
1371
1372
1373







-
+
-








    Tcl_ConditionFinalize(&notifierCV);
    notifierCV = NULL;

    /*
     * Free all the thread specific data for the notifier now.  Since the
     * child has no other threads, this data should be completely useless
     * at this point.  Unfortunately, there is currently no clean way to
     * at this point.
     * free the thread specific data structures themselves.
     */

    for (tsdPtr = waitingListPtr; tsdPtr; tsdPtr = tsdPtr->nextPtr) {
	FileHandler *filePtr;
	for (filePtr = tsdPtr->firstFileHandlerPtr; filePtr != NULL;
		/* NO LOOP UPDATE */) {
	    FileHandler *nextFilePtr = filePtr->nextPtr;
1398
1399
1400
1401
1402
1403
1404

1405
1406
1407
1408
1409
1410
1411
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411







+







    TclpResetLocks();

    /*
     * Next, abandon the thread specific data for this file.  There is no
     * clean way to free it; however, it can no longer be used.
     */

    Tcl_UnsetThreadData(&dataKey, sizeof(ThreadSpecificData), 1 /*all */);
    dataKey = (Tcl_ThreadDataKey) 0;

    /*
     * Force the notifier subsystem to be initialized now.  This should
     * create the notifier thread in this process.  Subsequently, that new
     * thread will re-open the trigger pipe.
     */