From 6767b4426c5a7725eaf6cafaa9de856f0bad21b7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= Date: Sun, 11 Jul 2010 14:42:30 +0300 Subject: [PATCH] Store configuration integer as 64-bits values --- include/vlc_configuration.h | 16 +++++----------- modules/control/rc.c | 6 +++--- src/config/core.c | 7 ++++--- src/libvlc.c | 4 ++-- 4 files changed, 14 insertions(+), 19 deletions(-) diff --git a/include/vlc_configuration.h b/include/vlc_configuration.h index e66f6a9d48..c2c544a22a 100644 --- a/include/vlc_configuration.h +++ b/include/vlc_configuration.h @@ -137,16 +137,10 @@ struct config_category_t typedef union { char *psz; - int i; + int64_t i; float f; } module_value_t; -typedef union -{ - int i; - float f; -} module_nvalue_t; - struct module_config_t { char *psz_type; /* Configuration subtype */ @@ -156,8 +150,8 @@ struct module_config_t module_value_t value; /* Option value */ module_value_t orig; module_value_t saved; - module_nvalue_t min; - module_nvalue_t max; + module_value_t min; + module_value_t max; /* Function to call when commiting a change */ vlc_callback_t pf_callback; @@ -199,8 +193,8 @@ struct module_config_t * data. *****************************************************************************/ VLC_EXPORT( int, config_GetType, (vlc_object_t *, const char *) LIBVLC_USED ); -VLC_EXPORT( int, config_GetInt, (vlc_object_t *, const char *) LIBVLC_USED ); -VLC_EXPORT( void, config_PutInt, (vlc_object_t *, const char *, int) ); +VLC_EXPORT( int64_t, config_GetInt, (vlc_object_t *, const char *) LIBVLC_USED ); +VLC_EXPORT( void, config_PutInt, (vlc_object_t *, const char *, int64_t) ); VLC_EXPORT( float, config_GetFloat, (vlc_object_t *, const char *) LIBVLC_USED ); VLC_EXPORT( void, config_PutFloat, (vlc_object_t *, const char *, float) ); VLC_EXPORT( char *, config_GetPsz, (vlc_object_t *, const char *) LIBVLC_USED ); diff --git a/modules/control/rc.c b/modules/control/rc.c index 93da8472a8..fe10a0c040 100644 --- a/modules/control/rc.c +++ b/modules/control/rc.c @@ -499,7 +499,7 @@ static void Run( intf_thread_t *p_intf ) msg_rc( STATUS_CHANGE "( new input: %s )", psz_uri ); free( psz_uri ); msg_rc( STATUS_CHANGE "( audio volume: %d )", - config_GetInt( p_intf, "volume" )); + (int)config_GetInt( p_intf, "volume" )); } var_AddCallback( p_input, "intf-event", InputEvent, p_intf ); } @@ -900,7 +900,7 @@ static int VolumeChanged( vlc_object_t *p_this, char const *psz_cmd, vlc_mutex_lock( &p_intf->p_sys->status_lock ); msg_rc( STATUS_CHANGE "( audio volume: %d )", - config_GetInt( p_this, "volume") ); + (int)config_GetInt( p_this, "volume") ); vlc_mutex_unlock( &p_intf->p_sys->status_lock ); return VLC_SUCCESS; } @@ -1414,7 +1414,7 @@ static int Playlist( vlc_object_t *p_this, char const *psz_cmd, msg_rc( STATUS_CHANGE "( new input: %s )", psz_uri ); free( psz_uri ); msg_rc( STATUS_CHANGE "( audio volume: %d )", - config_GetInt( p_intf, "volume" )); + (int)config_GetInt( p_intf, "volume" )); PL_LOCK; int status = playlist_Status(p_playlist); diff --git a/src/config/core.c b/src/config/core.c index b32577c1e6..b6e3f17a0c 100644 --- a/src/config/core.c +++ b/src/config/core.c @@ -141,7 +141,7 @@ int config_GetType( vlc_object_t *p_this, const char *psz_name ) * represented by an integer (CONFIG_ITEM_INTEGER and * CONFIG_ITEM_BOOL). *****************************************************************************/ -int config_GetInt( vlc_object_t *p_this, const char *psz_name ) +int64_t config_GetInt( vlc_object_t *p_this, const char *psz_name ) { module_config_t *p_config; @@ -160,7 +160,7 @@ int config_GetInt( vlc_object_t *p_this, const char *psz_name ) return -1; } - int val; + int64_t val; vlc_rwlock_rdlock (&config_lock); val = p_config->value.i; @@ -306,7 +306,8 @@ void config_PutPsz( vlc_object_t *p_this, * represented by an integer (CONFIG_ITEM_INTEGER and * CONFIG_ITEM_BOOL). *****************************************************************************/ -void config_PutInt( vlc_object_t *p_this, const char *psz_name, int i_value ) +void config_PutInt( vlc_object_t *p_this, const char *psz_name, + int64_t i_value ) { module_config_t *p_config; vlc_value_t oldval; diff --git a/src/libvlc.c b/src/libvlc.c index 1349eb67ae..68fa41887e 100644 --- a/src/libvlc.c +++ b/src/libvlc.c @@ -1542,8 +1542,8 @@ static void Usage( libvlc_int_t *p_this, char const *psz_search ) if( p_item->min.i || p_item->max.i ) { - sprintf( psz_buffer, "%s [%i .. %i]", psz_type, - p_item->min.i, p_item->max.i ); + sprintf( psz_buffer, "%s [%"PRId64" .. %"PRId64"]", + psz_type, p_item->min.i, p_item->max.i ); psz_type = psz_buffer; } -- 2.39.2