mirror of
https://github.com/ossrs/srs.git
synced 2025-02-13 20:01:56 +00:00
parent
ed2996141c
commit
0ff8a3761b
2 changed files with 13 additions and 5 deletions
|
@ -767,14 +767,20 @@ srs_error_t SrsRtcSession::on_stun(SrsUdpMuxSocket* udp_mux_skt, SrsStunPacket*
|
|||
return err;
|
||||
}
|
||||
|
||||
void SrsRtcSession::check_source()
|
||||
srs_error_t SrsRtcSession::check_source()
|
||||
{
|
||||
srs_error_t err = srs_success;
|
||||
|
||||
// TODO: FIXME: Check return error.
|
||||
if (source == NULL) {
|
||||
// TODO: FIXME: Should refactor it, directly use http server as handler.
|
||||
ISrsSourceHandler* handler = _srs_hybrid->srs()->instance();
|
||||
_srs_sources->fetch_or_create(&request, handler, &source);
|
||||
if ((err = _srs_sources->fetch_or_create(&request, handler, &source)) != srs_success) {
|
||||
return srs_error_wrap(err, "create source");
|
||||
}
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
srs_error_t SrsRtcSession::on_binding_request(SrsUdpMuxSocket* udp_mux_skt, SrsStunPacket* stun_req)
|
||||
|
@ -864,7 +870,9 @@ srs_error_t SrsRtcSession::on_rtcp_feedback(char* buf, int nb_buf, SrsUdpMuxSock
|
|||
|
||||
srs_verbose("pid=%u, blp=%d", pid, blp);
|
||||
|
||||
check_source();
|
||||
if ((err = check_source()) != srs_success) {
|
||||
return srs_error_wrap(err, "check");
|
||||
}
|
||||
if (! source) {
|
||||
return srs_error_wrap(err, "can not found source");
|
||||
}
|
||||
|
|
|
@ -230,7 +230,7 @@ public:
|
|||
public:
|
||||
bool is_stun_timeout() { return last_stun_time + kSrsRtcSessionStunTimeoutUs < srs_get_system_time(); }
|
||||
private:
|
||||
void check_source();
|
||||
srs_error_t check_source();
|
||||
private:
|
||||
srs_error_t on_binding_request(SrsUdpMuxSocket* udp_mux_skt, SrsStunPacket* stun_req);
|
||||
private:
|
||||
|
|
Loading…
Reference in a new issue