# HG changeset patch # User William Pitcock # Date 1185477746 18000 # Node ID 6035772285185d8f37fc832cd0bc96b86d0e14dc # Parent ee8a1ed308268f5f22c75226ca89b1714fbc6260 get_current_input_playback() cleanups. diff -r ee8a1ed30826 -r 603577228518 src/audacious/input.c --- a/src/audacious/input.c Wed Jul 25 19:10:53 2007 -0500 +++ b/src/audacious/input.c Thu Jul 26 14:22:26 2007 -0500 @@ -1,5 +1,5 @@ /* Audacious - Cross-platform multimedia player - * Copyright (C) 2005-2006 Audacious development team + * Copyright (C) 2005-2007 Audacious development team * * Based on BMP: * Copyright (C) 2003-2004 BMP development team @@ -511,14 +511,16 @@ void input_set_eq(gint on, gfloat preamp, gfloat * bands) { + InputPlayback *playback; + if (!ip_data.playing) return; - if (!get_current_input_playback()) + if ((playback = get_current_input_playback()) == NULL) return; - if (get_current_input_playback()->plugin->set_eq) - get_current_input_playback()->plugin->set_eq(on, preamp, bands); + if (playback->plugin->set_eq) + playback->plugin->set_eq(on, preamp, bands); } void @@ -764,14 +766,15 @@ void input_get_volume(gint * l, gint * r) { + InputPlayback *playback; + *l = -1; *r = -1; if (playback_get_playing()) { - if (get_current_input_playback() && - get_current_input_playback()->plugin->get_volume && - get_current_input_playback()->plugin->get_volume(l, r)) { + if ((playback = get_current_input_playback()) != NULL && + playback->plugin->get_volume && + playback->plugin->get_volume(l, r)) return; - } } output_get_volume(l, r); } @@ -779,19 +782,21 @@ void input_set_volume(gint l, gint r) { + InputPlayback *playback; + gint h_vol[2]; + + h_vol[0] = l; + h_vol[1] = r; + hook_call("volume set", h_vol); if (playback_get_playing() && - get_current_input_playback() && - get_current_input_playback()->plugin->set_volume && - get_current_input_playback()->plugin->set_volume(l, r)) + (playback = get_current_input_playback()) != NULL && + playback->plugin->set_volume && + playback->plugin->set_volume(l, r)) return; output_set_volume(l, r); - - h_vol[0] = l; - h_vol[1] = r; - hook_call("volume set", h_vol); } void diff -r ee8a1ed30826 -r 603577228518 src/audacious/playback.c --- a/src/audacious/playback.c Wed Jul 25 19:10:53 2007 -0500 +++ b/src/audacious/playback.c Thu Jul 26 14:22:26 2007 -0500 @@ -148,17 +148,18 @@ void playback_pause(void) { + InputPlayback *playback; + if (!playback_get_playing()) return; - if (!get_current_input_playback()) + if ((playback = get_current_input_playback()) == NULL) return; ip_data.paused = !ip_data.paused; - if (get_current_input_playback()->plugin->pause) - get_current_input_playback()->plugin->pause(get_current_input_playback(), - ip_data.paused); + if (playback->plugin->pause) + playback->plugin->pause(playback, ip_data.paused); if (ip_data.paused) hook_call("playback pause", NULL); @@ -176,23 +177,26 @@ void playback_stop(void) { - if (ip_data.playing && get_current_input_playback()) { + InputPlayback *playback; - if (playback_get_paused()) { + if (ip_data.playing && (playback = get_current_input_playback()) != NULL) + { + if (playback_get_paused() == TRUE) + { output_flush(get_written_time()); /* to avoid noise */ playback_pause(); } ip_data.playing = FALSE; - if (get_current_input_playback()->plugin->stop) - get_current_input_playback()->plugin->stop(get_current_input_playback()); + if (playback->plugin->stop) + playback->plugin->stop(playback); free_vis_data(); ip_data.paused = FALSE; - g_free(get_current_input_playback()->filename); - g_free(get_current_input_playback()); + g_free(playback->filename); + g_free(playback); set_current_input_playback(NULL); }