r3857 - in trunk/src/target/OM-2007.2/applications/openmoko-dialer2: . src/phone-kit
chris at sita.openmoko.org
chris at sita.openmoko.org
Wed Jan 16 16:53:51 CET 2008
Author: chris
Date: 2008-01-16 16:53:50 +0100 (Wed, 16 Jan 2008)
New Revision: 3857
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-alsa-volume-control.c
Log:
* src/phone-kit/moko-alsa-volume-control.c:
(moko_alsa_volume_control_set_device_from_name):
Finish implementing (didn't realise I left this unfinished): Fix
infinite loop, get card name correctly and resolve alsa alias
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog 2008-01-16 15:24:27 UTC (rev 3856)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog 2008-01-16 15:53:50 UTC (rev 3857)
@@ -1,5 +1,12 @@
2008-01-16 Chris Lord <chris at openedhand.com>
+ * src/phone-kit/moko-alsa-volume-control.c:
+ (moko_alsa_volume_control_set_device_from_name):
+ Finish implementing (didn't realise I left this unfinished): Fix
+ infinite loop, get card name correctly and resolve alsa alias
+
+2008-01-16 Chris Lord <chris at openedhand.com>
+
* configure.ac:
* src/phone-kit/Makefile.am:
Add alsa to dependencies and compile volume control object/widget
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-alsa-volume-control.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-alsa-volume-control.c 2008-01-16 15:24:27 UTC (rev 3856)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-alsa-volume-control.c 2008-01-16 15:53:50 UTC (rev 3857)
@@ -427,19 +427,30 @@
while (snd_card_next (&i) == 0) {
void **hints;
+
+ if (i == -1) break;
if (snd_device_name_hint (i, "pcm", &hints) == 0) {
+ gchar *separator;
gchar *device = strdup (snd_device_name_get_hint (
- hints[0], "NAME"));
- snd_device_name_free_hint (hints);
- strchr (device, ':')[0] = '\0';
+ hints[0], "DESC"));
+ if ((separator = strchr (device, ',')))
+ *separator = '\0';
+
if (strcmp (device, name) == 0) {
+ g_free (device);
+
+ device = strdup (snd_device_name_get_hint (
+ hints[0], "NAME"));
+ snd_device_name_free_hint (hints);
+ strchr (device, ':')[0] = '\0';
+
moko_alsa_volume_control_set_device (
control, device);
- g_free (device);
return;
}
+ snd_device_name_free_hint (hints);
g_free (device);
}
}
More information about the commitlog
mailing list