Commit graph

5034 commits

Author SHA1 Message Date
Daniel Mack
b83d7a27ce configure.ac: enable check for CoreAudio 2009-10-31 02:00:58 +01:00
David Yoder
5c57650769 daemon: realpath segfault fix
Lennart,

Apparently I was debugging this at the same time as you. I can't figure out
why my Fedora 11 install with glibc-2.10 has a glibc realpath that doesn't
match the gnu documentation and returns null. But it does.

Your commit aa8ce5bb9b almost fixed my
problem, but it needs a tweak.

Thanks,
David Yoder
2009-10-31 01:56:59 +01:00
Daniel Mack
542fa468c2 Mac OS X: add semaphore implementation
On Wed, Sep 16, 2009 at 11:57:04PM +0200, Lennart Poettering wrote:
> On Wed, 16.09.09 15:15, Daniel Mack (daniel@caiaq.de) wrote:
>
> > +    s = pa_xnew(pa_semaphore, 1);
> > +    MPCreateSemaphore(UINT_MAX, value, &(s->sema));
> > +    pa_assert(s->sema != 0);
>
> Hmm, I'd prefer if the ret val of MPCreateSemaphore() would be checked
> here.
>
> Also I find it a bit weird checking for s->sema, though not
> initializing it to 0 in the beginning. If the call actually failed,
> then the assert will check uninitialized memory. Also, comparing
> pointers with 0 sucks. That should be NULL.
>
> Given that this can not realisitically fail, only in OOM or OOM-like
> situations in which case we abort anyway it mght be enough just writing:
>
> pa_assert_se(MPCreateSemaphore(UINT_MAX, value, &s->sema) == 0);
>
> (Assuming that success is signalled by retval == 0 on MacOSX)
>
> > +void pa_semaphore_free(pa_semaphore *s) {
> > +    pa_assert(s);
> > +    MPDeleteSemaphore(s->sema);
>
> Same here.
>
> > +    pa_xfree(s);
> > +}
> > +
> > +void pa_semaphore_post(pa_semaphore *s) {
> > +    pa_assert(s);
> > +    MPSignalSemaphore(s->sema);
>
> And here.
>
> > +}
> > +
> > +void pa_semaphore_wait(pa_semaphore *s) {
> > +    pa_assert(s);
> > +    /* should probably check return value (-ve is error), noErr is ok. */
> > +    MPWaitOnSemaphore(s->sema, kDurationForever);
>
> And here.

Ok, done. See the patch below.

Daniel

>From 26df2fbae6d9215a3ae084876fb5f79e4d9cf4f0 Mon Sep 17 00:00:00 2001
From: Kim Lester <kim@dfusion.com.au>
Date: Wed, 16 Sep 2009 09:23:39 +0800
Subject: [PATCH] Mac OS X: add semaphore implementation
2009-10-31 01:34:04 +01:00
Daniel Mack
b04fe9b516 Wrap clock_gettime and friends
On Wed, Sep 16, 2009 at 11:48:58PM +0200, Lennart Poettering wrote:
> On Wed, 16.09.09 15:15, Daniel Mack (daniel@caiaq.de) wrote:
>
> > From: Kim Lester <kim@dfusion.com.au>
> >
> > OS X does not define clockid_t or clock_gettime() and friends.
> > Add a wrapper to fix this.
>
> Hmpf. I am not particularly happy with this. This adds a lot of
> unnecessary compat code. We don't actually need implementations of
> clock_getres(). All we need is some kind of check whether system
> timers are accurate or whether they are rounded up to scheduling
> slices. On Linux we do that check with clock_getres(), but all the
> information it returns is actually not intertesting at all. We just
> check if this is below some trheshold, that's all.
>
> clock_settime() we don't use at all! We shouldn't carry compat code
> for that.
>
> And clock_gettime we don't really need either. We need some kind of
> accurate system timers (preferably monotonic), and on Linux we use
> clock_gettime() for that. But we already have a fallback there for
> gettimeofday().
>
> Or in other words, the current APIs pa_rtclock_get(),
> pa_rtclock_hrtimer() is supposed to be the abstract API that has
> different backends on different systems. I'd very much prefer if any
> MacOS specific code would simply be plugged in there instead of
> creating various new abstraction interfaces!

Ok - what about the version below? I don't particularily like the

Daniel

>From 9f0a051953ec354ccdb8aa44a9845c408b26ae0b Mon Sep 17 00:00:00 2001
From: Kim Lester <kim@dfusion.com.au>
Date: Wed, 16 Sep 2009 14:40:01 +0800
Subject: [PATCH] Implement pa_rtclock_get() and pa_rtclock_hrtimer() for Darwin

OS X does not define clockid_t or clock_gettime() and friends.
Add wrappers to fix this. Based on a patch from Kim Lester
<kim@dfusion.com.au>.
2009-10-31 01:33:13 +01:00
Leszek Koltunski
65e8078a3b X11: attach X11 properties to Screen, not Display 2009-10-30 05:24:41 +01:00
Lennart Poettering
366ab9633b git: ignore kde related files 2009-10-30 05:20:00 +01:00
Wim Taymans
056930cbcd svolume: fix MMX error
We need to sign extend the lower part of the multiplication before adding it to
the higher part. Makes -1 * 0xffff work again.
2009-10-30 05:09:15 +01:00
Wim Taymans
8a49514f74 sink: simplify silence checks 2009-10-30 05:09:05 +01:00
Lennart Poettering
aa8ce5bb9b daemon: don't crash if pa_realpath() fails 2009-10-30 05:08:48 +01:00
Lennart Poettering
a82c6b0cd5 socket-util: drop redundant casts 2009-10-30 04:55:13 +01:00
Lennart Poettering
75f7a971db socket-util: allocate at least sizeof(sockaddr_storage) space 2009-10-30 04:54:55 +01:00
Lennart Poettering
168be3830a use pa_fopen_cloexec() where applicable 2009-10-30 04:54:19 +01:00
Lennart Poettering
88b72958be tdb: use O_CLOEXEC if available 2009-10-30 04:53:15 +01:00
Lennart Poettering
752727a13d core-util: introduce pa_fopen_cloexec() 2009-10-30 04:20:24 +01:00
Lennart Poettering
a698ee3f52 core-util: make sure to enable FD_CLOEXEC unconditionally to cope with kernels that silently accept but ignore O_CLOEXEC 2009-10-30 04:16:59 +01:00
Lennart Poettering
65e7bc18a9 use cloexec wrappers wherever applicable 2009-10-30 03:32:38 +01:00
Lennart Poettering
9c1a98953f core-util: introduce FD_CLOEXEC wrappers for open/socket/pipe/accept 2009-10-30 03:30:42 +01:00
Lennart Poettering
754644fa6e Merge remote branch 'origin/master' 2009-10-29 01:54:45 +01:00
Lennart Poettering
e7e4e4459e simd: update test cases 2009-10-29 01:52:39 +01:00
Lennart Poettering
2edb4df175 smoother: add comments about optimization recommendations from Jason Newton 2009-10-29 01:49:40 +01:00
Lennart Poettering
f27a50691c libpulse: introduce PA_STREAM_RELATIVE_VOLUME 2009-10-29 00:46:22 +01:00
Lennart Poettering
546bcf3f2f protocol-native: if a client set volume/mute/device store it since it is user input 2009-10-28 23:50:42 +01:00
Lennart Poettering
2501687579 libpulse: explain semantics of pa_stream_connect_playback() in more detail 2009-10-28 23:47:50 +01:00
Lennart Poettering
27c6a80ccb protocol-native: declare that user configured volumes are always absolute 2009-10-28 23:47:21 +01:00
Lennart Poettering
78984e4395 pactl: format cookie a little bit nicer 2009-10-28 23:28:12 +01:00
Lennart Poettering
8678f56532 pactl: include information about client context in pactl stat output 2009-10-28 23:27:50 +01:00
Lennart Poettering
7c55d6e91d clients: drop definition of BUFSIZE which is unused 2009-10-28 23:27:14 +01:00
Lennart Poettering
4538523a29 libpulse: introduce pa_context_get_tile_size() call 2009-10-28 23:26:48 +01:00
Lennart Poettering
744490a681 memblock: decrease tile size to 64k again 2009-10-28 21:29:01 +01:00
Jason Newton
e9ccc61a2f module-equalizer-sink: drop source executable permissions configure.ac: add enable/disable + summary line for fftw 2009-10-20 04:09:34 +02:00
Jason Newton
16e77f3ab2 module-equalizer-sink:
*fixed SSE2 optimized dsp logic (default if available)
    *cleaned up whitespace formatting (again)
2009-10-20 04:09:34 +02:00
Jason Newton
ff903ef542 module-equalizer-sink: fixed equalizer state save/restore 2009-10-20 04:09:32 +02:00
Jason Newton
d25b9eab0f module-equalizer-sink: drop source executable permissions configure.ac: add enable/disable + summary line for fftw 2009-10-19 18:34:38 -07:00
Colin Guthrie
bec67cd75f device-manager: Fix compiler warning.
Do not use a variable called 'index' as it clashes with string.h
2009-10-19 21:50:03 +01:00
Jason Newton
8f2289c563 module-equalizer-sink:
*fixed SSE2 optimized dsp logic (default if available)
    *cleaned up whitespace formatting (again)
2009-10-18 15:08:05 -07:00
Jason Newton
781eb594bb module-equalizer-sink: fixed equalizer state save/restore 2009-10-18 14:58:43 -07:00
Lennart Poettering
c9375aa5e9 libpulse: add missing includes 2009-10-12 21:21:26 +02:00
Daniel Mack
e5ac4b5ee7 buil-sys: fix build w/o DBus
The current git head does not build without DBus libraries installed.
Does the patch below look suitable?

Thanks,
Daniel

>From f69145fc603c56cef02134ceeba10e1727fa217e Mon Sep 17 00:00:00 2001
From: Daniel Mack <daniel@caiaq.de>
Date: Thu, 8 Oct 2009 14:41:21 +0800
Subject: [PATCH] Makefile.am: fix builds without DBus

Signed-off-by: Daniel Mack <daniel@caiaq.de>
2009-10-12 21:21:26 +02:00
Colin Guthrie
0ff2a6b434 device-manager: Rather than flagging the device as available, just include the sink/source index with PA_INVALID_INDEX meaning unavailable 2009-10-10 15:45:49 +01:00
Diego Elio 'Flameeyes' Pettenò
8ec304d2d1 Fix build when using -fweb, accept both register and memory constraints.
This was reported as Gentoo bug #287391 by Torsten Kaiser, and the fix was
suggested by Mike Frysinger.
2009-10-07 19:31:11 +02:00
Diego Elio 'Flameeyes' Pettenò
f55357cd0b Add check for FFTW, and add option to disable it at build-time.
This way there will be a message at configure if FFTW is not found, and
this gets in-line with the rest of the modules' dependencies.
2009-10-07 19:30:11 +02:00
Diego Elio 'Flameeyes' Pettenò
b64b6bbf4c Fix out-of-tree builds when dbus module is enabled. 2009-10-07 19:29:33 +02:00
Lennart Poettering
d0b478e9a6 Merge remote branch 'coling/history' 2009-10-07 03:46:06 +02:00
Lennart Poettering
9f226d25d6 Merge remote branch 'phish3/master' 2009-10-07 03:43:24 +02:00
Lennart Poettering
692ce73899 Merge remote branch 'tanuk/dbus-work' 2009-10-07 03:39:30 +02:00
Lennart Poettering
b3592a160f position-event-sounds: never position test sounds in space 2009-10-06 23:34:22 +02:00
Lennart Poettering
c96d2d1117 alsa: disable period event only with tsched=1 2009-10-06 00:17:54 +02:00
Tor-Björn Claesson
7b682c9690 loopback: Setting latency of module-loopback
I checked the source code, and latency_msec is missing from the list
of valid module arguments. Attaching a patch to add it.
2009-10-05 23:24:20 +02:00
Lennart Poettering
40c1ca76c4 bluetooth: don't set auto_connect flag when discovering bt devices 2009-10-04 13:00:51 +02:00
Colin Guthrie
9d7a27ec88 device-manager: Play nice with module-stream-restore.
If m-s-r sets the device we let it do so. Otherwise we handle the routing. We run before
module-intended-roles as the priority list will likely be configured appropriately
to do the same job, albeit with manual setup.
2009-10-02 22:44:56 +01:00