Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | two additions to TIP#302 sample implementation |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
cd1e683bbdbd37c4a898f7e7bc210176 |
User & Date: | chw 2016-11-19 16:49:43.925 |
Context
2016-11-19
| ||
19:11 | another cleanup in vu widgets check-in: ec154d64d1 user: chw tags: trunk | |
16:49 | two additions to TIP#302 sample implementation check-in: cd1e683bbd user: chw tags: trunk | |
15:03 | add tk upstream changes check-in: 73923862b9 user: chw tags: trunk | |
Changes
Changes to jni/tcl/macosx/tclMacOSXNotify.c.
︙ | ︙ | |||
1627 1628 1629 1630 1631 1632 1633 | /* * If there is a non-zero finite timeout, compute the time when we give * up. */ if (timeout > 0) { | | | 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 | /* * If there is a non-zero finite timeout, compute the time when we give * up. */ if (timeout > 0) { TclpGetMonotonicTime(&now); abortTime.sec = now.sec + timeout/1000; abortTime.usec = now.usec + (timeout%1000)*1000; if (abortTime.usec >= 1000000) { abortTime.usec -= 1000000; abortTime.sec += 1; } timeoutPtr = &blockTime; |
︙ | ︙ | |||
1716 1717 1718 1719 1720 1721 1722 | continue; } /* * The select returned early, so we need to recompute the timeout. */ | | | 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 | continue; } /* * The select returned early, so we need to recompute the timeout. */ TclpGetMonotonicTime(&now); if ((abortTime.sec < now.sec) || (abortTime.sec==now.sec && abortTime.usec<=now.usec)) { break; } } return result; } |
︙ | ︙ |
Changes to jni/tcl/win/tclWinSerial.c.
︙ | ︙ | |||
370 371 372 373 374 375 376 | */ static unsigned int SerialGetMilliseconds(void) { Tcl_Time time; | | | 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 | */ static unsigned int SerialGetMilliseconds(void) { Tcl_Time time; TclpGetMonotonicTime(&time); return (time.sec * 1000 + time.usec / 1000); } /* *---------------------------------------------------------------------- * |
︙ | ︙ | |||
1487 1488 1489 1490 1491 1492 1493 | infoPtr->validMask = permissions; infoPtr->handle = handle; infoPtr->channel = (Tcl_Channel) NULL; infoPtr->readable = 0; infoPtr->writable = 1; infoPtr->toWrite = infoPtr->writeQueue = 0; infoPtr->blockTime = SERIAL_DEFAULT_BLOCKTIME; | | | 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 | infoPtr->validMask = permissions; infoPtr->handle = handle; infoPtr->channel = (Tcl_Channel) NULL; infoPtr->readable = 0; infoPtr->writable = 1; infoPtr->toWrite = infoPtr->writeQueue = 0; infoPtr->blockTime = SERIAL_DEFAULT_BLOCKTIME; infoPtr->lastEventTime = SerialGetMilliseconds(); infoPtr->lastError = infoPtr->error = 0; infoPtr->threadId = Tcl_GetCurrentThread(); infoPtr->sysBufRead = 4096; infoPtr->sysBufWrite = 4096; /* * Use the pointer to keep the channel names unique, in case the handles |
︙ | ︙ |