Review Request 126071: Prevent crashes from changes in how Bins are removed from the pipelines.

Diane Trout diane at ghic.org
Sun Nov 15 06:02:05 UTC 2015


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/126071/
-----------------------------------------------------------

Review request for Telepathy.


Repository: ktp-call-ui


Description
-------

GStreamer reported warnings when trying to remove the sending bins
from the pipelines as they seem to be already unlinked when the
SinkManager::onPadUnlinked is called.

I discovered this by getting the source Element srcPad->parentElement()
and checking to see if that has a parent. After the bin is added to the
pipline it does have a parent, but by onPadRemoved it had been removed
from the pipeline.

I only tested audio calls which showed me that channelHandler()->pipeline()
could be null. I decided that that probably could happen to the video
path as well so added the guard condition there as well.


Diffs
-----

  libktpcall/private/sink-controllers.cpp bd3c54cfade315671e8445b371094e3c6d1511b7 
  libktpcall/private/tf-audio-content-handler.cpp 1dd797bfb1a53c52eb6a0c8a9671ee6a54551af2 
  libktpcall/private/tf-channel-handler.cpp 1a0a0dcc7afb390d4ed40fb57cbaece82ea3d3b5 
  libktpcall/private/tf-video-content-handler.cpp 0d2d1bf6176d3b04c489f332913de18ea8908661 

Diff: https://git.reviewboard.kde.org/r/126071/diff/


Testing
-------

While trying to decide if this was a good idea I added quite a bit more logging messages which I removed before commiting. I did verify that the bin connecting the conference to the audio source really does seem to be being unlinked by GStreamer.

Or at least I couldn't find any place in the code here where it was unlinked.


Thanks,

Diane Trout

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-telepathy/attachments/20151115/9eb0c71e/attachment.html>


More information about the KDE-Telepathy mailing list