From 556f1a14e28bdf6a993e343f227a7e6dbac31e81 Mon Sep 17 00:00:00 2001 From: Laurent Aimar Date: Sun, 9 Aug 2009 16:14:08 +0200 Subject: [PATCH] Removed duplicated code in audio intf.c --- src/audio_output/intf.c | 64 ++++++++++++----------------------------- 1 file changed, 19 insertions(+), 45 deletions(-) diff --git a/src/audio_output/intf.c b/src/audio_output/intf.c index db9d64a219..8a8b4c7e93 100644 --- a/src/audio_output/intf.c +++ b/src/audio_output/intf.c @@ -154,33 +154,35 @@ int __aout_VolumeInfos( vlc_object_t * p_object, audio_volume_t * pi_soft ) int __aout_VolumeUp( vlc_object_t * p_object, int i_nb_steps, audio_volume_t * pi_volume ) { - aout_instance_t * p_aout = vlc_object_find( p_object, VLC_OBJECT_AOUT, - FIND_ANYWHERE ); - int i_result = 0, i_volume = 0, i_volume_step = 0; - i_volume_step = config_GetInt( p_object->p_libvlc, "volume-step" ); - i_volume = config_GetInt( p_object, "volume" ); - i_volume += i_volume_step * i_nb_steps; + const int i_volume_step = config_GetInt( p_object->p_libvlc, "volume-step" ); + + int i_volume = config_GetInt( p_object, "volume" ) + + i_volume_step * i_nb_steps; if ( i_volume > AOUT_VOLUME_MAX ) - { i_volume = AOUT_VOLUME_MAX; - } + else if ( i_volume < AOUT_VOLUME_MIN ) + i_volume = AOUT_VOLUME_MIN; + config_PutInt( p_object, "volume", i_volume ); var_Create( p_object->p_libvlc, "saved-volume", VLC_VAR_INTEGER ); - var_SetInteger( p_object->p_libvlc, "saved-volume" , - (audio_volume_t) i_volume ); - if ( pi_volume != NULL ) *pi_volume = (audio_volume_t) i_volume; + var_SetInteger( p_object->p_libvlc, "saved-volume" , i_volume ); + if ( pi_volume != NULL ) + *pi_volume = i_volume; var_SetBool( p_object->p_libvlc, "volume-change", true ); - if ( p_aout == NULL ) return 0; + aout_instance_t *p_aout = vlc_object_find( p_object, VLC_OBJECT_AOUT, + FIND_ANYWHERE ); + if ( p_aout == NULL ) + return 0; + int i_result; aout_lock_mixer( p_aout ); if ( !p_aout->mixer.b_error ) - { - i_result = p_aout->output.pf_volume_set( p_aout, - (audio_volume_t) i_volume ); - } + i_result = p_aout->output.pf_volume_set( p_aout, i_volume ); + else + i_result = VLC_SUCCESS; aout_unlock_mixer( p_aout ); vlc_object_release( p_aout ); @@ -196,35 +198,7 @@ int __aout_VolumeUp( vlc_object_t * p_object, int i_nb_steps, int __aout_VolumeDown( vlc_object_t * p_object, int i_nb_steps, audio_volume_t * pi_volume ) { - aout_instance_t * p_aout = vlc_object_find( p_object, VLC_OBJECT_AOUT, - FIND_ANYWHERE ); - int i_result = 0, i_volume = 0, i_volume_step = 0; - - i_volume_step = config_GetInt( p_object->p_libvlc, "volume-step" ); - i_volume = config_GetInt( p_object, "volume" ); - i_volume -= i_volume_step * i_nb_steps; - if ( i_volume < AOUT_VOLUME_MIN ) - { - i_volume = AOUT_VOLUME_MIN; - } - config_PutInt( p_object, "volume", i_volume ); - var_Create( p_object->p_libvlc, "saved-volume", VLC_VAR_INTEGER ); - var_SetInteger( p_object->p_libvlc, "saved-volume", (audio_volume_t) i_volume ); - if ( pi_volume != NULL ) *pi_volume = (audio_volume_t) i_volume; - - var_SetBool( p_object->p_libvlc, "volume-change", true ); - - if ( p_aout == NULL ) return 0; - - aout_lock_mixer( p_aout ); - if ( !p_aout->mixer.b_error ) - { - i_result = p_aout->output.pf_volume_set( p_aout, (audio_volume_t) i_volume ); - } - aout_unlock_mixer( p_aout ); - - vlc_object_release( p_aout ); - return i_result; + return __aout_VolumeUp( p_object, -i_nb_steps, pi_volume ); } /***************************************************************************** -- 2.39.2