_transport_closed (WebRTCDataChannel * channel)
{
GError *error;
+#ifndef TIZEN_FEATURE_WEBRTC_MODIFICATION
gboolean both_sides_closed;
+#endif
GST_WEBRTC_DATA_CHANNEL_LOCK (channel);
error = channel->stored_error;
channel->stored_error = NULL;
+#ifndef TIZEN_FEATURE_WEBRTC_MODIFICATION
both_sides_closed =
channel->peer_closed && channel->parent.buffered_amount <= 0;
if (both_sides_closed || error) {
channel->peer_closed = FALSE;
}
+#endif
GST_WEBRTC_DATA_CHANNEL_UNLOCK (channel);
if (error) {
gst_webrtc_data_channel_on_error (GST_WEBRTC_DATA_CHANNEL (channel), error);
g_clear_error (&error);
}
+#ifdef TIZEN_FEATURE_WEBRTC_MODIFICATION
+ if (channel->parent.buffered_amount <= 0 || error) {
+#else
if (both_sides_closed || error) {
+#endif
gst_webrtc_data_channel_on_close (GST_WEBRTC_DATA_CHANNEL (channel));
}
}
"Received channel close for SCTP stream %i label \"%s\"",
channel->parent.id, channel->parent.label);
+#ifndef TIZEN_FEATURE_WEBRTC_MODIFICATION
GST_WEBRTC_DATA_CHANNEL_LOCK (channel);
channel->peer_closed = TRUE;
GST_WEBRTC_DATA_CHANNEL_UNLOCK (channel);
+#endif
_channel_enqueue_task (channel, (ChannelTask) _close_procedure,
GUINT_TO_POINTER (stream_id), NULL);
}