diff options
author | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-08-19 12:17:31 +0000 |
---|---|---|
committer | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-08-19 12:17:31 +0000 |
commit | 8d0e3395a0ec1082872df71d0f982ede60e17bfb (patch) | |
tree | 32b6383d849c3c1278a8a4050d27948e2f20c2b5 /src/helper/log.c | |
parent | 91b6460671671a4052feaed04de74ec73bc7f851 (diff) |
added alive_sleep() function to let GDB alive packets be sent
git-svn-id: svn://svn.berlios.de/openocd/trunk@938 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/helper/log.c')
-rw-r--r-- | src/helper/log.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/helper/log.c b/src/helper/log.c index ef1a6bb0..efe5d5bb 100644 --- a/src/helper/log.c +++ b/src/helper/log.c @@ -385,3 +385,20 @@ void kept_alive() current_time=timeval_ms(); last_time=current_time; } + +/* if we sleep for extended periods of time, we must invoke keep_alive() intermittantly */ +void alive_sleep(int ms) +{ + int i; + for (i=0; i<ms; i+=500) + { + int sleep_a_bit=ms-i; + if (sleep_a_bit>500) + { + sleep_a_bit=500; + } + keep_alive(); + usleep(sleep_a_bit*1000); + keep_alive(); + } +} |