Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:12.2
alsa
0015-Fix-the-binary-compatibility-of-ext-ctl-pl...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0015-Fix-the-binary-compatibility-of-ext-ctl-plugin-with-.patch of Package alsa
From 52160de21ee6a710a746b0881d9581994d039123 Mon Sep 17 00:00:00 2001 From: Takashi Iwai <tiwai@suse.de> Date: Mon, 25 Jun 2012 23:16:14 +0200 Subject: [PATCH] Fix the binary compatibility of ext-ctl plugin with protocol 1.0.0 Signed-off-by: Takashi Iwai <tiwai@suse.de> --- include/control_external.h | 9 +++++---- src/control/control_ext.c | 3 ++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/include/control_external.h b/include/control_external.h index 5392ea6..e98f4d6 100644 --- a/include/control_external.h +++ b/include/control_external.h @@ -125,16 +125,17 @@ struct snd_ctl_ext { * control handle filled by #snd_ctl_ext_create() */ snd_ctl_t *handle; + + int nonblock; /**< non-block mode; read-only */ + int subscribed; /**< events subscribed; read-only */ + /** - * optional TLV data for the control. + * optional TLV data for the control (since protocol 1.0.1) */ union { snd_ctl_ext_tlv_rw_t *c; const unsigned int *p; } tlv; - - int nonblock; /**< non-block mode; read-only */ - int subscribed; /**< events subscribed; read-only */ }; /** Callback table of ext */ diff --git a/src/control/control_ext.c b/src/control/control_ext.c index cc30766..56552fa 100644 --- a/src/control/control_ext.c +++ b/src/control/control_ext.c @@ -706,7 +706,8 @@ int snd_ctl_ext_create(snd_ctl_ext_t *ext, const char *name, int mode) snd_ctl_t *ctl; int err; - if (ext->version != SND_CTL_EXT_VERSION) { + if (ext->version < SNDRV_PROTOCOL_VERSION(1, 0, 0) || + ext->version > SND_CTL_EXT_VERSION) { SNDERR("ctl_ext: Plugin version mismatch\n"); return -ENXIO; } -- 1.7.10.4
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor