mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-02 20:12:48 -05:00
Patch from Robert de Bath to substantially simplify timing.c.
The previous platform-dependent ifdefs, switching between a system which tried to cope with spurious callbacks (which I'd observed on Windows) and one which tried to cope with system clock jumps (which can happen on Unix, if you use gettimeofday) have been completely removed, and replaced with a much simpler approach which just copes with system clock jumps by triggering any timers immediately. None of the resulting effects should be catastrophic (the worst thing might be the waste of CPU in a spurious rekey, but as long as the system clock isn't jumping around _all_ the time that's hardly critical) and in any case the Unix port has had a long-standing oddity involving occasional lockups if pterm or PuTTY runs for too long, which hopefully this should replace with a much less bad failure mode. And the code is much simpler, which is not to be sneezed at. [originally from svn r9528]
This commit is contained in:
@ -60,11 +60,6 @@ unsigned long getticks(void); /* based on gettimeofday(2) */
|
||||
#define GETTICKCOUNT getticks
|
||||
#define TICKSPERSEC 1000 /* we choose to use milliseconds */
|
||||
#define CURSORBLINK 450 /* no standard way to set this */
|
||||
/* getticks() works using gettimeofday(), so it's vulnerable to system clock
|
||||
* changes causing chaos. Therefore, we provide a compensation mechanism. */
|
||||
#define TIMING_SYNC
|
||||
#define TIMING_SYNC_ANOW
|
||||
extern long tickcount_offset;
|
||||
|
||||
#define WCHAR wchar_t
|
||||
#define BYTE unsigned char
|
||||
|
Reference in New Issue
Block a user