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-clang | 18.1.7 |
analyzer-version-cppcheck | 2.14.2 |
analyzer-version-gcc | 14.1.1 |
analyzer-version-gcc-analyzer | 14.1.1 |
analyzer-version-shellcheck | 0.10.0 |
diffbase-analyzer-version-clang | 18.1.7 |
diffbase-analyzer-version-cppcheck | 2.14.2 |
diffbase-analyzer-version-gcc | 14.1.1 |
diffbase-analyzer-version-gcc-analyzer | 14.1.1 |
diffbase-analyzer-version-shellcheck | 0.10.0 |
diffbase-enabled-plugins | clang, cppcheck, gcc, shellcheck |
diffbase-exit-code | 0 |
diffbase-host | ip-172-16-1-61.us-west-2.compute.internal |
diffbase-mock-config | fedora-41-x86_64 |
diffbase-project-name | svt-av1-1.4.1-5.fc40 |
diffbase-store-results-to | /tmp/tmpsqchlf38/svt-av1-1.4.1-5.fc40.tar.xz |
diffbase-time-created | 2024-07-03 18:01:46 |
diffbase-time-finished | 2024-07-03 18:11:11 |
diffbase-tool | csmock |
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-version | csmock-3.5.3-1.el9 |
enabled-plugins | clang, cppcheck, gcc, shellcheck |
exit-code | 0 |
host | ip-172-16-1-61.us-west-2.compute.internal |
mock-config | fedora-41-x86_64 |
project-name | svt-av1-2.1.0-1.fc41 |
store-results-to | /tmp/tmpcz1ek3ge/svt-av1-2.1.0-1.fc41.tar.xz |
time-created | 2024-07-03 18:11:38 |
time-finished | 2024-07-03 18:20:16 |
title | Newly introduced defects |
tool | csmock |
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-version | csmock-3.5.3-1.el9 |