Hello community,

here is the log from the commit of package alsa for openSUSE:Factory checked in 
at 2012-12-04 13:15:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/alsa (Old)
 and      /work/SRC/openSUSE:Factory/.alsa.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "alsa", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/alsa/alsa.changes        2012-12-03 
09:23:53.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.alsa.new/alsa.changes   2012-12-04 
13:15:49.000000000 +0100
@@ -1,0 +2,6 @@
+Tue Dec  4 12:19:34 CET 2012 - [email protected]
+
+- 0040-PCM-Fix-conflict-of-_snd_pcm_hw_params-definitions.patch:
+  fix the segfault due to the symbol conflict of _snd_pcm_hw_params
+
+-------------------------------------------------------------------

New:
----
  0040-PCM-Fix-conflict-of-_snd_pcm_hw_params-definitions.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ alsa.spec ++++++
--- /var/tmp/diff_new_pack.g1MzjW/_old  2012-12-04 13:15:52.000000000 +0100
+++ /var/tmp/diff_new_pack.g1MzjW/_new  2012-12-04 13:15:52.000000000 +0100
@@ -91,6 +91,7 @@
 Patch37:        0037-PCM-Add-more-chmap-definitions-for-UAC2.patch
 Patch38:        0038-PCM-shut-up-a-compile-unused-parameter-compile-warni.patch
 Patch39:        0039-Add-workaround-for-conflicting-snd_seq_event_t-defin.patch
+Patch40:        0040-PCM-Fix-conflict-of-_snd_pcm_hw_params-definitions.patch
 #
 Patch99:        alsa-lib-doxygen-avoid-crash-for-11.3.diff
 Url:            http://www.alsa-project.org/
@@ -180,6 +181,7 @@
 %patch37 -p1
 %patch38 -p1
 %patch39 -p1
+%patch40 -p1
 %if %suse_version == 1130
 %patch99 -p1
 %endif

++++++ 0040-PCM-Fix-conflict-of-_snd_pcm_hw_params-definitions.patch ++++++
>From 03c26d0edeeefb7550ba8cca91167343677022ab Mon Sep 17 00:00:00 2001
From: Takashi Iwai <[email protected]>
Date: Tue, 4 Dec 2012 12:17:00 +0100
Subject: [PATCH] PCM: Fix conflict of _snd_pcm_hw_params definitions

Fix the call of _snd_pcm_hw_params() to _snd_pcm_hw_params_internal().
The build passed wrongly because of _snd_pcm_hw_params define.
Having the same function name as the struct name is is simply
confusing...

Also, to be sure, _snd_pcm_hw_params is undef'ed in pcm_local.h, too.

Signed-off-by: Takashi Iwai <[email protected]>
---
 src/pcm/pcm.c           | 2 +-
 src/pcm/pcm_file.c      | 2 +-
 src/pcm/pcm_generic.c   | 2 +-
 src/pcm/pcm_local.h     | 1 +
 src/pcm/pcm_meter.c     | 2 +-
 src/pcm/pcm_mmap_emul.c | 4 ++--
 src/pcm/pcm_plug.c      | 2 +-
 src/pcm/pcm_share.c     | 2 +-
 8 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c
