Fixed findings

List of Findings

Error: CPPCHECK_WARNING (CWE-476): [#def1]
fontconfig-2.17.0/src/fcdir.c:111: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: s
#  109|   		FcChar8 *s = FcStrdup (f);
#  110|   		FcPatternObjectDel (font, FC_FILE_OBJECT);
#  111|-> 		if (s[len] != '/')
#  112|   		    len--;
#  113|   		else if (s[len + 1] == '/')

Error: COMPILER_WARNING (CWE-563): [#def2]
fontconfig-2.17.0/src/fcfreetype.c: scope_hint: In function ‘FcSfntNameTranscode’
fontconfig-2.17.0/src/fcfreetype.c:687:14: warning[-Wunused-variable]: unused variable ‘redecoded’
#  687 |     FcBool   redecoded = FcFalse;
#      |              ^~~~~~~~~
#  685|   #endif
#  686|       FcChar8 *utf8;
#  687|->     FcBool   redecoded = FcFalse;
#  688|   
#  689|       for (i = 0; i < NUM_FC_FT_ENCODING; i++)

Error: COMPILER_WARNING: [#def3]
fontconfig-2.17.0/src/fccharset.c:25: included_from: Included from here.
fontconfig-2.17.0/src/fccharset.c: scope_hint: In function ‘FcCharSetPutLeaf’
fontconfig-2.17.0/src/fcint.h:172:47: warning[-Wuse-after-free]: pointer ‘leaves_100’ may be used after ‘realloc’
#  172 | #define FcOffsetToPtr(b, o, t)         ((t *)((intptr_t)(b) + (ptrdiff_t)(o)))
#      |                                               ^~~~~~~~~~~~~
fontconfig-2.17.0/src/fccharset.c:177:26: note: call to ‘realloc’ here
#  177 |             new_leaves = realloc (leaves, alloced * sizeof (*leaves));
#      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  170|   
#  171|   /* Given base address, offset and type, return a pointer */
#  172|-> #define FcOffsetToPtr(b, o, t)         ((t *)((intptr_t)(b) + (ptrdiff_t)(o)))
#  173|   
#  174|   /* Given base address, encoded offset and type, return a pointer */

Error: COMPILER_WARNING (CWE-704): [#def4]
fontconfig-2.17.0/src/fclang.c: scope_hint: In function ‘IA__FcLangNormalize’
fontconfig-2.17.0/src/fclang.c:220:14: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  220 |     modifier = strchr ((const char *)s, '@');
#      |              ^
#  218|        * then. and maybe no need to try language_territory here.
#  219|        */
#  220|->     modifier = strchr ((const char *)s, '@');
#  221|       if (modifier) {
#  222|   	*modifier = 0;

Error: COMPILER_WARNING (CWE-704): [#def5]
fontconfig-2.17.0/src/fclang.c:220:14: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  218|        * then. and maybe no need to try language_territory here.
#  219|        */
#  220|->     modifier = strchr ((const char *)s, '@');
#  221|       if (modifier) {
#  222|   	*modifier = 0;

Error: COMPILER_WARNING (CWE-704): [#def6]
fontconfig-2.17.0/src/fclang.c:226:14: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  226 |     encoding = strchr ((const char *)s, '.');
#      |              ^
#  224|   	mlen = strlen (modifier);
#  225|       }
#  226|->     encoding = strchr ((const char *)s, '.');
#  227|       if (encoding) {
#  228|   	*encoding = 0;

Error: COMPILER_WARNING (CWE-704): [#def7]
fontconfig-2.17.0/src/fclang.c:226:14: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  224|   	mlen = strlen (modifier);
#  225|       }
#  226|->     encoding = strchr ((const char *)s, '.');
#  227|       if (encoding) {
#  228|   	*encoding = 0;

Error: COMPILER_WARNING (CWE-704): [#def8]
fontconfig-2.17.0/src/fclang.c:235:15: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  235 |     territory = strchr ((const char *)s, '_');
#      |               ^
#  233|   	}
#  234|       }
#  235|->     territory = strchr ((const char *)s, '_');
#  236|       if (!territory)
#  237|   	territory = strchr ((const char *)s, '-');

Error: COMPILER_WARNING (CWE-704): [#def9]
fontconfig-2.17.0/src/fclang.c:235:15: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  233|   	}
#  234|       }
#  235|->     territory = strchr ((const char *)s, '_');
#  236|       if (!territory)
#  237|   	territory = strchr ((const char *)s, '-');

Error: COMPILER_WARNING (CWE-704): [#def10]
fontconfig-2.17.0/src/fclang.c:237:19: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  237 |         territory = strchr ((const char *)s, '-');
#      |                   ^
#  235|       territory = strchr ((const char *)s, '_');
#  236|       if (!territory)
#  237|-> 	territory = strchr ((const char *)s, '-');
#  238|       if (territory) {
#  239|   	*territory = 0;

Error: COMPILER_WARNING (CWE-704): [#def11]
fontconfig-2.17.0/src/fclang.c:237:19: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type
#  235|       territory = strchr ((const char *)s, '_');
#  236|       if (!territory)
#  237|-> 	territory = strchr ((const char *)s, '-');
#  238|       if (territory) {
#  239|   	*territory = 0;

Scan Properties

analyzer-version-clippy1.97.1
analyzer-version-cppcheck2.21.1
analyzer-version-gcc16.1.1
analyzer-version-gcc-analyzer16.1.1
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
diffbase-analyzer-version-clippy1.97.1
diffbase-analyzer-version-cppcheck2.21.1
diffbase-analyzer-version-gcc16.1.1
diffbase-analyzer-version-gcc-analyzer16.1.1
diffbase-analyzer-version-shellcheck0.11.0
diffbase-analyzer-version-unicontrol0.0.2
diffbase-enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
diffbase-exit-code0
diffbase-hostip-172-16-1-178.us-west-2.compute.internal
diffbase-known-false-positives/usr/share/csmock/known-false-positives.js
diffbase-known-false-positives-rpmknown-false-positives-0.0.0.20260524.213755.g3c6d0be.main-1.el9.noarch
diffbase-mock-configfedora-rawhide-x86_64
diffbase-project-namefontconfig-2.18.2-6.fc45
diffbase-store-results-to/tmp/tmp39kpcoah/fontconfig-2.18.2-6.fc45.tar.xz
diffbase-time-created2026-08-03 14:15:41
diffbase-time-finished2026-08-03 14:17:58
diffbase-toolcsmock
diffbase-tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,clippy,unicontrol,shellcheck,cppcheck' '-o' '/tmp/tmp39kpcoah/fontconfig-2.18.2-6.fc45.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmp39kpcoah/fontconfig-2.18.2-6.fc45.src.rpm'
diffbase-tool-versioncsmock-3.8.7.HEAD-1.el9
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-178.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20260524.213755.g3c6d0be.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namefontconfig-2.17.0-4.fc44
store-results-to/tmp/tmphx6gxa1g/fontconfig-2.17.0-4.fc44.tar.xz
time-created2026-08-03 14:11:34
time-finished2026-08-03 14:15:27
titleFixed findings
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,clippy,unicontrol,shellcheck,cppcheck' '-o' '/tmp/tmphx6gxa1g/fontconfig-2.17.0-4.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmphx6gxa1g/fontconfig-2.17.0-4.fc44.src.rpm'
tool-versioncsmock-3.8.7.HEAD-1.el9