static void gui_playq_statbar_song ( struct audio_file fd  )  [static]

Fills the str_song with the artist and song value of the audio file.

Definition at line 69 of file gui_playq.c.

00070 {
00071         char *artist, *title;
00072 
00073         if (fd == NULL) {
00074                 g_string_assign(str_song, "");
00075         } else {
00076                 /* Smash strings down to the correct charset */
00077                 g_assert(fd->title != NULL);
00078                 title = g_convert_with_fallback(fd->title,
00079                     -1, "", "UTF-8", "?", NULL, NULL, NULL);
00080                 if (title == NULL)
00081                         /* Conversion error - don't convert charset */
00082                         title = g_strdup(fd->title);
00083 
00084                 if (fd->artist == NULL) {
00085                         /* Only show the title */
00086                         g_string_assign(str_song, title);
00087                 } else {
00088                         /* Print artist and title */
00089                         artist = g_convert_with_fallback(fd->artist,
00090                             -1, "", "UTF-8", "?", NULL, NULL, NULL);
00091                         if (artist == NULL)
00092                                 /* Conversion error */
00093                                 artist = g_strdup(fd->artist);
00094                         g_string_printf(str_song, "%s - %s",
00095                             artist, title);
00096                         g_free(artist);
00097                 }
00098                 g_free(title);
00099         }
00100 }

Here is the caller graph for this function:

 All Data Structures Files Functions Variables Defines
Generated on Mon Mar 15 04:45:33 2010 for herrie by  doxygen 1.6.3