diff --git a/daemon/src/sip/sipvoiplink.cpp b/daemon/src/sip/sipvoiplink.cpp index 9004fe986f7497355f9a3f37e271d57b435ef335..a4dfda8b47d2a930e9c3b9882c13f82ab03b92d6 100644 --- a/daemon/src/sip/sipvoiplink.cpp +++ b/daemon/src/sip/sipvoiplink.cpp @@ -963,6 +963,9 @@ SIPVoIPLink::onhold(const std::string& id) call->setState(Call::HOLD); call->getAudioRtp().saveLocalContext(); call->getAudioRtp().stop(); +#ifdef SFL_VIDEO + call->getVideoRtp().stop(); +#endif Sdp *sdpSession = call->getLocalSDP(); @@ -975,8 +978,8 @@ SIPVoIPLink::onhold(const std::string& id) #ifdef SFL_VIDEO sdpSession->removeAttributeFromLocalVideoMedia("sendrecv"); - sdpSession->removeAttributeFromLocalVideoMedia("sendonly"); - sdpSession->addAttributeToLocalVideoMedia("sendonly"); + sdpSession->removeAttributeFromLocalVideoMedia("inactive"); + sdpSession->addAttributeToLocalVideoMedia("inactive"); #endif SIPSessionReinvite(call); diff --git a/gnome/src/video/video_renderer.c b/gnome/src/video/video_renderer.c index c53518443248ad048699d505509b4715a4af5b8b..e06b7585cdabe4dcd01e289fde22de9184f61f73 100644 --- a/gnome/src/video/video_renderer.c +++ b/gnome/src/video/video_renderer.c @@ -334,11 +334,10 @@ render_frame_from_shm(VideoRendererPrivate *priv) if (!GTK_IS_WIDGET(priv->drawarea)) return FALSE; GtkWidget *parent = gtk_widget_get_parent(priv->drawarea); - if (!parent) + if (!parent || !CLUTTER_IS_ACTOR(priv->texture)) return FALSE; const gint parent_width = gtk_widget_get_allocated_width(parent); const gint parent_height = gtk_widget_get_allocated_height(parent); - clutter_actor_set_size(priv->texture, parent_width, parent_height); video_renderer_render_to_texture(priv);