Commit b0e79d25 authored by Shikha Shetgeri's avatar Shikha Shetgeri
Browse files

ASAN fix

parent 2127ae94
Loading
Loading
Loading
Loading
Loading
+47 −48
Original line number Diff line number Diff line
@@ -436,37 +436,37 @@ ivas_error ivas_allocate_binaural_hrtf(
            }
            for ( i = 0; i < BINAURAL_CONVBANDS; i++ )
            {
                if ( ( HrtfFastConv->leftHRIRReal_HOA3[i] = (float **) malloc( HRTF_SH_CHANNELS * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->leftHRIRReal_HOA3[i] = (float **) malloc( HOA3_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_HOA3" );
                }
                if ( ( HrtfFastConv->leftHRIRImag_HOA3[i] = (float **) malloc( HRTF_SH_CHANNELS * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->leftHRIRImag_HOA3[i] = (float **) malloc( HOA3_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_HOA3" );
                }
                if ( ( HrtfFastConv->rightHRIRReal_HOA3[i] = (float **) malloc( HRTF_SH_CHANNELS * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->rightHRIRReal_HOA3[i] = (float **) malloc( HOA3_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA3" );
                }
                if ( ( HrtfFastConv->rightHRIRImag_HOA3[i] = (float **) malloc( HRTF_SH_CHANNELS * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->rightHRIRImag_HOA3[i] = (float **) malloc( HOA3_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA3" );
                }
                for ( j = 0; j < HRTF_SH_CHANNELS; j++ )
                for ( j = 0; j < HOA3_CHANNELS; j++ )
                {
                    if ( ( HrtfFastConv->leftHRIRReal_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->leftHRIRReal_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_HOA3" );
                    }
                    if ( ( HrtfFastConv->leftHRIRImag_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->leftHRIRImag_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_HOA3" );
                    }
                    if ( ( HrtfFastConv->rightHRIRReal_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->rightHRIRReal_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal_HOA3" );
                    }
                    if ( ( HrtfFastConv->rightHRIRImag_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->rightHRIRImag_HOA3[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA3" );
                    }
@@ -474,7 +474,7 @@ ivas_error ivas_allocate_binaural_hrtf(
            }
        }
    }
    else if ( output_config == AUDIO_CONFIG_HOA2 || input_config == BINAURAL_INPUT_AUDIO_CONFIG_HOA2 )
    if ( output_config == AUDIO_CONFIG_HOA2 || input_config == BINAURAL_INPUT_AUDIO_CONFIG_HOA2 )
    {
        if ( ( HrtfFastConv->leftHRIRReal_HOA2 != NULL ) && ( HrtfFastConv->leftHRIRImag_HOA2 != NULL ) && ( HrtfFastConv->rightHRIRReal_HOA2 != NULL ) && ( HrtfFastConv->rightHRIRImag_HOA2 != NULL ) )
        {
@@ -500,37 +500,37 @@ ivas_error ivas_allocate_binaural_hrtf(
            }
            for ( i = 0; i < BINAURAL_CONVBANDS; i++ )
            {
                if ( ( HrtfFastConv->leftHRIRReal_HOA2[i] = (float **) malloc( 9 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->leftHRIRReal_HOA2[i] = (float **) malloc( HOA2_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_HOA2" );
                }
                if ( ( HrtfFastConv->leftHRIRImag_HOA2[i] = (float **) malloc( 9 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->leftHRIRImag_HOA2[i] = (float **) malloc( HOA2_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_HOA2" );
                }
                if ( ( HrtfFastConv->rightHRIRReal_HOA2[i] = (float **) malloc( 9 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->rightHRIRReal_HOA2[i] = (float **) malloc( HOA2_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA2" );
                }
                if ( ( HrtfFastConv->rightHRIRImag_HOA2[i] = (float **) malloc( 9 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->rightHRIRImag_HOA2[i] = (float **) malloc( HOA2_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA2" );
                }
                for ( j = 0; j < 9; j++ )
                for ( j = 0; j < HOA2_CHANNELS; j++ )
                {
                    if ( ( HrtfFastConv->leftHRIRReal_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->leftHRIRReal_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_HOA2" );
                    }
                    if ( ( HrtfFastConv->leftHRIRImag_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->leftHRIRImag_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_HOA2" );
                    }
                    if ( ( HrtfFastConv->rightHRIRReal_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->rightHRIRReal_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal_HOA2" );
                    }
                    if ( ( HrtfFastConv->rightHRIRImag_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->rightHRIRImag_HOA2[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_HOA2" );
                    }
@@ -538,7 +538,7 @@ ivas_error ivas_allocate_binaural_hrtf(
            }
        }
    }
    else if ( output_config == AUDIO_CONFIG_FOA || input_config == BINAURAL_INPUT_AUDIO_CONFIG_FOA )
    if ( output_config == AUDIO_CONFIG_FOA || input_config == BINAURAL_INPUT_AUDIO_CONFIG_FOA )
    {
        if ( ( HrtfFastConv->leftHRIRReal_FOA != NULL ) && ( HrtfFastConv->leftHRIRImag_FOA != NULL ) && ( HrtfFastConv->rightHRIRReal_FOA != NULL ) && ( HrtfFastConv->rightHRIRImag_FOA != NULL ) )
        {
@@ -564,37 +564,37 @@ ivas_error ivas_allocate_binaural_hrtf(
            }
            for ( i = 0; i < BINAURAL_CONVBANDS; i++ )
            {
                if ( ( HrtfFastConv->leftHRIRReal_FOA[i] = (float **) malloc( 4 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->leftHRIRReal_FOA[i] = (float **) malloc( FOA_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_FOA" );
                }
                if ( ( HrtfFastConv->leftHRIRImag_FOA[i] = (float **) malloc( 4 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->leftHRIRImag_FOA[i] = (float **) malloc( FOA_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_FOA" );
                }
                if ( ( HrtfFastConv->rightHRIRReal_FOA[i] = (float **) malloc( 4 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->rightHRIRReal_FOA[i] = (float **) malloc( FOA_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_FOA" );
                }
                if ( ( HrtfFastConv->rightHRIRImag_FOA[i] = (float **) malloc( 4 * sizeof( float * ) ) ) == NULL )
                if ( ( HrtfFastConv->rightHRIRImag_FOA[i] = (float **) malloc( FOA_CHANNELS * sizeof( float * ) ) ) == NULL )
                {
                    return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_FOA" );
                }
                for ( j = 0; j < 4; j++ )
                for ( j = 0; j < FOA_CHANNELS; j++ )
                {
                    if ( ( HrtfFastConv->leftHRIRReal_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->leftHRIRReal_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRReal_FOA" );
                    }
                    if ( ( HrtfFastConv->leftHRIRImag_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->leftHRIRImag_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for leftHRIRImag_FOA" );
                    }
                    if ( ( HrtfFastConv->rightHRIRReal_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->rightHRIRReal_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRReal_FOA" );
                    }
                    if ( ( HrtfFastConv->rightHRIRImag_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS * sizeof( float ) ) ) == NULL )
                    if ( ( HrtfFastConv->rightHRIRImag_FOA[i][j] = (float *) malloc( BINAURAL_NTAPS_SBA * sizeof( float ) ) ) == NULL )
                    {
                        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for rightHRIRImag_FOA" );
                    }
@@ -822,33 +822,32 @@ static ivas_error ivas_binaural_hrtf_open(
            }
            if ( output_config == AUDIO_CONFIG_HOA3 )
            {
                for ( j = 0; j < HRTF_SH_CHANNELS; j++ )
                for ( j = 0; j < HOA3_CHANNELS; j++ )
                {
                    mvr2r( leftHRIRReal_HOA3[i][j], HrtfFastConv->leftHRIRReal_HOA3[i][j], BINAURAL_NTAPS );
                    mvr2r( leftHRIRImag_HOA3[i][j], HrtfFastConv->leftHRIRImag_HOA3[i][j], BINAURAL_NTAPS );
                    mvr2r( rightHRIRReal_HOA3[i][j], HrtfFastConv->rightHRIRReal_HOA3[i][j], BINAURAL_NTAPS );
                    mvr2r( rightHRIRImag_HOA3[i][j], HrtfFastConv->rightHRIRImag_HOA3[i][j], BINAURAL_NTAPS );
                    mvr2r( leftHRIRReal_HOA3[i][j], HrtfFastConv->leftHRIRReal_HOA3[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( leftHRIRImag_HOA3[i][j], HrtfFastConv->leftHRIRImag_HOA3[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( rightHRIRReal_HOA3[i][j], HrtfFastConv->rightHRIRReal_HOA3[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( rightHRIRImag_HOA3[i][j], HrtfFastConv->rightHRIRImag_HOA3[i][j], BINAURAL_NTAPS_SBA );
                }
            }
            if ( output_config == AUDIO_CONFIG_HOA2 )
            {
                for ( j = 0; j < 9; j++ )
                for ( j = 0; j < HOA2_CHANNELS; j++ )
                {
                    mvr2r( leftHRIRReal_HOA2[i][j], HrtfFastConv->leftHRIRReal_HOA2[i][j], BINAURAL_NTAPS );
                    mvr2r( leftHRIRImag_HOA2[i][j], HrtfFastConv->leftHRIRImag_HOA2[i][j], BINAURAL_NTAPS );
                    mvr2r( rightHRIRReal_HOA2[i][j], HrtfFastConv->rightHRIRReal_HOA2[i][j], BINAURAL_NTAPS );
                    mvr2r( rightHRIRImag_HOA2[i][j], HrtfFastConv->rightHRIRImag_HOA2[i][j], BINAURAL_NTAPS );
                    mvr2r( leftHRIRReal_HOA2[i][j], HrtfFastConv->leftHRIRReal_HOA2[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( leftHRIRImag_HOA2[i][j], HrtfFastConv->leftHRIRImag_HOA2[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( rightHRIRReal_HOA2[i][j], HrtfFastConv->rightHRIRReal_HOA2[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( rightHRIRImag_HOA2[i][j], HrtfFastConv->rightHRIRImag_HOA2[i][j], BINAURAL_NTAPS_SBA );
                }
            }
            if ( output_config == AUDIO_CONFIG_FOA )
            {

                for ( j = 0; j < 4; j++ )
                for ( j = 0; j < FOA_CHANNELS; j++ )
                {
                    mvr2r( leftHRIRReal_FOA[i][j], HrtfFastConv->leftHRIRReal_FOA[i][j], BINAURAL_NTAPS );
                    mvr2r( leftHRIRImag_FOA[i][j], HrtfFastConv->leftHRIRImag_FOA[i][j], BINAURAL_NTAPS );
                    mvr2r( rightHRIRReal_FOA[i][j], HrtfFastConv->rightHRIRReal_FOA[i][j], BINAURAL_NTAPS );
                    mvr2r( rightHRIRImag_FOA[i][j], HrtfFastConv->rightHRIRImag_FOA[i][j], BINAURAL_NTAPS );
                    mvr2r( leftHRIRReal_FOA[i][j], HrtfFastConv->leftHRIRReal_FOA[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( leftHRIRImag_FOA[i][j], HrtfFastConv->leftHRIRImag_FOA[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( rightHRIRReal_FOA[i][j], HrtfFastConv->rightHRIRReal_FOA[i][j], BINAURAL_NTAPS_SBA );
                    mvr2r( rightHRIRImag_FOA[i][j], HrtfFastConv->rightHRIRImag_FOA[i][j], BINAURAL_NTAPS_SBA );
                }
            }
#else
@@ -1451,7 +1450,7 @@ void ivas_binaural_hrtf_close(
    {
        for ( i = 0; i < BINAURAL_CONVBANDS; i++ )
        {
            for ( j = 0; j < HRTF_SH_CHANNELS; j++ )
            for ( j = 0; j < HOA3_CHANNELS; j++ )
            {
                free( ( *hHrtfFastConv )->leftHRIRReal_HOA3[i][j] );
                ( *hHrtfFastConv )->leftHRIRReal_HOA3[i][j] = NULL;
@@ -1484,7 +1483,7 @@ void ivas_binaural_hrtf_close(
    {
        for ( i = 0; i < BINAURAL_CONVBANDS; i++ )
        {
            for ( j = 0; j < 9; j++ )
            for ( j = 0; j < HOA2_CHANNELS; j++ )
            {
                free( ( *hHrtfFastConv )->leftHRIRReal_HOA2[i][j] );
                ( *hHrtfFastConv )->leftHRIRReal_HOA2[i][j] = NULL;
@@ -1517,7 +1516,7 @@ void ivas_binaural_hrtf_close(
    {
        for ( i = 0; i < BINAURAL_CONVBANDS; i++ )
        {
            for ( j = 0; j < 4; j++ )
            for ( j = 0; j < FOA_CHANNELS; j++ )
            {
                free( ( *hHrtfFastConv )->leftHRIRReal_FOA[i][j] );
                ( *hHrtfFastConv )->leftHRIRReal_FOA[i][j] = NULL;
+6 −1
Original line number Diff line number Diff line
@@ -36,6 +36,9 @@
#include "ivas_prot_rend.h"
#include "ivas_error.h"
#include "wmc_auto.h"
#ifdef FIX_1720_HRTF_FASTCONV
#include <string.h>
#endif

/*-----------------------------------------------------------------------*
 * ivas_HRTF_binary_open()
@@ -139,7 +142,9 @@ ivas_error ivas_HRTF_fastconv_binary_open(
    {
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for FASTCONV HRTF tables!" );
    }

#ifdef FIX_1720_HRTF_FASTCONV
    memset( *hHrtfFastConv, 0x00, sizeof( HRTFS_FASTCONV ) );
#endif
    return IVAS_ERR_OK;
}

+2 −16
Original line number Diff line number Diff line
@@ -1231,12 +1231,6 @@ static ivas_error create_fastconv_HRTF_from_rawdata(
        /* HRIR_HOA2 */
        ( *hHRTF )->FASTCONV_HOA2_latency_s = *( (float *) ( hrtf_data_rptr ) );
        hrtf_data_rptr += sizeof( float );
#ifdef FIX_1720_HRTF_FASTCONV
        if ( 9 != *( (uint16_t *) ( hrtf_data_rptr ) ) )
        {
            return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "HRTF binary file not compliant (HRTF_SH_CHANNELS)" );
        }
        hrtf_data_rptr += sizeof( uint16_t );
#ifdef UPDATE_FASTCONV_SBA_FILTER
        if ( HOA2_CHANNELS != *( (uint16_t *) ( hrtf_data_rptr ) ) )
        {
@@ -1323,19 +1317,12 @@ static ivas_error create_fastconv_HRTF_from_rawdata(
#endif
            }
        }
#endif
    }
    else if ( rend_type == RENDERER_BINAURAL_FASTCONV && input_cfg == BINAURAL_INPUT_AUDIO_CONFIG_FOA )
    {
        /* HRIR_FOA */
        ( *hHRTF )->FASTCONV_FOA_latency_s = *( (float *) ( hrtf_data_rptr ) );
        hrtf_data_rptr += sizeof( float );
#ifdef FIX_1720_HRTF_FASTCONV
        if ( 4 != *( (uint16_t *) ( hrtf_data_rptr ) ) )
        {
            return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "HRTF binary file not compliant (HRTF_SH_CHANNELS)" );
        }
        hrtf_data_rptr += sizeof( uint16_t );
#ifdef UPDATE_FASTCONV_SBA_FILTER
        if ( FOA_CHANNELS != *( (uint16_t *) ( hrtf_data_rptr ) ) )
        {
@@ -1422,7 +1409,6 @@ static ivas_error create_fastconv_HRTF_from_rawdata(
#endif
            }
        }
#endif
    }
    /* BRIR */
    else if ( rend_type == RENDERER_BINAURAL_FASTCONV_ROOM && input_cfg == BINAURAL_INPUT_AUDIO_CONFIG_COMBINED )
@@ -1535,9 +1521,9 @@ ivas_error load_fastconv_HRTF_from_binary(
    }

    /* Read & load */

#ifndef FIX_1720_HRTF_FASTCONV
    memset( hHrtfFastConv, 0x00, sizeof( HRTFS_FASTCONV ) );

#endif
    for ( hrtf_id = 0; hrtf_id < hrtfs_file_header.nb_hrtf; hrtf_id++ )
    {
        if ( read_hrtf_binary_header( &hrtf_header, f_hrtf ) != IVAS_ERR_OK )