diff options
author | Benny Prijono <bennylp@teluu.com> | 2008-02-14 14:14:57 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2008-02-14 14:14:57 +0000 |
commit | 2a3564f53122d93704024e6f80f7d73a11cd263d (patch) | |
tree | 138840b18154f8902653dd40f63003273294ffd4 /pjmedia | |
parent | c63233e0492ff86a16f575692131d67ec5df589a (diff) |
More ticket #469: bail out from on_rx_rtp/rtcp loop if recvfrom returns PJ_ECANCELLED. This errno is returned when the key is mark as closing, which could happen when user closes the key inside the callback
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1794 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia')
-rw-r--r-- | pjmedia/src/pjmedia/transport_udp.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/pjmedia/src/pjmedia/transport_udp.c b/pjmedia/src/pjmedia/transport_udp.c index 3e56ea56..b86151ba 100644 --- a/pjmedia/src/pjmedia/transport_udp.c +++ b/pjmedia/src/pjmedia/transport_udp.c @@ -520,7 +520,7 @@ read_next_packet: if (status != PJ_EPENDING && status != PJ_SUCCESS) bytes_read = -status; - } while (status != PJ_EPENDING); + } while (status != PJ_EPENDING && status != PJ_ECANCELLED); } @@ -574,7 +574,7 @@ static void on_rx_rtcp(pj_ioqueue_key_t *key, if (status != PJ_EPENDING && status != PJ_SUCCESS) bytes_read = -status; - } while (status != PJ_EPENDING); + } while (status != PJ_EPENDING && status != PJ_ECANCELLED); } |