diff -r -wud libmatemixer-1.12.1.orig/backends/oss/oss-backend.c libmatemixer-1.12.1/backends/oss/oss-backend.c --- libmatemixer-1.12.1.orig/backends/oss/oss-backend.c 2015-11-29 19:18:29.000000000 +0100 +++ libmatemixer-1.12.1/backends/oss/oss-backend.c 2016-12-13 20:33:32.000000000 +0100 @@ -40,6 +40,8 @@ * from the sndstat file, but avoid even trying that on systems where this * is not needed and the file is not present */ #define OSS_PATH_SNDSTAT "/dev/sndstat" + /* remove SOUND_MIXER_INFO on FreeBSD, use OSS_PATH_SNDSTAT */ +#undef SOUND_MIXER_INFO #endif #define OSS_MAX_DEVICES 32 @@ -373,6 +375,10 @@ { guint index; + /* default_device setting only in read_device_label_sndstat() + * on FreeBSD use OSS_PATH_SNDSTAT + */ + #ifdef SOUND_MIXER_INFO do { struct mixer_info info; @@ -426,6 +432,7 @@ while (fgets (line, sizeof (line), fp) != NULL) { gchar *p; + g_strchomp(line); // required for g_str_has_suffix() if (g_str_has_prefix (line, prefix) == FALSE) continue;