提交 0ed7b160 authored 作者: Anthony Minessale's avatar Anthony Minessale

handle APR_EINTR response in queue push\trypop

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6021 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 f7cfd781
......@@ -745,7 +745,13 @@ SWITCH_DECLARE(switch_status_t) switch_queue_pop(switch_queue_t * queue, void **
SWITCH_DECLARE(switch_status_t) switch_queue_push(switch_queue_t * queue, void *data)
{
return apr_queue_push(queue, data);
apr_status_t s;
do {
s = apr_queue_push(queue, data);
} while (s == APR_EINTR);
return s;
}
SWITCH_DECLARE(switch_status_t) switch_queue_trypop(switch_queue_t * queue, void **data)
......@@ -755,7 +761,13 @@ SWITCH_DECLARE(switch_status_t) switch_queue_trypop(switch_queue_t * queue, void
SWITCH_DECLARE(switch_status_t) switch_queue_trypush(switch_queue_t * queue, void *data)
{
return apr_queue_trypush(queue, data);
apr_status_t s;
do {
s = apr_queue_trypush(queue, data);
} while (s == APR_EINTR);
return s;
}
SWITCH_DECLARE(int) switch_vasprintf(char **ret, const char *fmt, va_list ap)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论