Commit graph

3062 commits

Author SHA1 Message Date
Lennart Poettering
84cd233035 Make sure libpulse never gets unloaded
When an .so is unloaded during runtime all TLS keys it has registered
need to be freed because the destructor callbacks of the TLS key might
otherwise point to invalid code. Hence it would appear sensible to
destruct the TLS keys from a function marked as __attribute__
((destructor)). However functions marked like that are also called when
an application terminates, on exit(). If a thread continues to run until
the very exit it might still want to access that TLS data. The
destructor functions are called while all other threads are still
running. If __attribute ((destructor)) is used to destruct TLS keys for
such threads this might hence cause a crash when the application shuts
down.

To circumvent this problem we'll now compile libpulse with -z nodelete,
to make it unnecessary to delete the TLS data ever and thus avoiding the
problem. It's suboptimal, but for now I see no better solution.
2008-11-01 21:11:48 +01:00
Lennart Poettering
58b53bbc1a a bit of pa_bool_t'ization 2008-11-01 21:10:26 +01:00
Lennart Poettering
adc2973c8d Implement new flags DONT_INHIBIT_AUTO_SUSPEND and START_UNMUTED 2008-10-26 19:32:04 +01:00
Lennart Poettering
c180cb5c48 bump micro version 2008-10-25 17:45:21 +02:00
Lennart Poettering
1d978cea85 Merge branch 'new-world-order'
Conflicts:
	src/Makefile.am
