From: Daniel A. <dat...@us...> - 2005-05-16 00:17:46
|
Update of /cvsroot/gaim/gaim/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6566/src Modified Files: Tag: oldstatus gtksound.c Log Message: Play sounds in non-ASCII paths (win32) Index: gtksound.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtksound.c,v retrieving revision 1.18.2.1 retrieving revision 1.18.2.2 diff -u -d -p -r1.18.2.1 -r1.18.2.2 --- gtksound.c 24 Apr 2005 17:27:48 -0000 1.18.2.1 +++ gtksound.c 16 May 2005 00:17:37 -0000 1.18.2.2 @@ -279,8 +279,19 @@ static void gaim_gtk_sound_play_file(con #else /* _WIN32 */ gaim_debug(GAIM_DEBUG_INFO, "sound", "Playing %s\n", filename); - if (!PlaySound(filename, 0, SND_ASYNC | SND_FILENAME)) - gaim_debug(GAIM_DEBUG_ERROR, "sound", "Error playing sound.\n"); + if (G_WIN32_HAVE_WIDECHAR_API ()) { + wchar_t *wc_filename = g_utf8_to_utf16(filename, + -1, NULL, NULL, NULL); + if (!PlaySoundW(wc_filename, NULL, SND_ASYNC | SND_FILENAME)) + gaim_debug(GAIM_DEBUG_ERROR, "sound", "Error playing sound.\n"); + g_free(wc_filename); + } else { + char *l_filename = g_locale_from_utf8(filename, + -1, NULL, NULL, NULL); + if (!PlaySoundA(l_filename, NULL, SND_ASYNC | SND_FILENAME)) + gaim_debug(GAIM_DEBUG_ERROR, "sound", "Error playing sound.\n"); + g_free(l_filename); + } #endif /* _WIN32 */ } |