aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authorsruffell <sruffell@f38db490-d61c-443f-a65b-d21fe96a405b>2011-01-20 19:57:31 +0000
committersruffell <sruffell@f38db490-d61c-443f-a65b-d21fe96a405b>2011-01-20 19:57:31 +0000
commitd6394447f897bb4e5e38a58142fdb59e28a7940f (patch)
treeab6943ce99130b5f1cdb789120f51f7eb11c6d34 /main
parent1f0d524abdd4bd681f81e9b6716fa5c9a2e83355 (diff)
Merged revisions 303106 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ........ r303106 | sruffell | 2011-01-20 13:56:34 -0600 (Thu, 20 Jan 2011) | 15 lines main/features: Use POLLPRI when waiting for events on parked channels. This change resolves a regression in the 1.6.2 when converting from select to poll. The DAHDI timers use POLLPRI to indicate that the timer fired, but features was not waiting for that flag. The result was no audio for MOH when a call was parked and res_timing_dahdi was in use. This patch is slightly modified from the one on the mantis issue. It does not set an exception on the channel if the POLLPRI flag is set. (closes issue #18262) Reported by: francesco_r Patches: patch_park_moh-trunk-2.txt uploaded by cjacobsen (license 1029) Tested by: francesco_r, rfrantik, one47 ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.8@303107 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main')
-rw-r--r--main/features.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/main/features.c b/main/features.c
index 7bd01d43e..4f1301451 100644
--- a/main/features.c
+++ b/main/features.c
@@ -4117,7 +4117,7 @@ int manage_parkinglot(struct ast_parkinglot *curlot, const struct pollfd *pfds,
continue;
}
- if (!(pfds[y].revents & (POLLIN | POLLERR))) {
+ if (!(pfds[y].revents & (POLLIN | POLLERR | POLLPRI))) {
/* Next x */
continue;
}
@@ -4176,7 +4176,7 @@ std: for (x = 0; x < AST_MAX_FDS; x++) { /* mark fds for next round */
}
*new_pfds = tmp;
(*new_pfds)[*new_nfds].fd = chan->fds[x];
- (*new_pfds)[*new_nfds].events = POLLIN | POLLERR;
+ (*new_pfds)[*new_nfds].events = POLLIN | POLLERR | POLLPRI;
(*new_pfds)[*new_nfds].revents = 0;
(*new_nfds)++;
}