From 51b8f743c2e25ec057f66be446614dbc24a38e8f Mon Sep 17 00:00:00 2001 From: Takashi Sakamoto Date: Tue, 17 Nov 2020 08:52:54 +0900 Subject: [PATCH] ctl: card: change prototype of function relevant to TLV In ALSA control interface, the data of TLV (Type-Length-Value) style is defined as array with unsigned int type of element. However, current implementation of ALSACtl.Card handles them as signed int type. This commit fixes the bug. The commit loses backward compatibility to v0.1.0 release in a point of type of function argument. The exported symbols relevant to TLV are updated with new version. Signed-off-by: Takashi Sakamoto --- src/ctl/alsactl.map | 6 +++--- src/ctl/card.c | 6 +++--- src/ctl/card.h | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/ctl/alsactl.map b/src/ctl/alsactl.map index dd666511..7a62bbd2 100644 --- a/src/ctl/alsactl.map +++ b/src/ctl/alsactl.map @@ -19,9 +19,6 @@ ALSA_GOBJECT_0_0_0 { "alsactl_card_get_elem_id_list"; "alsactl_card_lock_elem"; "alsactl_card_get_elem_info"; - "alsactl_card_write_elem_tlv"; - "alsactl_card_read_elem_tlv"; - "alsactl_card_command_elem_tlv"; "alsactl_card_add_elems"; "alsactl_card_replace_elems"; "alsactl_card_remove_elems"; @@ -94,4 +91,7 @@ ALSA_GOBJECT_0_0_0 { ALSA_GOBJECT_0_2_0 { "alsactl_card_error_get_type"; "alsactl_card_error_quark"; + "alsactl_card_write_elem_tlv"; + "alsactl_card_read_elem_tlv"; + "alsactl_card_command_elem_tlv"; } ALSA_GOBJECT_0_0_0; diff --git a/src/ctl/card.c b/src/ctl/card.c index f147a45a..cbd6e2bd 100644 --- a/src/ctl/card.c +++ b/src/ctl/card.c @@ -576,7 +576,7 @@ void alsactl_card_get_elem_info(ALSACtlCard *self, const ALSACtlElemId *elem_id, */ void alsactl_card_write_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, - const gint32 *container, gsize container_count, + const guint32 *container, gsize container_count, GError **error) { ALSACtlCardPrivate *priv; @@ -630,7 +630,7 @@ void alsactl_card_write_elem_tlv(ALSACtlCard *self, * SNDRV_CTL_IOCTL_TLV_READ command for ALSA control character device. */ void alsactl_card_read_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, - gint32 *const *container, gsize *container_count, + guint32 *const *container, gsize *container_count, GError **error) { ALSACtlCardPrivate *priv; @@ -685,7 +685,7 @@ void alsactl_card_read_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, */ void alsactl_card_command_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, - gint32 *const *container, gsize *container_count, + guint32 *const *container, gsize *container_count, GError **error) { ALSACtlCardPrivate *priv; diff --git a/src/ctl/card.h b/src/ctl/card.h index 53bd7169..93fb0101 100644 --- a/src/ctl/card.h +++ b/src/ctl/card.h @@ -101,14 +101,14 @@ void alsactl_card_get_elem_info(ALSACtlCard *self, const ALSACtlElemId *elem_id, void alsactl_card_write_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, - const gint32 *container, gsize container_count, + const guint32 *container, gsize container_count, GError **error); void alsactl_card_read_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, - gint32 *const *container, gsize *container_count, + guint32 *const *container, gsize *container_count, GError **error); void alsactl_card_command_elem_tlv(ALSACtlCard *self, const ALSACtlElemId *elem_id, - gint32 *const *container, gsize *container_count, + guint32 *const *container, gsize *container_count, GError **error); void alsactl_card_add_elems(ALSACtlCard *self, const ALSACtlElemId *elem_id,