Commit bffe01d5 authored by norvell's avatar norvell
Browse files

Merge branch 'float-1495-incorrect-fread-call-in-td-binaural-file-reader' into 'main'

Resolve 1495: incorrect fread calls

See merge request !2481
parents 6608faf8 df3eea7f
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -165,6 +165,7 @@
#define FIX_1486_INIT_OUTPUT_POINTERS                   /* FhG: always initialize pointers in renderer flush */
#define FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR    /* Dolby: Fix for issue 1449: renderer frame size unclear in ISAR */
#define FIX_1827_REMOVE_UNUSED_PSNOISEGEN_ISAR          /* Dolby: remove unused noise generator from ISAR */
#define FIX_1495_INCORRECT_FREAD_CALL                   /* Eri: Switched size and number of elements in fread call. */
#define FIX_1494_SET_SPLITBFI_UNUSED                    /* Dolby: Fix issue 1494, remove unused function setting BFI flag in ISAR renderer */
#define FIX_1479_MSAN_SPAR_UNINITIALIZED_VALUE          /* Dolby: Fix for issue 1479, MSAN error due to uninitialized value in SPAR */
#define REMOVE_UNUSED_CODE_IVAS_DEC                     /* VA: remove unused code in ivas_jbm_dec_tc_fx() */
+60 −0
Original line number Diff line number Diff line
@@ -302,7 +302,11 @@ static ivas_error TDREND_LoadBSplineBinaryITD(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    fread( v_tmp16, sizeof( int16_t ), modelITD->elevDim3 - 2, f_hrtf );
    for ( j = 0; j < modelITD->elevDim3 - 2; j++ )
@@ -318,7 +322,11 @@ static ivas_error TDREND_LoadBSplineBinaryITD(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    fread( v_tmp16, sizeof( int16_t ), ( modelITD->azimDim3 + 1 ) / 2 - 2, f_hrtf );
    for ( j = 0; j < ( modelITD->azimDim3 + 1 ) / 2 - 2; j++ )
@@ -334,7 +342,11 @@ static ivas_error TDREND_LoadBSplineBinaryITD(
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }

#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    v_tmp16 = (int16_t *) malloc( tmp * sizeof( int16_t ) );
    if ( v_tmp16 == NULL )
@@ -369,7 +381,11 @@ static ivas_error TDREND_LoadBSplineBinaryITD(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    fread( v_tmp16, sizeof( int16_t ), tmp, f_hrtf );
    for ( j = 0; j < tmp; j++ )
@@ -406,7 +422,11 @@ static ivas_error TDREND_LoadBSplineBinaryITD(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    fread( v_tmp16, sizeof( int16_t ), tmp, f_hrtf );
    for ( j = 0; j < tmp; j++ )
@@ -452,9 +472,17 @@ static ivas_error TDREND_LoadBSplineBinary(
        return IVAS_ERR_UNEXPECTED_NULL_POINTER;
    }

#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &tmp32, sizeof( int32_t ), 1, f_hrtf );
#else
    fread( &tmp32, 1, sizeof( int32_t ), f_hrtf );
#endif
    HrFiltSet_p->latency_s = tmp32 * q_scale;

    model = &( HrFiltSet_p->ModelParams );
@@ -501,7 +529,11 @@ static ivas_error TDREND_LoadBSplineBinary(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    fread( v_tmp16, sizeof( int16_t ), model->elevDim3 - 2, f_hrtf );
    for ( j = 0; j < model->elevDim3 - 2; j++ )
@@ -529,7 +561,11 @@ static ivas_error TDREND_LoadBSplineBinary(
        {
            return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
        }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
        fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
        fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
        q_scale = powf( 2.f, -1.f * factor_Q );
        fread( v_tmp16, sizeof( int16_t ), ( model->azimDim3_dyn[i] + 1 ), f_hrtf );
        for ( j = 0; j < model->azimDim3_dyn[i] + 1; j++ )
@@ -546,7 +582,11 @@ static ivas_error TDREND_LoadBSplineBinary(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );

    fread( v_tmp16, sizeof( int16_t ), model->AlphaN * model->K, f_hrtf );
@@ -586,7 +626,11 @@ static ivas_error TDREND_LoadBSplineBinary(
        {
            return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
        }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
        fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
        fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
        q_scale = powf( 2.f, -1.f * factor_Q );
        v_tmp16 = (int16_t *) malloc( tmp * sizeof( int16_t ) );
        if ( v_tmp16 == NULL )
@@ -638,7 +682,11 @@ static ivas_error TDREND_LoadBSplineBinary(
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }

#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );
    fread( v_tmp16, sizeof( int16_t ), tmp, f_hrtf );
    for ( j = 0; j < tmp; j++ )
@@ -654,7 +702,11 @@ static ivas_error TDREND_LoadBSplineBinary(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Could not allocate memory for hrtf data" );
    }
#ifdef FIX_1495_INCORRECT_FREAD_CALL
    fread( &factor_Q, sizeof( int16_t ), 1, f_hrtf );
#else
    fread( &factor_Q, 1, sizeof( int16_t ), f_hrtf );
#endif
    q_scale = powf( 2.f, -1.f * factor_Q );

    fread( (int32_t *) model->EL_dyn, sizeof( int32_t ), model->AlphaN * HRTF_MODEL_N_SECTIONS, f_hrtf );
@@ -903,7 +955,11 @@ static ivas_error TDREND_MIX_LoadHRTF(

        /* try if it is old format for BE tests*/
        fseek( f_hrtf, 0, SEEK_SET );
#ifdef FIX_1495_INCORRECT_FREAD_CALL
        if ( fread( &tmp, sizeof( int16_t ), 1, f_hrtf ) == 0 )
#else
        if ( fread( &tmp, 1, sizeof( int16_t ), f_hrtf ) == 0 )
#endif
        {
            header_check_result = IVAS_ERROR( IVAS_ERR_FAILED_FILE_READ, "Error in HRTF file reading" );
        }
@@ -975,7 +1031,11 @@ static ivas_error TDREND_MIX_LoadHRTF(

    if ( is_tdrend )
    {
#ifdef FIX_1495_INCORRECT_FREAD_CALL
        if ( fread( &tmp, sizeof( int16_t ), 1, f_hrtf ) == 0 )
#else
        if ( fread( &tmp, 1, sizeof( int16_t ), f_hrtf ) == 0 )
#endif
        {
            return IVAS_ERROR( IVAS_ERR_FAILED_FILE_READ, "Error in HRTF file reading" );
        }