Commit 31b31ddd authored by malenovsky's avatar malenovsky
Browse files

Merge branch...

Merge branch '598-be-re-insert-assert-to-catch-out-of-memory-access-in-the-ind_list-buffer' into 'main'

[BE] Re-insert assert() to catch out-of-memory access in the ind_list[] buffer

See merge request !820
parents 5fd23c7d 225754af
Loading
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -990,7 +990,12 @@ ivas_error check_ind_list_limits(
    if ( ( &hBstr->ind_list[hBstr->nb_ind_tot] - ivas_ind_list_zero ) >= *( hBstr->ivas_max_num_indices ) )
    {
#ifdef DEBUGGING
#ifdef DEBUG_IND_LIST_MEMORY
        /* TODO: replace with the warning message below before the finalization of the IVAS codec */
        assert( 0 && "The maximum number of indices has been exceeded! Increase the limits in get_ivas_max_num_indices() or get_max_num_indices_metadata()." );
#else
        fprintf( stderr, "Warning: The maximum number of indices %d has been exceeded in frame %d! Increase the limits in get_ivas_max_num_indices() or get_max_num_indices_metadata().\n", *( hBstr->ivas_max_num_indices ), frame );
#endif
#endif

        /* reallocate the buffer of indices with increased limit */
@@ -1022,7 +1027,12 @@ ivas_error check_ind_list_limits(
            if ( hBstr->ind_list >= ivas_ind_list_last )
            {
#ifdef DEBUGGING
#ifdef DEBUG_IND_LIST_MEMORY
                /* TODO: replace with the warning message below before the finalization of the IVAS codec */
                assert( 0 && "The maximum number of indices has been exceeded! Increase the limits in get_ivas_max_num_indices() or get_max_num_indices_metadata()." );
#else
                fprintf( stderr, "Warning: The maximum number of indices %d has been exceeded in frame %d! Increase the limits in get_ivas_max_num_indices() or get_max_num_indices_metadata().\n", *( hBstr->ivas_max_num_indices ), frame );
#endif
#endif

                /* no available empty slot -> need to re-allocate the buffer */
+1 −1
Original line number Diff line number Diff line
@@ -128,7 +128,7 @@
/*#define DEBUG_AGC_ENCODER_CMD_OPTION*/        /* Ability to force enable or disable AGC behaviour in DIRAC/SPAR via command line option */
#define DEBUG_JBM_CMD_OPTION                    /* ability for telling the decoder the frontend fetch size and to not delay compensate for bad frames at the beginning */
#define VARIABLE_SPEED_DECODING                 /* variable speed decoding employing the JBM functioniality; move to DEBUGGING after build for disabled is fixed */

#define DEBUG_IND_LIST_MEMORY                   /* raise assert() when ind_list[] runs out of memory */
#endif

/* #################### End DEBUGGING switches ############################ */