index d616705..5053a7b 100644
--- a/src/pcm/pcm.c
+++ b/src/pcm/pcm.c
@@ -828,7 +828,7 @@ int snd_pcm_hw_params(snd_pcm_t *pcm, snd_pcm_hw_params_t 
*params)
 {
        int err;
        assert(pcm && params);
-       err = _snd_pcm_hw_params(pcm, params);
+       err = _snd_pcm_hw_params_internal(pcm, params);
        if (err < 0)
                return err;
        err = snd_pcm_prepare(pcm);
diff --git a/src/pcm/pcm_file.c b/src/pcm/pcm_file.c
index c8214b4..5950401 100644
--- a/src/pcm/pcm_file.c
+++ b/src/pcm/pcm_file.c
@@ -602,7 +602,7 @@ static int snd_pcm_file_hw_params(snd_pcm_t *pcm, 
snd_pcm_hw_params_t * params)
        snd_pcm_file_t *file = pcm->private_data;
        unsigned int channel;
        snd_pcm_t *slave = file->gen.slave;
-       int err = _snd_pcm_hw_params(slave, params);
+       int err = _snd_pcm_hw_params_internal(slave, params);
        if (err < 0)
                return err;
        file->buffer_bytes = snd_pcm_frames_to_bytes(slave, slave->buffer_size);
diff --git a/src/pcm/pcm_generic.c b/src/pcm/pcm_generic.c
index 5fc4888..f068ee2 100644
--- a/src/pcm/pcm_generic.c
+++ b/src/pcm/pcm_generic.c
@@ -101,7 +101,7 @@ int snd_pcm_generic_hw_refine(snd_pcm_t *pcm, 
snd_pcm_hw_params_t *params)
 int snd_pcm_generic_hw_params(snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
 {
        snd_pcm_generic_t *generic = pcm->private_data;
-       return _snd_pcm_hw_params(generic->slave, params);
+       return _snd_pcm_hw_params_internal(generic->slave, params);
 }
 
 int snd_pcm_generic_prepare(snd_pcm_t *pcm)
diff --git a/src/pcm/pcm_local.h b/src/pcm/pcm_local.h
index c616e56..63b9036 100644
--- a/src/pcm/pcm_local.h
+++ b/src/pcm/pcm_local.h
@@ -579,6 +579,7 @@ static inline int muldiv_near(int a, int b, int c)
 
 int snd_pcm_hw_refine(snd_pcm_t *pcm, snd_pcm_hw_params_t *params);
 int _snd_pcm_hw_params_internal(snd_pcm_t *pcm, snd_pcm_hw_params_t *params);
+#undef _snd_pcm_hw_params
 int snd_pcm_hw_refine_soft(snd_pcm_t *pcm, snd_pcm_hw_params_t *params);
 int snd_pcm_hw_refine_slave(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
                            int (*cprepare)(snd_pcm_t *pcm,
diff --git a/src/pcm/pcm_meter.c b/src/pcm/pcm_meter.c
index e60b92d..573b6fe 100644
--- a/src/pcm/pcm_meter.c
+++ b/src/pcm/pcm_meter.c
@@ -419,7 +419,7 @@ static int snd_pcm_meter_hw_refine_slave(snd_pcm_t *pcm, 
snd_pcm_hw_params_t *pa
 static int snd_pcm_meter_hw_params_slave(snd_pcm_t *pcm, snd_pcm_hw_params_t 
*params)
 {
        snd_pcm_meter_t *meter = pcm->private_data;
-       return _snd_pcm_hw_params(meter->gen.slave, params);
+       return _snd_pcm_hw_params_internal(meter->gen.slave, params);
 }
 
 static int snd_pcm_meter_hw_refine(snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
diff --git a/src/pcm/pcm_mmap_emul.c b/src/pcm/pcm_mmap_emul.c
index 67d2e05..63789bc 100644
--- a/src/pcm/pcm_mmap_emul.c
+++ b/src/pcm/pcm_mmap_emul.c
@@ -160,7 +160,7 @@ static int snd_pcm_mmap_emul_hw_params(snd_pcm_t *pcm,
        snd_pcm_access_mask_t *pmask;
        int err;
 
-       err = _snd_pcm_hw_params(map->gen.slave, params);
+       err = _snd_pcm_hw_params_internal(map->gen.slave, params);
        if (err >= 0) {
                map->mmap_emul = 0;
                return err;
@@ -186,7 +186,7 @@ static int snd_pcm_mmap_emul_hw_params(snd_pcm_t *pcm,
        default:
                goto _err;
        }
-       err = _snd_pcm_hw_params(map->gen.slave, params);
+       err = _snd_pcm_hw_params_internal(map->gen.slave, params);
        if (err < 0)
                goto _err;
 
diff --git a/src/pcm/pcm_plug.c b/src/pcm/pcm_plug.c
index 0bd8850..fa84eaa 100644
--- a/src/pcm/pcm_plug.c
+++ b/src/pcm/pcm_plug.c
@@ -1040,7 +1040,7 @@ static int snd_pcm_plug_hw_params(snd_pcm_t *pcm, 
snd_pcm_hw_params_t *params)
                        return err;
        }
        slave = plug->gen.slave;
-       err = _snd_pcm_hw_params(slave, params);
+       err = _snd_pcm_hw_params_internal(slave, params);
        if (err < 0) {
                snd_pcm_plug_clear(pcm);
                return err;
diff --git a/src/pcm/pcm_share.c b/src/pcm/pcm_share.c
index 936e2f9..118ab26 100644
--- a/src/pcm/pcm_share.c
+++ b/src/pcm/pcm_share.c
@@ -595,7 +595,7 @@ static int snd_pcm_share_hw_refine_slave(snd_pcm_t *pcm, 
snd_pcm_hw_params_t *pa
 static int snd_pcm_share_hw_params_slave(snd_pcm_t *pcm, snd_pcm_hw_params_t 
*params)
 {
        snd_pcm_share_t *share = pcm->private_data;
-       return _snd_pcm_hw_params(share->slave->pcm, params);
+       return _snd_pcm_hw_params_internal(share->slave->pcm, params);
 }
 
 static int snd_pcm_share_hw_refine(snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
-- 
1.8.0.1




-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to