On Fri, 2012-06-08 at 21:49 +0300, Tanu Kaskinen wrote: > The last patch is what I originally wanted to do, but while > doing it, other stuff came into the way... > > These patches require also this patch to apply cleanly: > http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/13457 > > Note that the last patch contains a FIXME item, which > depends on the patches that remove the possibility to have > dual-direction ports. Those patches still need some more > work, however, so I decided to send this patch series with > the known crash condition anyway. Since a dual-direction > port is so corner case, I'd be ok with applying these > patches already now, but I can also understand and accept it > if others refuse to knowingly introduce crashing code. > Applying only the first four patches would be fine too. > > Tanu Kaskinen (5): > sink, source: Always create a hashmap for ports. > card: Ensure that there's always at least one profile. > Assume that the profiles hashmap of ports is always non-NULL. > Assume that the ports hashmap of cards is always non-NULL. > sink, source: New functions: pa_{sink,source}_new_data_add_port(). > > src/modules/alsa/alsa-mixer.c | 35 +++++--- > src/modules/alsa/alsa-mixer.h | 4 +- > src/modules/alsa/alsa-sink.c | 2 +- > src/modules/alsa/alsa-source.c | 2 +- > src/modules/alsa/module-alsa-card.c | 1 - > src/modules/bluetooth/module-bluetooth-device.c | 27 ++---- > src/modules/dbus/iface-card.c | 41 ++------- > src/modules/dbus/iface-device.c | 32 +++---- > src/modules/module-card-restore.c | 2 +- > src/modules/module-switch-on-port-available.c | 74 +++++++-------- > src/pulsecore/card.c | 10 ++- > src/pulsecore/cli-command.c | 3 +- > src/pulsecore/cli-text.c | 26 +++--- > src/pulsecore/protocol-native.c | 109 ++++++++++------------- > src/pulsecore/sink.c | 15 +++- > src/pulsecore/sink.h | 1 + > src/pulsecore/source.c | 15 +++- > src/pulsecore/source.h | 1 + > 18 files changed, 184 insertions(+), 216 deletions(-) Pushed all but the last patch. I'll finish the "no more dual direction ports" patches before pushing the last patch of this set. -- Tanu