Code

screen: simplified CMD_SCREEN_UPDATE handlers
[ncmpc.git] / src / screen_artist.c
index 2f97c723a7d7b70293f4c670f82911f4f4f0569c..dd7e0175a180e0f6eb8d4d3bb796bab9d2100990 100644 (file)
@@ -121,6 +121,9 @@ update_metalist(mpdclient_t *c, char *m_artist, char *m_album)
                                mpdclient_filelist_search_utf8(c, TRUE,
                                                               MPD_TABLE_ALBUM,
                                                               album);
+               if (browser.filelist == NULL)
+                       browser.filelist = filelist_new(NULL);
+
                /* add a dummy entry for ".." */
                filelist_prepend(browser.filelist, NULL);
 
@@ -160,7 +163,6 @@ browse_callback(mpdclient_t *c, int event, mpd_unused gpointer data)
        case BROWSE_DB_UPDATED:
                D("screen_artist.c> browse_callback() [BROWSE_DB_UPDATED]\n");
                browser.lw->clear = 1;
-               browser.lw->repaint = 1;
                update_metalist(c, g_strdup(artist), g_strdup(album));
                break;
        default:
@@ -415,9 +417,6 @@ artist_cmd(screen_t *screen, mpdclient_t *c, command_t cmd)
 
                /* continue and update... */
        case CMD_SCREEN_UPDATE:
-               screen->painted = 0;
-               browser.lw->clear = 1;
-               browser.lw->repaint = 1;
                update_metalist(c, g_strdup(artist), g_strdup(album));
                screen_status_printf(_("Screen updated!"));
                return 0;