https://origsvn.digium.com/svn/asterisk/trunk
........
r198183 | russell | 2009-05-29 17:33:31 -0500 (Fri, 29 May 2009) | 2 lines
Improve handling of trying to ACK too many timer expirations.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@198184
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
static void read_pipe(struct pthread_timer *timer, unsigned int quantity)
{
int rd_fd = timer->pipe[PIPE_READ];
+ int pending_ticks = timer->pending_ticks;
ast_assert(quantity);
- ast_assert(quantity >= timer->pending_ticks);
+
+ if (timer->continuous && pending_ticks) {
+ pending_ticks--;
+ }
+
+ if (quantity > pending_ticks) {
+ quantity = pending_ticks;
+ }
+
+ if (!quantity) {
+ return;
+ }
do {
unsigned char buf[1024];