Commit c00c3ed7 authored by Youness Alaoui's avatar Youness Alaoui

Refuse remote candidates on a stream only if that specific stream is gathering.

This should fix the use case of creating a stream 1, gather until finished
then creating another stream, gather its candidates, then setting the
remotes on stream 1 (which is already gathered) while stream 2 is still gathering.
parent 3bea7534
...@@ -1226,6 +1226,7 @@ void agent_gathering_done (NiceAgent *agent) ...@@ -1226,6 +1226,7 @@ void agent_gathering_done (NiceAgent *agent)
agent_signal_gathering_done (agent); agent_signal_gathering_done (agent);
} }
#else #else
if (agent->discovery_timer_source == NULL)
agent_signal_gathering_done (agent); agent_signal_gathering_done (agent);
#endif #endif
} }
...@@ -2215,7 +2216,7 @@ nice_agent_set_remote_candidates (NiceAgent *agent, guint stream_id, guint compo ...@@ -2215,7 +2216,7 @@ nice_agent_set_remote_candidates (NiceAgent *agent, guint stream_id, guint compo
goto done; goto done;
} }
if (agent->discovery_unsched_items > 0 || stream->gathering) { if (stream->gathering) {
nice_debug ("Agent %p: Remote candidates refused for stream %d because " nice_debug ("Agent %p: Remote candidates refused for stream %d because "
"we are still gathering our own candidates", agent, stream_id); "we are still gathering our own candidates", agent, stream_id);
added = -1; added = -1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment