Commit graph

22 commits

Author SHA1 Message Date
Juho Hämäläinen
6021ce3196 dbus: Use correct idxset when getting sources
This fixes get_sources() which iterates wrong idxset when
getting source object paths in GetSources or GetAll.
2014-02-11 12:02:28 +02:00
Tanu Kaskinen
ce304d6208 Pass the profile object instead of the profile name to pa_card_set_profile()
When setting attribute foo, or in this case the card profile, in my
opinion the thing passed to the set_foo() function should be of the
type of foo, not a string identifier that can be used to search for
the actual foo in set_foo().

This is mostly a question of taste, but there's at least some small
benefit from passing the actual object: often the profile object is
already available when calling pa_card_set_profile(), so passing the
card name would cause unnecessary searching when pa_card_set_profile()
needs to look up the profile from the hashmap.
2013-11-29 07:25:13 +02:00
Arun Raghavan
6825df8cec hashmap: Add the ability to free keys
Since the hashmap stores a pointer to the key provided at pa_hashmap_put()
time, it make sense to allow the hashmap to be given ownership of the key and
have it free it at pa_hashmap_remove/free time.

To do this cleanly, we now provide the key and value free functions at hashmap
creation time with a pa_hashmap_new_full. With this, we do away with the free
function that was provided at remove/free time for freeing the value.
2013-09-17 18:01:22 +05:30
poljar (Damir Jelić)
d806b19714 Remove pa_bool_t and replace it with bool.
commands used for this (executed from the pulseaudio/src directory):
    find . -regex '\(.*\.[hc]\|.*\.cc\|.*\.m4\)' -not -name 'macro.h' \
        -a -not -name 'reserve.[ch]' -a -not -name 'reserve-monitor.[ch]' \
        -a -not -name 'glib-mainloop.c' -a -not -name 'gkt-test.c' \
        -a -not -name 'glib-mainloop.c' -a -not -name 'gkt-test.c' \
        -a -not -name 'poll-win32.c' -a -not -name 'thread-win32.c' \
        -a -not -name 'dllmain.c' -a -not -name 'gconf-helper.c' \
        -exec sed -i -e 's/\bpa_bool_t\b/bool/g' \
        -e 's/\bTRUE\b/true/g' -e 's/\bFALSE\b/false/g' {} \;

and:
    sed -i -e '181,194!s/\bpa_bool_t\b/bool/' \
        -e '181,194!s/\bTRUE\b/true/' -e \
        '181,194!s/\bFALSE\b/false/' pulsecore/macro.h
2013-07-04 12:25:30 +03:00
poljar (Damir Jelić)
5e11ea06ef Whitespace cleanup: Fix broken indentation by hand
This patch fixes wrong indentation introduced by the last patch.

This was mostly done with vim-s retab feature.
2013-06-24 16:56:24 +03:00
poljar (Damir Jelić)
aab63a3499 Whitespace cleanup: Remove tabs
This patch removes all tabs hidden inside the source tree and replaces
them with 4 spaces.

Command used for this:
    find . -type d \( -name bluetooth \) -prune -o
    -regex '\(.*\.[hc]\|.*\.cc\)' -a -not -name 'reserve*.[ch]'
    -a -not -name 'gnt*.h' -a -not -name 'adrian*'
    -exec sed -i -e 's/\t/    /g' {} \;

The excluded files are mirrored files from external sources containing
tabs.
2013-06-24 16:56:24 +03:00
Tanu Kaskinen
8872c238ba hashmap: Use pa_free_cb_t instead of pa_free2_cb_t
The previous patch removed module-gconf's dependency on the userdata
pointer of the free callback, and that was the only place where the
userdata pointer of pa_free2_cb_t was used, so now there's no need for
pa_free2_cb_t in pa_hashmap_free(). Using pa_free_cb_t instead allows
removing a significant amount of repetitive code.
2013-02-16 01:12:21 +02:00
Mikel Astiz
ebfd656fc9 dbus: Add signal org.PulseAudio.Core1.Card.NewProfile
Add a new D-Bus signal to report profiles that have been dynamically
created for already existing cards.
2012-12-19 12:31:47 +02:00
Mikel Astiz
9c703f4e2d dbus: Support dynamically created card profiles
Use the recently added core hook to detect when new profiles are added
to a card, and update the D-Bus object accordingly.
2012-12-19 12:31:47 +02:00
Tanu Kaskinen
12af302ac7 card: Ensure that there's always at least one profile.
In practice there is always at least one profile, and I
don't think there will ever be cards without profiles.
Therefore, I added assertions to pa_card_new() stating that
the card new data must always contain at least one profile.
Now a lot of code can be simplified, because it's guaranteed
that the profiles hashmap and the active_profile field are
always non-NULL.
2012-06-29 14:24:43 +03:00
Diego Elio 'Flameeyes' Pettenò
d963998676 Rename all the signal parameters and variables to something more explicit.
Without this change, on FreeBSD you'll be bothered by tons of warnings
about overshadowing signal(2).
2009-11-21 00:46:46 +01:00
Tanu Kaskinen
0e096632c5 dbus: Do message argument type checking early, centrally. 2009-08-30 19:52:22 +03:00
Tanu Kaskinen
edf80104e3 dbus: Make sure that subscription callbacks don't try to access removed objects. 2009-08-26 14:17:35 +03:00
Tanu Kaskinen
3e0e685a8c dbus: Save one level of identation by returning early. 2009-08-26 14:12:42 +03:00
Tanu Kaskinen
90c73db449 dbusiface-card: Fix the OwnerModule property type in handle_get_all(). 2009-08-15 06:09:35 +03:00
Tanu Kaskinen
31c544d843 dbusiface-card: Assert that the profiles list is empty if there's no active
profile.
2009-08-15 06:00:46 +03:00
Tanu Kaskinen
18f9f1b5d1 dbusiface-card: Use the ++ operator like it's meant to be used. 2009-08-15 05:58:24 +03:00
Tanu Kaskinen
8b5550dba3 dbusiface-card: Split some overly long lines. 2009-08-15 05:51:55 +03:00
Tanu Kaskinen
8c8df77d2a dbusiface-card-profile: Implement the CardProfile D-Bus interface. 2009-08-09 10:36:20 +03:00
Tanu Kaskinen
acad506328 dbusiface-card: Implement the Card D-Bus interface. 2009-08-09 09:21:42 +03:00
Tanu Kaskinen
fcf68752e6 dbus: Three entangled changes:
* Make the dbus object constructors take a pa_dbusiface_core pointer
   as an argument. Remove the path_prefix argument.

 * Expose the core object path as a constant in protocol-dbus.h.

 * Move the core interface name constant from iface-core.h to
   protocol-dbus.h.
2009-08-09 08:37:33 +03:00
Tanu Kaskinen
9a77d2f81d Add the forgotten src/modules/dbus directory to git. 2009-07-21 00:04:52 +03:00