summaryrefslogtreecommitdiff
path: root/pjnath
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2013-01-17 09:45:32 +0000
committerBenny Prijono <bennylp@teluu.com>2013-01-17 09:45:32 +0000
commitf1f0c7d5ffe3508daeb433182bd14a38c7d4034f (patch)
tree09edfebcba1ba88edb616730b0624221d4185dab /pjnath
parent594fe8271a767bb3f680008df50d1d6e44218280 (diff)
Fixed #1610: Workaround for reported crash on stun_sock's on_data_recvfrom() callback
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4321 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjnath')
-rw-r--r--pjnath/src/pjnath/stun_sock.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/pjnath/src/pjnath/stun_sock.c b/pjnath/src/pjnath/stun_sock.c
index 75cf5822..f6b87890 100644
--- a/pjnath/src/pjnath/stun_sock.c
+++ b/pjnath/src/pjnath/stun_sock.c
@@ -390,6 +390,7 @@ PJ_DEF(pj_status_t) pj_stun_sock_destroy(pj_stun_sock *stun_sock)
* stray callback.
*/
if (stun_sock->active_sock != NULL) {
+ pj_activesock_set_user_data(stun_sock->active_sock, NULL);
pj_activesock_close(stun_sock->active_sock);
stun_sock->active_sock = NULL;
stun_sock->sock_fd = PJ_INVALID_SOCKET;
@@ -765,6 +766,8 @@ static pj_bool_t on_data_recvfrom(pj_activesock_t *asock,
pj_uint16_t type;
stun_sock = (pj_stun_sock*) pj_activesock_get_user_data(asock);
+ if (!stun_sock)
+ return PJ_FALSE;
/* Log socket error */
if (status != PJ_SUCCESS) {