|
|
|
@ -1016,16 +1016,19 @@ static void stream_fd_closed(int fd, void *p, uintptr_t u) {
|
|
|
|
int i;
|
|
|
|
int i;
|
|
|
|
socklen_t j;
|
|
|
|
socklen_t j;
|
|
|
|
|
|
|
|
|
|
|
|
assert(sfd->socket.fd == fd);
|
|
|
|
|
|
|
|
c = sfd->call;
|
|
|
|
c = sfd->call;
|
|
|
|
if (!c)
|
|
|
|
if (!c)
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
|
|
j = sizeof(i);
|
|
|
|
rwlock_lock_r(&c->master_lock);
|
|
|
|
i = 0;
|
|
|
|
if (fd == sfd->socket.fd) {
|
|
|
|
// coverity[check_return : FALSE]
|
|
|
|
j = sizeof(i);
|
|
|
|
getsockopt(fd, SOL_SOCKET, SO_ERROR, &i, &j);
|
|
|
|
i = 0;
|
|
|
|
ilog(LOG_WARNING, "Read error on media socket: %i (%s) -- closing call", i, strerror(i));
|
|
|
|
// coverity[check_return : FALSE]
|
|
|
|
|
|
|
|
getsockopt(fd, SOL_SOCKET, SO_ERROR, &i, &j);
|
|
|
|
|
|
|
|
ilog(LOG_WARNING, "Read error on media socket: %i (%s) -- closing call", i, strerror(i));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
rwlock_unlock_r(&c->master_lock);
|
|
|
|
|
|
|
|
|
|
|
|
call_destroy(c);
|
|
|
|
call_destroy(c);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|