fdsem: remove superfluous parameter in call to pa_fdsem_new_shm

This parameter was never assigned, so just remove it.

Note that the only current user of this function is shmasyncq.c,
which is unused - we don't even build it. But I fixed it up anyway.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
fdsem: Use atomic.h

The fdsem header uses pa_atomic_t, which is declared in atomic.h

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
core-util: Call fchown() only when necessary

This reportedly fixes some cases where the home directory is on NFS.

BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=45656
core-util: Remove redundant check of directory permissions

Initially (in commit ef422fa4ae626e9638ca70d1c56f27e701dd69c2),
pa_make_secure_dir followed a simple principle: "make a directory, or,
if it exists, check that it is suitable". Later this evolved into "make
a directory, or, if it exists, ensure that it is suitable". But the
check remained.

The check is now neither sufficient nor necessary. On POSIX-compliant
systems, the fstat results being checked are actually post-conditions of
fchmod and fchown. And on systems implementing POSIX ACLs, fstat only
reflects a part of the information relevant to the security of the
directory permissions, so PulseAudio could accept an existing insecure
directory anyway.

Also, the check still fires on non-POSIX-compliant filesystems like CIFS.
As a user cannot do anything to fix it, just accept insecure permissions
in this case.
combine-sink: fix zero adjust_time behaviour.

A value of 0 for adjust_time should disable rate adjustment.
Fix a bug where a 0 value causes rate adjustment to be called
continuously instead after an unsuspend event.
sink-input, source-output: Fix mute saving

"i->save_muted = i->save_muted || mute" makes no sense. The intention
was most likely to use "save" instead of "mute" in the assignment.
This line originates from reverting the volume ramping code, commit
8401572fd534f10e07ed6a418e1399b1294d5596.

The idea of "i->save_muted |= save" is that even if the mute state
doesn't change, save_muted should still be updated, but only if the
transition is from "don't save" to "save".

Changing "!i->muted == !mute" to "mute == i->muted" is cosmetic only.
The rationale behind the old form was probably that when we still had
pa_bool_t, booleans could in theory be defined as int, so comparing
the values without the ! operator was not entirely safe. That's
unnecessary now that we use the standard bool type, which can only
have values 0 or 1.
gconf: Remove unused variable
gconf: Avoid calling deprecated function if possible

g_type_init() is need no longer be called explicitly from glib 2.36
onwards.
default.pa: Use freedesktop theme sounds in sample examples