From 3357b32fdde177f56747bc436e936d4f5823d106 Mon Sep 17 00:00:00 2001 From: Takashi Sakamoto Date: Sun, 14 Jun 2020 17:16:09 +0900 Subject: [PATCH] seq: user_client: return filled object after creating port Signed-off-by: Takashi Sakamoto --- src/seq/user-client.c | 17 ++++++----------- src/seq/user-client.h | 4 ++-- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/src/seq/user-client.c b/src/seq/user-client.c index a9b8cfb..cb51307 100644 --- a/src/seq/user-client.c +++ b/src/seq/user-client.c @@ -239,8 +239,7 @@ void alsaseq_user_client_get_info(ALSASeqUserClient *self, /** * alsaseq_user_client_create_port: * @self: A #ALSASeqUserClient. - * @port_info: A #ALSASeqPortInfo. - * @port_id: (nullable): The numerical ID of port if specified. + * @port_info: (inout): A #ALSASeqPortInfo. * @error: A #GError. * * Create a port into the client. @@ -249,23 +248,19 @@ void alsaseq_user_client_get_info(ALSASeqUserClient *self, * SNDRV_SEQ_IOCTL_CREATE_PORT command for ALSA sequencer character device. */ void alsaseq_user_client_create_port(ALSASeqUserClient *self, - ALSASeqPortInfo *port_info, - const guint8 *port_id, GError **error) + ALSASeqPortInfo *const *port_info, + GError **error) { ALSASeqUserClientPrivate *priv; struct snd_seq_port_info *info; g_return_if_fail(ALSASEQ_IS_USER_CLIENT(self)); - g_return_if_fail(ALSASEQ_IS_PORT_INFO(port_info)); + g_return_if_fail(ALSASEQ_IS_PORT_INFO(*port_info)); priv = alsaseq_user_client_get_instance_private(self); - seq_port_info_refer_private(port_info, &info); + seq_port_info_refer_private(*port_info, &info); info->addr.client = priv->client_id; - if (port_id != NULL) { - info->addr.port = *port_id; - info->flags |= SNDRV_SEQ_PORT_FLG_GIVEN_PORT; - } if (ioctl(priv->fd, SNDRV_SEQ_IOCTL_CREATE_PORT, info) < 0) generate_error(error, errno); } @@ -296,7 +291,7 @@ void alsaseq_user_client_create_port_at(ALSASeqUserClient *self, info->addr.port = port_id; info->flags |= SNDRV_SEQ_PORT_FLG_GIVEN_PORT; - alsaseq_user_client_create_port(self, *port_info, NULL, error); + alsaseq_user_client_create_port(self, port_info, error); } /** diff --git a/src/seq/user-client.h b/src/seq/user-client.h index f175579..0aae1b0 100644 --- a/src/seq/user-client.h +++ b/src/seq/user-client.h @@ -82,8 +82,8 @@ void alsaseq_user_client_get_info(ALSASeqUserClient *self, GError **error); void alsaseq_user_client_create_port(ALSASeqUserClient *self, - ALSASeqPortInfo *port_info, - const guint8 *port_id, GError **error); + ALSASeqPortInfo *const *port_info, + GError **error); void alsaseq_user_client_create_port_at(ALSASeqUserClient *self, ALSASeqPortInfo *const *port_info, guint8 port_id, GError **error); -- 2.47.3