Newly introduced defects

List of Defects

Error: GCC_ANALYZER_WARNING (CWE-476): [#def1]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/DecApp/EbDecAppMain.c:199:57: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘malloc(64)’
#  197|           size     = size * w * h;
#  198|           assert(recon_buffer->p_buffer != NULL);
#  199|->         ((EbSvtIOFormat *)recon_buffer->p_buffer)->luma = (uint8_t *)malloc(size);
#  200|           ((EbSvtIOFormat *)recon_buffer->p_buffer)->cb   = (uint8_t *)malloc(size >> 2);
#  201|           ((EbSvtIOFormat *)recon_buffer->p_buffer)->cr   = (uint8_t *)malloc(size >> 2);

Error: CLANG_WARNING: [#def2]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppConfig.c:1617:5: warning[unix.Malloc]: Potential leak of memory pointed to by 'word'
# 1615|           return_error = set_config_value(app_cfg, word, value, instance_idx);
# 1616|       }
# 1617|->     free(word);
# 1618|       free(value);
# 1619|       fclose(config_file);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def3]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppConfig.c: scope_hint: In function ‘read_fgs_table’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppConfig.c:2316:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘film_grain’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppConfig.c: scope_hint: In function ‘read_fgs_table’
# 2314|           }
# 2315|   
# 2316|->         if (film_grain->update_parameters) {
# 2317|               num_read = fscanf(file,
# 2318|                                 "p %d %d %d %d %d %d %d %d %d %d %d %d\n",

Error: GCC_ANALYZER_WARNING (CWE-476): [#def4]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppConfig.c:2411:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘film_grain’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppConfig.c: scope_hint: In function ‘read_fgs_table’
# 2409|       fclose(file);
# 2410|   
# 2411|->     film_grain->apply_grain = 1;
# 2412|       film_grain->ignore_ref  = 1;
# 2413|       cfg->config.fgs_table   = film_grain;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def5]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppContext.c: scope_hint: In function ‘parse_rio_map_file’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/App/EncApp/EbAppContext.c:247:32: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘last_evt’
#  245|               }
#  246|               if (roi_map->evt_list != NULL) {
#  247|->                 last_evt->next = evt;
#  248|               } else {
#  249|                   roi_map->evt_list = evt;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def6]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h:532:89: warning[-Wanalyzer-out-of-bounds]: buffer over-read
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h: scope_hint: In function ‘svt_aom_check_high_freq’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EncModeConfig.c: scope_hint: In function ‘svt_aom_check_high_freq’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h:532:89: note: read of 1 byte from after the end of ‘ref_type_to_list_idx’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h:532:89: note: valid subscripts for ‘ref_type_to_list_idx’ are ‘[0]’ to ‘[7]’
#                                                 └──────────────────────────┘
#                                                              ^
#  530|   */
#  531|   static uint8_t              ref_type_to_list_idx[REFS_PER_FRAME + 1] = {0, 0, 0, 0, 0, 1, 1, 1};
#  532|-> static INLINE uint8_t       get_list_idx(uint8_t ref_type) { return ref_type_to_list_idx[ref_type]; }
#  533|   static uint8_t              ref_type_to_ref_idx[REFS_PER_FRAME + 1] = {0, 0, 1, 2, 3, 0, 1, 2};
#  534|   static INLINE uint8_t       get_ref_frame_idx(uint8_t ref_type) { return ref_type_to_ref_idx[ref_type]; };

Error: GCC_ANALYZER_WARNING (CWE-126): [#def7]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h:534:93: warning[-Wanalyzer-out-of-bounds]: buffer over-read
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h: scope_hint: In function ‘svt_aom_check_high_freq’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EncModeConfig.c: scope_hint: In function ‘svt_aom_check_high_freq’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h:534:93: note: read of 1 byte from after the end of ‘ref_type_to_ref_idx’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbInterPrediction.h:534:93: note: valid subscripts for ‘ref_type_to_ref_idx’ are ‘[0]’ to ‘[7]’
#                                                └──────────────────────────┘
#                                                             ^
#  532|   static INLINE uint8_t       get_list_idx(uint8_t ref_type) { return ref_type_to_list_idx[ref_type]; }
#  533|   static uint8_t              ref_type_to_ref_idx[REFS_PER_FRAME + 1] = {0, 0, 1, 2, 3, 0, 1, 2};
#  534|-> static INLINE uint8_t       get_ref_frame_idx(uint8_t ref_type) { return ref_type_to_ref_idx[ref_type]; };
#  535|   static INLINE PredDirection av1_get_pred_dir(int8_t ref_frame_type) {
#  536|       MvReferenceFrame rf[2];

Error: COMPILER_WARNING: [#def8]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/ASM_AVX2/ssim_avx2.c: scope_hint: In function ‘svt_ssim_8x8_avx2’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/ASM_AVX2/ssim_avx2.c:45:13: warning[-Wpsabi]: AVX vector return without AVX enabled changes the ABI
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/ASM_AVX2/ssim_avx2.c: scope_hint: In function ‘sum8’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/ASM_AVX2/ssim_avx2.c:21:24: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
#   43|                            int count, uint32_t bd);
#   44|   double        svt_ssim_8x8_avx2(const uint8_t *s, uint32_t sp, const uint8_t *r, uint32_t rp) {
#   45|->     __m256i vec_sum_s    = _mm256_setzero_si256();
#   46|       __m256i vec_sum_r    = _mm256_setzero_si256();
#   47|       __m256i vec_sum_sq_s = _mm256_setzero_si256();

Error: CLANG_WARNING: [#def9]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbCodingLoop.c:599:13: warning[core.CallAndMessage]: 13th function call argument is an uninitialized value
#  597|                   (pred_samples->org_x + org_x);
#  598|   
#  599|->             svt_aom_inv_transform_recon_wrapper(pred_samples->buffer_y,
#  600|                                                   pred_luma_offset,
#  601|                                                   pred_samples->stride_y,

Error: CLANG_WARNING: [#def10]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbCodingLoop.c:629:13: warning[core.CallAndMessage]: 13th function call argument is an uninitialized value
#  627|                   ((pred_samples->org_x + round_origin_x) >> 1);
#  628|   
#  629|->             svt_aom_inv_transform_recon_wrapper(pred_samples->buffer_cb,
#  630|                                                   pred_offset_cb,
#  631|                                                   pred_samples->stride_cb,

Error: CLANG_WARNING: [#def11]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbCodingLoop.c:651:13: warning[core.CallAndMessage]: 13th function call argument is an uninitialized value
#  649|                   ((pred_samples->org_x + round_origin_x) >> 1);
#  650|   
#  651|->             svt_aom_inv_transform_recon_wrapper(pred_samples->buffer_cr,
#  652|                                                   pred_offset_cr,
#  653|                                                   pred_samples->stride_cr,

Error: CLANG_WARNING: [#def12]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbDeblockingFilter.c:1100:52: warning[core.DivideZero]: Division by zero
# 1098|                   total_me_sad += pcs->ppcs->rc_me_distortion[b64_index];
# 1099|               }
# 1100|->             uint32_t average_me_sad = total_me_sad / pcs->b64_total_count;
# 1101|   
# 1102|               if (average_me_sad < use_zero_strength_th)

Error: CLANG_WARNING: [#def13]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbDeblockingFilter.c:1142:29: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 1140|           int32_t filter_level[4];
# 1141|           svt_av1_pick_filter_level_by_q(pcs, frm_hdr->quantization_params.base_q_idx, filter_level);
# 1142|->         lf->filter_level[0] = filter_level[0];
# 1143|           lf->filter_level[1] = filter_level[1];
# 1144|           lf->filter_level_u  = filter_level[2];

Error: CLANG_WARNING: [#def14]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbDeblockingFilter.c:1200:59: warning[core.DivideZero]: Division by zero
# 1198|               }
# 1199|   
# 1200|->             lf->filter_level[0] = tot_ref_filter_level[0] / tot_refs;
# 1201|               lf->filter_level[1] = tot_ref_filter_level[1] / tot_refs;
# 1202|               lf->filter_level_u  = tot_ref_filter_level_u / tot_refs;

Error: CPPCHECK_WARNING: [#def15]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbEncWarpedMotion.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CLANG_WARNING: [#def16]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbGlobalMotionEstimation.c:231:13: warning[deadcode.DeadStores]: Value stored to 'input_refinement' is never read
#  229|           if (pcs->gm_downsample_level == GM_DOWN16) {
#  230|               input_detection  = sixteenth_picture_ptr;
#  231|->             input_refinement = sixteenth_picture_ptr;
#  232|           } else if (pcs->gm_downsample_level == GM_DOWN) {
#  233|               input_detection  = quarter_picture_ptr;

Error: CLANG_WARNING: [#def17]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbGlobalMotionEstimation.c:234:13: warning[deadcode.DeadStores]: Value stored to 'input_refinement' is never read
#  232|           } else if (pcs->gm_downsample_level == GM_DOWN) {
#  233|               input_detection  = quarter_picture_ptr;
#  234|->             input_refinement = quarter_picture_ptr;
#  235|           } else {
#  236|               input_detection  = input_pic;

Error: CLANG_WARNING: [#def18]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbGlobalMotionEstimation.c:237:13: warning[deadcode.DeadStores]: Value stored to 'input_refinement' is never read
#  235|           } else {
#  236|               input_detection  = input_pic;
#  237|->             input_refinement = input_pic;
#  238|           }
#  239|   

Error: CLANG_WARNING: [#def19]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbInitialRateControlProcess.c:626:21: warning[core.DivideZero]: Division by zero
#  624|               avg_variance_me_dist += pcs->me_8x8_cost_variance[b64_idx];
#  625|           }
#  626|->         avg_me_dist /= pcs->b64_total_count;
#  627|           avg_variance_me_dist /= pcs->b64_total_count;
#  628|   

Error: CLANG_WARNING: [#def20]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbInitialRateControlProcess.c:699:42: warning[core.DivideZero]: Division by zero
#  697|                       dist += pcs->me_8x8_distortion[b64_idx];
#  698|                   }
#  699|->                 pcs->norm_me_dist = dist / scs->b64_total_count;
#  700|               }
#  701|   

Error: CLANG_WARNING: [#def21]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbMotionEstimation.c:1570:13: warning[deadcode.DeadStores]: Value stored to 'x_top_left_search_region' is never read
# 1568|   
# 1569|               // Move to the top left of the search region
# 1570|->             x_top_left_search_region = (int16_t)(ref_pic_ptr->org_x + b64_origin_x) + x_search_area_origin;
# 1571|               y_top_left_search_region = (int16_t)(ref_pic_ptr->org_y + b64_origin_y) + y_search_area_origin;
# 1572|               open_loop_me_fullpel_search_sblock(me_ctx,

Error: CLANG_WARNING: [#def22]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbMotionEstimation.c:1571:13: warning[deadcode.DeadStores]: Value stored to 'y_top_left_search_region' is never read
# 1569|               // Move to the top left of the search region
# 1570|               x_top_left_search_region = (int16_t)(ref_pic_ptr->org_x + b64_origin_x) + x_search_area_origin;
# 1571|->             y_top_left_search_region = (int16_t)(ref_pic_ptr->org_y + b64_origin_y) + y_search_area_origin;
# 1572|               open_loop_me_fullpel_search_sblock(me_ctx,
# 1573|                                                  list_index,

Error: CLANG_WARNING: [#def23]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbMotionEstimation.c:2717:9: warning[deadcode.DeadStores]: Value stored to 'num_of_list_to_search' is never read
# 2715|   
# 2716|       if (num_of_list_to_search < 2 || !ctx->search_results[REF_LIST_1][0].do_ref)
# 2717|->         num_of_list_to_search = 1;
# 2718|   
# 2719|       // Set the count to 1 for all PUs using memset, which is faster than setting at the end of each loop.  The count will only need

Error: GCC_ANALYZER_WARNING (CWE-476): [#def24]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c: scope_hint: In function ‘svt_aom_picture_manager_kernel’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:403:58: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘ref_entry’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Globals/EbEncHandle.h:18: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:15: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:336:9: note: in expansion of macro ‘EB_GET_FULL_OBJECT’
#  401|                           i != enc_ctx->ref_pic_list_length - 1, enc_ctx->app_callback_ptr, EB_ENC_PM_ERROR5);
#  402|                   }
#  403|->                 ref_entry->picture_number                = pcs->picture_number;
#  404|                   ref_entry->reference_object_ptr          = (EbObjectWrapper *)NULL;
#  405|                   ref_entry->release_enable                = TRUE;

Error: CLANG_WARNING: [#def25]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:403:58: warning[core.NullDereference]: Access to field 'picture_number' results in a dereference of a null pointer (loaded from variable 'ref_entry')
#  401|                           i != enc_ctx->ref_pic_list_length - 1, enc_ctx->app_callback_ptr, EB_ENC_PM_ERROR5);
#  402|                   }
#  403|->                 ref_entry->picture_number                = pcs->picture_number;
#  404|                   ref_entry->reference_object_ptr          = (EbObjectWrapper *)NULL;
#  405|                   ref_entry->release_enable                = TRUE;

Error: CLANG_WARNING: [#def26]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:451:33: warning[core.NullDereference]: Access to field 'picture_number' results in a dereference of a null pointer (loaded from variable 'ref_entry')
#  449|                   CHECK_REPORT_ERROR(i != enc_ctx->ref_pic_list_length - 1, enc_ctx->app_callback_ptr, EB_ENC_PM_ERROR5);
#  450|               }
#  451|->             CHECK_REPORT_ERROR((ref_entry->picture_number == input_pic_demux->picture_number),
#  452|                                  enc_ctx->app_callback_ptr,
#  453|                                  EB_ENC_PM_ERROR8);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def27]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:25: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:451:42: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘ref_entry’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/API/EbSvtAv1ErrorCodes.h:21:15: note: in definition of macro ‘CHECK_REPORT_ERROR’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbPictureManagerProcess.c:336:9: note: in expansion of macro ‘EB_GET_FULL_OBJECT’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/API/EbSvtAv1ErrorCodes.h:21:15: note: in definition of macro ‘CHECK_REPORT_ERROR’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/API/EbSvtAv1ErrorCodes.h:21:15: note: in definition of macro ‘CHECK_REPORT_ERROR’
#  449|                   CHECK_REPORT_ERROR(i != enc_ctx->ref_pic_list_length - 1, enc_ctx->app_callback_ptr, EB_ENC_PM_ERROR5);
#  450|               }
#  451|->             CHECK_REPORT_ERROR((ref_entry->picture_number == input_pic_demux->picture_number),
#  452|                                  enc_ctx->app_callback_ptr,
#  453|                                  EB_ENC_PM_ERROR8);

Error: CLANG_WARNING: [#def28]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbRateControlProcess.c:3177:29: warning[core.DivideZero]: Division by zero
# 3175|                       avg_me_dist += pcs->ppcs->rc_me_distortion[b64_idx];
# 3176|                   }
# 3177|->                 avg_me_dist /= pcs->ppcs->b64_total_count;
# 3178|                   rc->cur_avg_base_me_dist = (uint32_t)avg_me_dist;
# 3179|               }

Error: CLANG_WARNING: [#def29]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbRateControlProcess.c:3552:13: warning[deadcode.DeadStores]: Value stored to 'scs' is never read
# 3550|           default:
# 3551|               pcs = (PictureControlSet *)rc_tasks->pcs_wrapper->object_ptr;
# 3552|->             scs = pcs->scs;
# 3553|   
# 3554|               break;

Error: CLANG_WARNING: [#def30]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1976:30: warning[core.NullDereference]: Access to field 'bit_depth' results in a dereference of a null pointer (loaded from field 'enhanced_downscaled_pic')
# 1974|           svt_aom_resize_frame(input_pic,
# 1975|                                pcs->enhanced_downscaled_pic,
# 1976|->                              pcs->enhanced_downscaled_pic->bit_depth,
# 1977|                                num_planes,
# 1978|                                ss_x,

Error: GCC_ANALYZER_WARNING (CWE-476): [#def31]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c: scope_hint: In function ‘svt_aom_init_resize_picture’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1980:58: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘*pcs.enhanced_downscaled_pic’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1954:5: note: in expansion of macro ‘EB_DELETE’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:107:9: note: in expansion of macro ‘EB_CHECK_MEM’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:74:9: note: in expansion of macro ‘EB_CALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1311:5: note: in expansion of macro ‘EB_NEW’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:75:15: note: in definition of macro ‘EB_NEW’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1311:5: note: in expansion of macro ‘EB_NEW’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:50:14: note: in definition of macro ‘EB_DELETE_UNCHECKED’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1311:5: note: in expansion of macro ‘EB_NEW’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:77:13: note: in expansion of macro ‘EB_DELETE_UNCHECKED’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1311:5: note: in expansion of macro ‘EB_NEW’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:52:9: note: in expansion of macro ‘EB_FREE’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:77:13: note: in expansion of macro ‘EB_DELETE_UNCHECKED’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbResize.c:1311:5: note: in expansion of macro ‘EB_NEW’
# 1978|                                ss_x,
# 1979|                                ss_y,
# 1980|->                              pcs->enhanced_downscaled_pic->packed_flag,
# 1981|                                PICTURE_BUFFER_DESC_FULL_MASK, // buffer_enable_mask
# 1982|                                1); // is_2bcompress

Error: CLANG_WARNING: [#def32]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbRestProcess.c:301:25: warning[core.NullDereference]: Access to field 'org_y' results in a dereference of a null pointer (loaded from variable 'recon_picture_buf')
#  299|   
#  300|       if (plane == 0) {
#  301|->         block_offset = (recon_picture_buf->org_y + blk_row_px) * recon_picture_buf->stride_y +
#  302|               (recon_picture_buf->org_x + blk_col_px);
#  303|           *recon_stride = recon_picture_buf->stride_y;

Error: CPPCHECK_WARNING: [#def33]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSegmentation.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING (CWE-823): [#def34]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSegmentation.c:112: error[arrayIndexOutOfBounds]: Array 'segmentation_params->feature_data[8][8]' accessed at index segmentation_params->feature_data[8][0], which is out of bounds.
#  110|       for (int i = segment_id; i >= 0; i--) {
#  111|           int32_t q_index = pcs->ppcs->frm_hdr.quantization_params.base_q_idx +
#  112|->             segmentation_params->feature_data[i][SEG_LVL_ALT_Q];
#  113|           // Avoid lossless since SVT-AV1 doesn't support it.
#  114|           if (q_index > 0) {

Error: GCC_ANALYZER_WARNING (CWE-476): [#def35]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c: scope_hint: In function ‘svt_aom_sb_geom_init’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c:223:49: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘*scs.sb_geom’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:16: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbPictureBufferDesc.h:19: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbAv1Structs.h:15: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.h:17: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c:14: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:94:9: note: in expansion of macro ‘EB_NO_THROW_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:118:10: note: in expansion of macro ‘EB_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c:210:5: note: in expansion of macro ‘EB_MALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:88:9: note: in expansion of macro ‘EB_NO_THROW_ADD_MEM’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:94:9: note: in expansion of macro ‘EB_NO_THROW_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:118:10: note: in expansion of macro ‘EB_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c:210:5: note: in expansion of macro ‘EB_MALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:88:9: note: in expansion of macro ‘EB_NO_THROW_ADD_MEM’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:94:9: note: in expansion of macro ‘EB_NO_THROW_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:118:10: note: in expansion of macro ‘EB_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c:210:5: note: in expansion of macro ‘EB_MALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:95:9: note: in expansion of macro ‘EB_CHECK_MEM’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:118:10: note: in expansion of macro ‘EB_MALLOC’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSequenceControlSet.c:210:5: note: in expansion of macro ‘EB_MALLOC_ARRAY’
#  221|   
#  222|       for (sb_index = 0; sb_index < picture_sb_width * picture_sb_height; ++sb_index) {
#  223|->         scs->sb_geom[sb_index].horizontal_index = sb_index % picture_sb_width;
#  224|           scs->sb_geom[sb_index].vertical_index   = sb_index / picture_sb_width;
#  225|           scs->sb_geom[sb_index].org_x            = scs->sb_geom[sb_index].horizontal_index * scs->sb_size;

Error: CLANG_WARNING: [#def36]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbSourceBasedOperationsProcess.c:2164:20: warning[deadcode.DeadStores]: Value stored to 'var_backup' during its initialization is never read
# 2162|               // Curve fitting with an exponential model on all 16x16 blocks from the
# 2163|               // midres dataset.
# 2164|->             double var_backup                                   = var;
# 2165|               var                                                 = factor_a * (1 - exp(factor_b * var)) + factor_c;
# 2166|               pcs->pa_me_data->ssim_rdmult_scaling_factors[index] = var;

Error: CLANG_WARNING: [#def37]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbTemporalFiltering.c:3957:18: warning[core.DivideZero]: Division by zero
# 3955|           }
# 3956|       }
# 3957|->     return (dist / (pic_width_in_b64 * pic_height_in_b64));
# 3958|   }
# 3959|   EbErrorType svt_av1_init_temporal_filtering(

Error: CPPCHECK_WARNING: [#def38]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EncModeConfig.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CLANG_WARNING: [#def39]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EncModeConfig.c:7229:9: warning[deadcode.DeadStores]: Value stored to 'subres_level' is never read
# 7227|           subres_level = 0;
# 7228|       } else {
# 7229|->         subres_level = 0;
# 7230|           // The controls checks the deviation between: (1) the pred-to-src SAD of even rows and (2) the pred-to-src SAD of odd rows for each 64x64 to decide whether to use subres or not
# 7231|           // then applies the result to the 64x64 block and to all children, therefore if incomplete 64x64 then shut subres

Error: CLANG_WARNING: [#def40]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EncModeConfig.c:8176:29: warning[core.DivideZero]: Division by zero
# 8174|                       avg_me_dist += ppcs->me_64x64_distortion[b64_idx];
# 8175|                   }
# 8176|->                 avg_me_dist /= ppcs->b64_total_count;
# 8177|                   avg_me_dist /= pcs->picture_qp;
# 8178|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def41]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c: scope_hint: In function ‘realloc_stats_out’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:82:15: warning[-Wanalyzer-malloc-leak]: leak of ‘**scs.enc_ctx.stats_out.stat’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbObject.h:16: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbMotionEstimationLcuResults.h:16: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/EbCodingUnit.h:15: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/aom_dsp_rtcd.h:20: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:17: included_from: Included from here.
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:78:13: note: in expansion of macro ‘EB_REALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:78:13: note: in expansion of macro ‘EB_REALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:78:13: note: in expansion of macro ‘EB_REALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:81:9: note: in expansion of macro ‘EB_NO_THROW_ADD_MEM’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Common/Codec/EbMalloc.h:127:9: note: in expansion of macro ‘EB_ADD_MEM’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:78:13: note: in expansion of macro ‘EB_REALLOC_ARRAY’
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Codec/firstpass.c:78:13: note: in expansion of macro ‘EB_REALLOC_ARRAY’
#   80|           out->capability = capability;
#   81|       }
#   82|->     out->size = frame_number + 1;
#   83|       return EB_ErrorNone;
#   84|   }

Error: CLANG_WARNING: [#def42]
svt-av1-2.1.0-build/SVT-AV1-v2.1.0/Source/Lib/Encoder/Globals/EbEncHandle.c:197:13: warning[deadcode.DeadStores]: Value stored to 'old_max_size' during its initialization is never read
#  195|           int processor_id = 0;
#  196|           int max_size = INITIAL_PROCESSOR_GROUP;
#  197|->         int old_max_size = max_size;
#  198|           char line[1024];
#  199|           while (fgets(line, sizeof(line), fin)) {

Scan Properties

analyzer-version-clang18.1.7
analyzer-version-cppcheck2.14.2
analyzer-version-gcc14.1.1
analyzer-version-gcc-analyzer14.1.1
analyzer-version-shellcheck0.10.0
diffbase-analyzer-version-clang18.1.7
diffbase-analyzer-version-cppcheck2.14.2
diffbase-analyzer-version-gcc14.1.1
diffbase-analyzer-version-gcc-analyzer14.1.1
diffbase-analyzer-version-shellcheck0.10.0
diffbase-enabled-pluginsclang, cppcheck, gcc, shellcheck
diffbase-exit-code0
diffbase-hostip-172-16-1-61.us-west-2.compute.internal
diffbase-mock-configfedora-41-x86_64
diffbase-project-namesvt-av1-1.4.1-5.fc40
diffbase-store-results-to/tmp/tmpsqchlf38/svt-av1-1.4.1-5.fc40.tar.xz
diffbase-time-created2024-07-03 18:01:46
diffbase-time-finished2024-07-03 18:11:11
diffbase-toolcsmock
diffbase-tool-args'/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmpsqchlf38/svt-av1-1.4.1-5.fc40.tar.xz' '--gcc-analyze' '/tmp/tmpsqchlf38/svt-av1-1.4.1-5.fc40.src.rpm'
diffbase-tool-versioncsmock-3.5.3-1.el9
enabled-pluginsclang, cppcheck, gcc, shellcheck
exit-code0
hostip-172-16-1-61.us-west-2.compute.internal
mock-configfedora-41-x86_64
project-namesvt-av1-2.1.0-1.fc41
store-results-to/tmp/tmpcz1ek3ge/svt-av1-2.1.0-1.fc41.tar.xz
time-created2024-07-03 18:11:38
time-finished2024-07-03 18:20:16
titleNewly introduced defects
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmpcz1ek3ge/svt-av1-2.1.0-1.fc41.tar.xz' '--gcc-analyze' '/tmp/tmpcz1ek3ge/svt-av1-2.1.0-1.fc41.src.rpm'
tool-versioncsmock-3.5.3-1.el9