| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This commit mostly converts the X11 handling to XCB. There are still
some uses of XLib to deal with the X11 session handling modules, however all
client-side code should now be free of XLib and thus this should fix Bug #799
Note that this removes the screen-based changes by Leszek Koltunski
in 65e80, however this will be restored in due course.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Second version after Tanu's feedback
TODO:
- notify client that volume control is disabled
- change sink rate in passthrough mode if needed
- automatic detection of passthrough mode instead of hard
coded profile names
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
|
| |
|
| |
|
|
|
|
|
|
| |
The pretty name is suspposed to be understandable by non-technical
folks, and they are generally more used to the term "Subwoofer" than
"Low Frequency Emitter", so let's change the name here.
|
|
|
|
|
|
|
|
|
|
|
|
| |
not know anything about
All seeks/flushes that depend on the playback buffer read pointer cannot
be accounted for properly in the client since it does not know the
actual read pointer. Due to that the clients do not account for it at
all. We need do the same on the server side. And we did, but a little
bit too extreme. While we properly have not applied the changes to the
"request" counter we still do have to apply it to the "missing" counter.
This patch fixes that.
|
|
|
|
|
|
|
| |
This allows easy overriding of a clients latency setting for debugging
purposes.
http://pulseaudio.org/ticket/753
|
|
|
|
|
|
|
| |
Make suer we check the connection state before going on, so that we can
rely that s->context->pstream is properly initialized.
https://bugzilla.redhat.com/show_bug.cgi?id=539500
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Do not subtract bytes the client sends us beyond what we requested from
our missing bytes counter.
This was mostly a thinko that caused servers asking for too little data
when the client initially sent more data than requested, because that
data sent too much was accounted for twice.
This commit fixes this miscalculation.
http://bugzilla.redhat.com/show_bug.cgi?id=534130
|
|
|
|
|
|
|
| |
This fixes an assert when destructing modules that have not been fully
initialized.
https://bugzilla.redhat.com/show_bug.cgi?id=548525
|
|
|
|
|
|
|
|
|
| |
This is the same typo as reported in [1] and fixed in [2] in `client.conf.in`.
I did `git grep "values a commented"` and did not get anymore hits.
[1] http://pulseaudio.org/ticket/783
[2] http://git.0pointer.de/?p=pulseaudio.git;a=commit;h=ea8927f1d47be101a1f64b2f87fd6e527ff76dbe
|
| |
|
|
|
|
|
|
|
| |
auto-connect-localhost=
Just connecting to a PA server just because X11's $DISPLAY is set might
be a security hole.
|
|
|
|
|
|
|
|
|
| |
Partly fixes:
http://pulseaudio.org/ticket/773
Also fixes a security hole since listening on the default port is not
access controlled right now.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Even on 10.5.8, poll() does not do the right thing. Haven't checked on
newer versions. Hence, wrap all occurences of poll() to pa_poll and
emulate that call with select() on OSX. This is totally embarassing.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note also the willneed/will_need inconsistency. I guess it could be nice to ASAP
choose one of them and introduce a backward compatibility hack for the other.
The issues was mostly found with:
for a in $(grep -r '^[ /]\*.*()' $(
find -name '*.[ch]') |
sed 's,^.* \([^ ]*\)().*$,\1,g' |
sort |
uniq |
grep ^pa_)
do
grep -rq "^.[^*].*\<$a(" $(find * -name '*.h') || echo $a
done
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
deadlock
Compiler optimisations have been seen to initialise
m->n_waiting_for_accept to a positive non-zero value, so the while() in
pa_threaded_mainloop_signal() never proceeds. Fix this by properly
initializing m->n_waiting_for_accept in pa_threaded_mainloop_new().
Patch from Iain Bucław.
https://bugs.launchpad.net/bugs/502992
|
|
|
|
|
|
|
|
|
| |
'n_waiting' and 'n_waiting_for_accept' may be accessed from mulitple
threads, and thus need to be marked as volatile to suppres certain
compiler optimisations. All uses are protected by a mutex, so we don't
need to worry about cache issues (added documentation for this as well).
This addresses bug #738.
|
|
|
|
|
|
|
|
|
| |
Since the stream identifiers (channels) are monotonically growing integer, it
isn't a good idea to use them as index to a dynamic array, because the array
will grow all the time. This is not a problem with client connections that
don't create many streams, but, for example, long-running clients that use
libcanberra for playing event sounds, this means that the client connection
effectively leaks memory.
|
|
|
|
|
|
| |
Stolen from
http://www.freebsd.org/cgi/cvsweb.cgi/ports/audio/pulseaudio/files/patch-src_pulse_util.c?rev=1.1
and fixed for indentation.
|
|
|
|
| |
state change so that in the STARTED/UNDERFLOW callbacks we accurate transport latency information
|
|
|
|
| |
don't want the timer to advance when we are supposedly already paused
|
|
|
|
| |
in corked state
|
|
|
|
| |
Third time is a charm... maybe.
|
| |
|
|
|
|
|
|
| |
added function to increase volume not exceeding specified limit
simply changed PA_VOLUME_MAX to 'limit' in pa_cvolume_inc
pa_cvolume_inc now calls pa_cvolume_inc_clamp with PA_VOLUME_MAX limit
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
the sink/source index with PA_INVALID_INDEX meaning unavailable
|
|\ |
|
| |
| |
| |
| |
| |
| | |
We put in the devices from the wire into a hashmap and then add all like type device in the database
and then order them based on priority (with the ones specified on the wire always being in that order at
the top of the list.
|
| |
| |
| |
| | |
Also leave space for 'icon' and 'available' details too, althought currently this info is dummy.
|
| |
| |
| |
| |
| |
| |
| | |
The structure itself will contain various bits of info so exposing this fully to the client is a bad idea.
By keeping to a rename operation we keep what we do store abstracted from the clients.
Also fix some doxy comments.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows clients to edit the priroity order. What is not yet in place is the initialisation of that priority list
when new devices are detected or the cleaning (remove holes) when devices are removed.
In order to keep the storage transparent I will likely remove the write functionality and replace it with a
simple rename method.
I also still need to expose the priority itself when reading the data.
|
| |
| |
| |
| |
| |
| |
| | |
device-priority routing.
The routing logic itself does not yet exist, but the command currently will unload/load module-stream-restore as approriate.
(module-stream-restore would conflict with the role-based priority-routing).
|
| | |
|
| | |
|
| |
| |
| |
| | |
This is effectively copied from the stream restore extension.
|
|\|
| |
| |
| |
| | |
Conflicts:
src/daemon/daemon-conf.c
|
| |
| |
| |
| | |
This avoids the need for ugly casting in client implementations.
|
| | |
|
| | |
|
| | |
|
| | |
|