Mercurial > pidgin.yaz
diff libpurple/sound-theme.c @ 23468:cf7625d4d7e0
Working sound themes (option 1) theme is saved in prefs and there is no seperate custom theme, everything
else is backwards compatiable, sound plays but the theme is not always found
author | Justin Rodriguez <ffdragon@soc.pidgin.im> |
---|---|
date | Fri, 27 Jun 2008 01:29:59 +0000 |
parents | 5a02912e0bac |
children | c32dd71d0658 |
line wrap: on
line diff
--- a/libpurple/sound-theme.c Tue Jun 24 02:06:42 2008 +0000 +++ b/libpurple/sound-theme.c Fri Jun 27 01:29:59 2008 +0000 @@ -133,16 +133,19 @@ purple_sound_theme_get_file_full(PurpleSoundTheme *theme, const gchar *event) { - gchar *dir, *fname, *full; + gchar *dir, *filename, *full; g_return_val_if_fail(PURPLE_IS_SOUND_THEME(theme), NULL); dir = purple_theme_get_dir(PURPLE_THEME(theme)); - fname = purple_sound_theme_get_file(theme, event); - full = g_build_filename(dir, fname, NULL); + filename = purple_sound_theme_get_file(theme, event); + + g_return_val_if_fail(filename, NULL); + + full = g_build_filename(dir, filename, NULL); g_free(dir); - g_free(fname); + g_free(filename); return full; } @@ -150,16 +153,16 @@ void purple_sound_theme_set_file(PurpleSoundTheme *theme, const gchar *event, - const gchar *fname) + const gchar *filename) { PurpleSoundThemePrivate *priv; g_return_if_fail(PURPLE_IS_SOUND_THEME(theme)); priv = PURPLE_SOUND_THEME_GET_PRIVATE(theme); - if (fname)g_hash_table_replace(priv->sound_files, + if (filename)g_hash_table_replace(priv->sound_files, g_strdup(event), - g_strdup(fname)); + g_strdup(filename)); else g_hash_table_remove(priv->sound_files, event); }