Related: rhbz#2068287 Fix covscan report

This commit is contained in:
Takao Fujiwara 2022-05-06 21:12:58 +09:00
parent c15651d888
commit dbdcba334e
2 changed files with 71 additions and 1 deletions

View File

@ -4547,3 +4547,70 @@ index 0bb9917..13edcc2 100644
--
2.28.0
From 255323305b3621286cc4025ac59fa7d37fa1e7ce Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Fri, 6 May 2022 20:33:47 +0900
Subject: [PATCH] src-main/context.c: Code reviews
---
src-main/context.c | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/src-main/context.c b/src-main/context.c
index 20dde71..d84858c 100644
--- a/src-main/context.c
+++ b/src-main/context.c
@@ -451,7 +451,7 @@ anthy_get_nth_segment(struct segment_list *sl, int n)
n < 0) {
return NULL;
}
- for (i = 0, se = sl->list_head.next; i < n; i++, se = se->next);
+ for (i = 0, se = sl->list_head.next; (i < n) && se; i++, se = se->next);
return se;
}
@@ -499,6 +499,17 @@ get_change_state(struct anthy_context *ac)
int i;
for (i = 0; i < ac->seg_list.nr_segments; i++) {
struct seg_ent *s = anthy_get_nth_segment(&ac->seg_list, i);
+ if (!ac->split_info.ce) {
+ anthy_log(0, "ac->split_info.ce is NULL %s:%d\n", __FILE__, __LINE__);
+ resize = 1;
+ break;
+ }
+ if (!s) {
+ anthy_log(0, "ac->seg_list %dth entry is NULL %s:%d\n",
+ i, __FILE__, __LINE__);
+ resize = 1;
+ continue;
+ }
if (ac->split_info.ce[s->from].initial_seg_len != s->len) {
resize = 1;
}
@@ -538,6 +549,11 @@ write_history(int fd,
struct seg_ent *s = anthy_get_nth_segment(&ac->seg_list, i);
char *c;
/**/
+ if (!s) {
+ anthy_log(0, "ac->seg_list %dth entry is NULL %s:%d\n",
+ i, __FILE__, __LINE__);
+ continue;
+ }
if (s->committed < 0) {
dprintf(fd, "?|");
continue ;
@@ -647,9 +663,11 @@ print_segment(struct seg_ent *e)
{
int i;
+ assert(e);
anthy_putxstr(&e->str);
printf("(");
for ( i = 0 ; i < e->nr_cands ; i++) {
+ assert(e->cands);
anthy_print_candidate(e->cands[i]);
printf(",");
}
--
2.35.1

View File

@ -4,7 +4,7 @@
Name: anthy-unicode
Version: 1.0.0.20201109
Release: 8%{?dist}
Release: 9%{?dist}
# The entire source code is LGPLv2+ and dictionaries is GPLv2. the corpus data is under Public Domain.
License: LGPLv2+ and GPLv2 and Public Domain
URL: https://github.com/fujiwarat/anthy-unicode/wiki
@ -161,6 +161,9 @@ cd ..
%changelog
* Fri May 06 2022 Takao Fujiwara <fujiwara@redhat.com> 1.0.0.20201109-9
- Fix covscan report. Related: rhbz#2068287
* Fri Apr 29 2022 Takao Fujiwara <fujiwara@redhat.com> 1.0.0.20201109-8
- Rebuild to add anthy-unicode-devel to CRB. Related: rhbz#2068287