| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of open functions in alsa-lib have the call pattern:
snd_config_update();
return snd_xxx_open(x, snd_config, ...);
This means that the toplevel config gets updated, and passed to a
local open function. Although snd_config_update() itself has a
pthread mutex to be thread safe, the whole procedure above isn't
thread safe. Namely, the global snd_config tree may be deleted and
recreated at any time while the open function is being processed.
This may lead to a data corruption and crash of the program.
For avoiding the corruption, this patch introduces a refcount to
config tree object. A few new helper functions are introduced as
well:
- snd_config_update_ref() does update and take the refcount of the
toplevel tree. The obtained config tree has to be freed via
snd_config_unref() below.
- snd_config_ref() and snd_config_unref() manage the refcount of the
config object. The latter eventually deletes the object when all
references are gone.
Along with these additions, the caller of snd_config_update() and
snd_config global tree in alsa-lib are replaced with the new helpers.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
|
|
|
|
|
|
|
|
|
| |
Like pcm and rawmidi, each object parser needs to accept the hint
component. Now a new local function _snd_conf_generic_id() was
introduced to replace each call of "comment" and "type" field checks.
Also, the two existing identical functions for pcm and rawmidi are
removed and the new function is used commonly.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
|
|
|
|
|
|
|
| |
- rename configure.in to configure.ac
- replace INCLUDES with AM_CPPFLAGS
- modernize AM_INIT_AUTOMAKE invocation
Signed-off-by: Patrick Welche <prlw1@cam.ac.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
|
|
|
|
|
|
| |
Add --with-max-cards option to specify the max number of cards in
configure script, when the support for more than 32 cards is
required.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
|
|
|
|
|
|
|
|
|
| |
Coverity Static Analysis helps developers find hard-to-spot,
yet potentially crash-causing defects early in the development phase,
reducing the cost,time, and risk of software errors.
This patch has fix for situations where variable can be NULL
but not been checked beforehand
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
|
|
|
| |
Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
|
|
|
|
|
|
| |
This excludes the mixer for now since it requires a change to the
public headers.
Signed-off-by: Diego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>
|
| |
|
|
|
|
|
| |
Allow building alsa-lib without libdl and libpthread.
Added new options to configure, --with-libdl and --with-pthread.
|
|
|
|
|
|
| |
- Add missing pcm_empty entry
- Return the array pointer instead of the first array member.
Otherwise only the first entry is linked to the binary.
|
|
|
|
| |
Added the missing snd_dlclose() in snd_hwdep_close().
|
|
|
|
|
|
| |
Add configuration options to change the default device path from the
default /dev/snd. This is useful for embedded systems that do not want
subdirectories in /dev.
|
|
|
|
|
| |
free() correctly handles NULL pointers, so we can omit explicit checks
for that condition.
|
|
|
|
|
|
| |
Remove several memory leaks by not aborting prematurely from a
snd_xxx_close() function when some operation fails.
This can happen when a USB device was unplugged.
|
|
|
|
| |
Fixed compile warnings with gcc-4 about pointer signedness.
|
|
|
|
|
| |
Fix the warnings of doxygen parsing.
Add some missing documentation.
|
| |
|
|
|
|
|
| |
Call normal open() before trying with res_open_device().
snd_open_device() is defined to do this procedure.
|
|
|
|
|
| |
Added the support for resmgr. A new configure option --with-resmgr is added
to enable the resmgr support.
|
| |
|
|
|
|
| |
rewritten with C99 struct initialization style.
|
| |
|
|
|
|
| |
- updated the internal asound.h.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Changed GNU LGPL licence from 2.0 to 2.1.
|
|
|
|
| |
timer); Uros
|
| |
|
| |
|
|
|
|
| |
Some minor changes in config interface documentation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- changed snd_config_get_id function to follow semantic of other get functions
- added snd_config_test_id
- added runtime pointer type (not persistent)
- added snd_config_make_pointer, snd_config_set_pointer, snd_config_get_pointer
- added type/contents checking for callback functions
- changed 'void *private_data' to 'snd_config_t *private_data'
- renamed card_strtype functions to card_driver
Control:
- fixed passing parameters to snd_ctl_async
Async handlers:
- added public snd_async_handler_get_signo function
Documentation:
- moved all documentation to source files
|
| |
|
| |
|
|
|
|
| |
Removed snd_config_refer_load from confmisc.c and pcm.c.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Added hwdep configuration to alsa.conf.
Added documentation for hwdep interface.
|
|
|
|
|
| |
Removed snd_enum_() macros.
Documentation changes in asoundlib.h.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
hw_params API. Added missing const.
|
| |
|
|
|
|
| |
Completed encapsulation of PCM API. Removed snd_pcm_card(). All copy functions now have the form copy(dst, src).
|