diff options
author | Max Kellermann <max@duempel.org> | 2008-09-18 01:15:20 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2008-09-18 01:15:20 +0200 |
commit | e54533bd1fad95b149e87918dffca06b0afb5074 (patch) | |
tree | 0f19423193242a63350539812d99120176f3f982 /src/screen_file.c | |
parent | 9de9dfc3a6a8061089eebcc6271b2f13ac43e20b (diff) | |
download | mpd-e54533bd1fad95b149e87918dffca06b0afb5074.tar.gz mpd-e54533bd1fad95b149e87918dffca06b0afb5074.tar.xz mpd-e54533bd1fad95b149e87918dffca06b0afb5074.zip |
screen: check MPD status only if connected
Fix several segmentation faults: when the connection to the MPD server
is lost, there were NULL pointer dereferences because
client->status==NULL. Check before accessing it.
Diffstat (limited to 'src/screen_file.c')
-rw-r--r-- | src/screen_file.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/screen_file.c b/src/screen_file.c index 7465ff125..92d89232b 100644 --- a/src/screen_file.c +++ b/src/screen_file.c @@ -706,6 +706,9 @@ browse_cmd(screen_t *screen, mpdclient_t *c, command_t cmd) screen_status_printf(_("Screen updated!")); return 1; case CMD_DB_UPDATE: + if (c->status == NULL) + return 1; + if( !c->status->updatingDb ) { if( mpdclient_cmd_db_update_utf8(c,filelist->path)==0 ) |