2008-10-25 01:23:02 +02:00
Lennart Poettering
b712e7b13d make sure to use 64bit rounding even on 32bit machines when converting to pa_usec_t 2008-10-24 04:34:10 +02:00
Lennart Poettering
3294c89adb warn if ALSA wakes us up and there is actually nothing to do 2008-10-22 23:55:52 +02:00
Lennart Poettering
6ff9c1fb62 don't set the volume of pacat unless it is explicitly set 2008-10-22 22:48:53 +02:00
Lennart Poettering
a2b3d252af update map file 2008-10-22 20:38:11 +02:00
Lennart Poettering
1cd25f1485 reorder setting of AM_CFLAGS a bit 2008-10-22 20:37:58 +02:00
Lennart Poettering
ef0cc74567 a lot more build system updates 2008-10-22 20:36:21 +02:00
Lennart Poettering
695d300156 make new build logic actually work 2008-10-22 02:22:40 +02:00
Lennart Poettering
b978d842ab update map file 2008-10-22 02:22:19 +02:00
Lennart Poettering
df6e38bfd2 temporary commit to allow flameeyes a look 2008-10-21 23:55:33 +02:00
Lennart Poettering
260fc50b36 reorder setting of AM_CFLAGS a bit 2008-10-21 22:05:13 +02:00
Lennart Poettering
c4b346259f make the debug trap macro a proper macro in macro.h 2008-10-21 22:04:22 +02:00
Lennart Poettering
ef9f3f6ec4 Try to catch certain driver errors
... by verifying return values of snd_pcm_avail_update() and
snd_pcm_begin_mmap() for their sanenness.
2008-10-21 20:00:36 +02:00
Lennart Poettering
16471915af make log meta, time, backtrace configurable using command line 2008-10-21 19:16:49 +02:00
Lennart Poettering
496499c0df Make log meta, time, backtrace configurable using config file 2008-10-21 19:15:41 +02:00
Lennart Poettering
651a451c54 support changing logging parameters during runtime using the CLI 2008-10-21 19:14:07 +02:00
Lennart Poettering
f4320d83a2 Support showing a backtrace on log messages 2008-10-21 19:13:15 +02:00
Lennart Poettering
f92a814118 include log.h near the end so that macro.h can be included in log.h and defines pa_bool_t properly 2008-10-21 18:40:01 +02:00
Lennart Poettering
d4c6342032 add pa_config_parse_unsigned() 2008-10-21 18:38:55 +02:00
Lennart Poettering
c7ed771a98 fix arguments to format string 2008-10-21 18:28:19 +02:00
Lennart Poettering
7fecb2340e convert argument to boolean int in PA_UNLIKELY, too 2008-10-21 18:27:25 +02:00
Lennart Poettering
519bb556cd fix return value of pa_frame_aligned() 2008-10-21 18:26:24 +02:00
Lennart Poettering
4ee5e06f38 implement may_move_to for ladspa/remap sinks 2008-10-21 18:25:26 +02:00
Lennart Poettering
358824b330 add new virtual function may_move_to to sink inputs/source outputs to allow modules to forbid certain connections 2008-10-21 18:24:45 +02:00
Lennart Poettering
309bc71f07 fix invalid validity check 2008-10-21 18:22:28 +02:00
Lennart Poettering
b709e1d7b4 Make missing git-changelog.perl non-fatal 2008-10-20 20:33:28 +02:00
Lennart Poettering
d675058358 Fix spelling of privilige 2008-10-19 22:25:58 +02:00
Lennart Poettering
d395792788 always check for libtool prefix binary name to avoid confusion when using both installed and run-from-build-tree versions of PA in parallel 2008-10-19 22:24:18 +02:00
Lennart Poettering
60c2a82462 Merge commit 'vudentz/master' 2008-10-13 19:55:11 +02:00
Colin Guthrie
d8465f2c4f Fix two typos that broke tunnels
Signed-off-by: Lennart Poettering <lennart@poettering.net>
2008-10-13 19:53:45 +02:00
Lennart Poettering
5a5d2884e0 properly remove dbus matches an filters when unloading m-b-d 2008-10-13 19:52:02 +02:00
Lennart Poettering
65ea1a282b correctly load module-flat-volume instead of module-flat-volumes 2008-10-13 19:28:14 +02:00
Luiz Augusto von Dentz
931cbd19f2 Fix possible invalid read while attempting to load module-bluetooth-device. 2008-10-09 19:31:43 -03:00
Lennart Poettering
8e3e88df8b Merge commit 'coling/airtunes-0.9.13' 2008-10-08 23:03:16 +02:00
Colin Guthrie
91b64bc96b Fix a potential C++/C99 ism, add a log message on error condition
Signed-off-by: Lennart Poettering <lennart@poettering.net>
2008-10-08 22:56:12 +02:00
Colin Guthrie
59eb64987f Follow master change r34dd4a and fix shutdown when --disallow-module-loading=1 is passed 2008-10-08 20:37:43 +01:00
Colin Guthrie
8715121755 Modularise the RAOP stuff that requires OpenSSL and make it optional at compile time 2008-10-08 20:37:43 +01:00
Colin Guthrie
c3d8bb5b34 Remove $Id$ lines left over from SVN 2008-10-08 20:36:24 +01:00
Colin Guthrie
19d2831973 Make module-raop-sink/discover work with 0.9.11 API 2008-10-08 20:36:24 +01:00
Colin Guthrie
ded09d1f9b Implement hardware volume control.
This allows near instant change of volume when controlling the hardware but the stream volume still suffers from a sizable delay.
2008-10-08 20:36:24 +01:00
Colin Guthrie
e543e04ca7 Implement a set volume function to expose this capability to higher layers 2008-10-08 20:36:24 +01:00
Colin Guthrie
36f2aad5f0 Use the new pa_namereg_make_valid_name() function. 2008-10-08 20:36:24 +01:00
Colin Guthrie
0ff75aea05 Add Lennart back in to Copyright as I copied these files from his originals and was a bit overzealous in changing things ;)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2520 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:35:47 +01:00
Colin Guthrie
729bbaf884 Automatic discovery of airtunes devices via Bonjour/Avahi.
This also does some minor reordering in the Makefile.am
Refs #69

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2519 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:35:47 +01:00
Colin Guthrie
d997420791 Minor correction of help text
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2518 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:33:48 +01:00
Colin Guthrie
15e8420a25 Still send silence when we are not doing anything else, but also flush the buffers correctly upon recovery from suspension.
Close the RTP socket correctly after passing messages about.
When not sending silence, the RTSP socket will be closed after some period of inactivity. I'm not sure why this is.
Sending silence keeps things working and with the flushes after suspension we now get a better latency. As this relies on the auto-suspend feature, it's not exactly ideal.
Typical latencies are currently about 3s which makes it more or less usuable for listening to music.
If the connection is disconnected, it will reconnect but I've found that the second connection is silent. Hopefully the silence will prevent the first connection dropping.
Refs #69

git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/coling@2504 fefdeb5f-60dc-0310-8127-8f9354f1896f
2008-10-08 20:32:09 +01:00