int i;
float f;
char *psz;
+ lldiv_t div;
if( *m->param1 == '\0' )
{
break;
case MVLC_FLOAT:
f = config_GetFloat( p_intf, m->param1 );
- sprintf( value, "%f", f );
+ div = lldiv( f * 1000000 , 1000000 );
+ sprintf( value, I64Fd".%06u", div.quot,
+ (unsigned int)div.rem );
break;
case MVLC_STRING:
psz = config_GetPsz( p_intf, m->param1 );
case VLC_VAR_FLOAT:
{
char psz_value[20];
- snprintf( psz_value, sizeof(psz_value), "%f", val.f_float );
+ lldiv_t value = lldiv( val.f_float * 1000000, 1000000 );
+ snprintf( psz_value, sizeof(psz_value), I64Fd".%06u",
+ value.quot, (unsigned int)value.rem );
E_(SSPush)( st, psz_value );
break;
}
case VLC_VAR_FLOAT:
{
char psz_string[20];
- snprintf( psz_string, sizeof(psz_string), "%f",
- config_GetFloat( p_intf, psz_variable ) );
+ lldiv_t value = lldiv( config_GetFloat( p_intf, psz_variable )
+ * 1000000, 1000000 );
+ snprintf( psz_string, sizeof(psz_string), I64Fd".%06u",
+ value.quot, (unsigned int)value.rem );
E_(SSPush)( st, psz_string );
break;
}