libcaca-0.99-0.74.beta20.fc41

List of Defects

Error: CPPCHECK_WARNING: [#def1]
libcaca-0.99-build/libcaca-0.99.beta20/caca/box.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING (CWE-401): [#def2]
libcaca-0.99-build/libcaca-0.99.beta20/caca/caca0.c:242: error[memleakOnRealloc]: Common realloc mistake: 'bitmaps' nulled but not freed upon failure
#  240|       /* Store bitmap in our list */
#  241|       nbitmaps++;
#  242|->     bitmaps = realloc(bitmaps, nbitmaps * (sizeof(caca_dither_t *)));
#  243|       bitmaps[nbitmaps - 1] = d;
#  244|   

Error: CPPCHECK_WARNING: [#def3]
libcaca-0.99-build/libcaca-0.99.beta20/caca/canvas.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-401): [#def4]
libcaca-0.99-build/libcaca-0.99.beta20/caca/canvas.c: scope_hint: In function ‘caca_resize’
libcaca-0.99-build/libcaca-0.99.beta20/caca/canvas.c:401:45: warning[-Wanalyzer-malloc-leak]: leak of ‘realloc(*<unknown>.chars, (long unsigned int)new_size * 4)’
#  399|               cv->frames[f].chars = realloc(cv->frames[f].chars,
#  400|                                             new_size * sizeof(uint32_t));
#  401|->             cv->frames[f].attrs = realloc(cv->frames[f].attrs,
#  402|                                             new_size * sizeof(uint32_t));
#  403|               if(new_size && (!cv->frames[f].chars || !cv->frames[f].attrs))

Error: CLANG_WARNING: [#def5]
libcaca-0.99-build/libcaca-0.99.beta20/caca/canvas.c:433:44: warning[unix.Malloc]: Use of memory allocated with size zero
#  431|                   for(x = old_width; x--; )
#  432|                   {
#  433|->                     chars[y * width + x] = chars[y * old_width + x];
#  434|                       attrs[y * width + x] = attrs[y * old_width + x];
#  435|                   }

Error: CPPCHECK_WARNING: [#def6]
libcaca-0.99-build/libcaca-0.99.beta20/caca/charset.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def7]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-476): [#def8]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:50:10: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘data’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_tga’
#   48|   static inline int write_u8(char *s, uint8_t x)
#   49|   {
#   50|->     s[0] = x;
#   51|       return 1;
#   52|   }

Error: GCC_ANALYZER_WARNING (CWE-476): [#def9]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:58:14: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘data’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_troff’
#   56|       int n = 0;
#   57|       for (; d[n]; ++n)
#   58|->         s[n] = d[n];
#   59|       return n;
#   60|   }

Error: GCC_ANALYZER_WARNING (CWE-688): [#def10]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_caca’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:237:12: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  235|   
#  236|       /* magic */
#  237|->     cur += sprintf(cur, "%s", "\xCA\xCA" "CV");
#  238|   
#  239|       /* canvas_header */

Error: GCC_ANALYZER_WARNING (CWE-688): [#def11]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_html’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:292:12: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  290|       /* HTML header */
#  291|   
#  292|->     cur += sprintf(cur, "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n");
#  293|       cur += sprintf(cur, "   \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n");
#  294|       cur += sprintf(cur, "<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"en\" xml:lang=\"en\">");

Error: CPPCHECK_WARNING (CWE-401): [#def12]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:383: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  381|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  382|       *bytes = (uintptr_t)(cur - data);
#  383|->     data = realloc(data, *bytes);
#  384|   
#  385|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def13]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:385:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
#  383|       data = realloc(data, *bytes);
#  384|   
#  385|->     return data;
#  386|   }
#  387|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def14]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_html3’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:446:12: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  444|       cur = data = malloc(*bytes);
#  445|   
#  446|->     cur += sprintf(cur, "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" summary=\"[libcaca canvas export]\">\n");
#  447|   
#  448|       for(y = 0; y < cv->height; y++)

Error: CPPCHECK_WARNING (CWE-401): [#def15]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:639: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  637|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  638|       *bytes = (uintptr_t)(cur - data);
#  639|->     data = realloc(data, *bytes);
#  640|   
#  641|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def16]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:641:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
#  639|       data = realloc(data, *bytes);
#  640|   
#  641|->     return data;
#  642|   }
#  643|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def17]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_bbfr’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:659:12: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  657|   
#  658|       /* Table */
#  659|->     cur += sprintf(cur, "[font=Courier New]");
#  660|   
#  661|       for(y = 0; y < cv->height; y++)

Error: CPPCHECK_WARNING (CWE-401): [#def18]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:739: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  737|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  738|       *bytes = (uintptr_t)(cur - data);
#  739|->     data = realloc(data, *bytes);
#  740|   
#  741|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def19]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:741:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
#  739|       data = realloc(data, *bytes);
#  740|   
#  741|->     return data;
#  742|   }
#  743|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def20]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_ps’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:780:12: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  778|   
#  779|       /* Header */
#  780|->     cur += sprintf(cur, "%s", ps_header);
#  781|       cur += sprintf(cur, "0 %d translate\n", cv->height);
#  782|   

Error: CPPCHECK_WARNING (CWE-401): [#def21]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:848: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  846|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  847|       *bytes = (uintptr_t)(cur - data);
#  848|->     data = realloc(data, *bytes);
#  849|   
#  850|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def22]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:850:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
#  848|       data = realloc(data, *bytes);
#  849|   
#  850|->     return data;
#  851|   }
#  852|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def23]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_svg’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:877:12: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  875|   
#  876|       /* Header */
#  877|->     cur += sprintf(cur, svg_header, cv->width * 6, cv->height * 10,
#  878|                                       cv->width * 6, cv->height * 10);
#  879|   

Error: CPPCHECK_WARNING (CWE-401): [#def24]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:943: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  941|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  942|       *bytes = (uintptr_t)(cur - data);
#  943|->     data = realloc(data, *bytes);
#  944|   
#  945|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def25]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:945:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
#  943|       data = realloc(data, *bytes);
#  944|   
#  945|->     return data;
#  946|   }
#  947|   

Error: CPPCHECK_WARNING (CWE-401): [#def26]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:1088: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
# 1086|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
# 1087|       *bytes = (uintptr_t)(cur - data);
# 1088|->     data = realloc(data, *bytes);
# 1089|   
# 1090|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def27]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_troff’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c:1090:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/export.c: scope_hint: In function ‘export_troff’
# 1088|       data = realloc(data, *bytes);
# 1089|   
# 1090|->     return data;
# 1091|   }
# 1092|   

Error: CPPCHECK_WARNING: [#def28]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING (CWE-401): [#def29]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:170: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  168|       while(!caca_file_eof(f))
#  169|       {
#  170|->         data = realloc(data, size + 1024);
#  171|           if(!data)
#  172|           {

Error: COMPILER_WARNING (CWE-563): [#def30]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:302:14: warning[-Wunused-but-set-variable]: variable ‘version’ set but not used
#  302 |     uint16_t version, flags;
#      |              ^~~~~~~
#  300|       size_t control_size, data_size, expected_size;
#  301|       unsigned int frames, f, n, offset;
#  302|->     uint16_t version, flags;
#  303|       int32_t xmin = 0, ymin = 0, xmax = 0, ymax = 0;
#  304|   

Error: COMPILER_WARNING (CWE-563): [#def31]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:302:23: warning[-Wunused-but-set-variable]: variable ‘flags’ set but not used
#  302 |     uint16_t version, flags;
#      |                       ^~~~~
#  300|       size_t control_size, data_size, expected_size;
#  301|       unsigned int frames, f, n, offset;
#  302|->     uint16_t version, flags;
#  303|       int32_t xmin = 0, ymin = 0, xmax = 0, ymax = 0;
#  304|   

Error: CLANG_WARNING: [#def32]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:316:5: warning[deadcode.DeadStores]: Value stored to 'version' is never read
#  314|       control_size = sscanu32(buf + 4);
#  315|       data_size = sscanu32(buf + 8);
#  316|->     version = sscanu16(buf + 12);
#  317|       frames = sscanu32(buf + 14);
#  318|       flags = sscanu16(buf + 18);

Error: CLANG_WARNING: [#def33]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:318:5: warning[deadcode.DeadStores]: Value stored to 'flags' is never read
#  316|       version = sscanu16(buf + 12);
#  317|       frames = sscanu32(buf + 14);
#  318|->     flags = sscanu16(buf + 18);
#  319|   
#  320|       if(size < 4 + control_size + data_size)

Error: COMPILER_WARNING (CWE-563): [#def34]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:332:37: warning[-Wunused-but-set-variable]: variable ‘duration’ set but not used
#  332 |         unsigned int width, height, duration;
#      |                                     ^~~~~~~~
#  330|       for(expected_size = 0, f = 0; f < frames; f++)
#  331|       {
#  332|->         unsigned int width, height, duration;
#  333|           uint32_t attr;
#  334|           int x, y, handlex, handley;

Error: COMPILER_WARNING (CWE-563): [#def35]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:333:18: warning[-Wunused-but-set-variable]: variable ‘attr’ set but not used
#  333 |         uint32_t attr;
#      |                  ^~~~
#  331|       {
#  332|           unsigned int width, height, duration;
#  333|->         uint32_t attr;
#  334|           int x, y, handlex, handley;
#  335|   

Error: COMPILER_WARNING (CWE-563): [#def36]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:334:13: warning[-Wunused-but-set-variable]: variable ‘x’ set but not used
#  334 |         int x, y, handlex, handley;
#      |             ^
#  332|           unsigned int width, height, duration;
#  333|           uint32_t attr;
#  334|->         int x, y, handlex, handley;
#  335|   
#  336|           width = sscanu32(buf + 4 + 16 + f * 32);

Error: COMPILER_WARNING (CWE-563): [#def37]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c: scope_hint: In function ‘import_caca’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:334:16: warning[-Wunused-but-set-variable]: variable ‘y’ set but not used
#  334 |         int x, y, handlex, handley;
#      |                ^
#  332|           unsigned int width, height, duration;
#  333|           uint32_t attr;
#  334|->         int x, y, handlex, handley;
#  335|   
#  336|           width = sscanu32(buf + 4 + 16 + f * 32);

Error: CLANG_WARNING: [#def38]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:338:9: warning[deadcode.DeadStores]: Value stored to 'duration' is never read
#  336|           width = sscanu32(buf + 4 + 16 + f * 32);
#  337|           height = sscanu32(buf + 4 + 16 + f * 32 + 4);
#  338|->         duration = sscanu32(buf + 4 + 16 + f * 32 + 8);
#  339|           attr = sscanu32(buf + 4 + 16 + f * 32 + 12);
#  340|           x = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 16);

Error: CLANG_WARNING: [#def39]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:339:9: warning[deadcode.DeadStores]: Value stored to 'attr' is never read
#  337|           height = sscanu32(buf + 4 + 16 + f * 32 + 4);
#  338|           duration = sscanu32(buf + 4 + 16 + f * 32 + 8);
#  339|->         attr = sscanu32(buf + 4 + 16 + f * 32 + 12);
#  340|           x = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 16);
#  341|           y = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 20);

Error: CLANG_WARNING: [#def40]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:340:9: warning[deadcode.DeadStores]: Value stored to 'x' is never read
#  338|           duration = sscanu32(buf + 4 + 16 + f * 32 + 8);
#  339|           attr = sscanu32(buf + 4 + 16 + f * 32 + 12);
#  340|->         x = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 16);
#  341|           y = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 20);
#  342|           handlex = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 24);

Error: CLANG_WARNING: [#def41]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/import.c:341:9: warning[deadcode.DeadStores]: Value stored to 'y' is never read
#  339|           attr = sscanu32(buf + 4 + 16 + f * 32 + 12);
#  340|           x = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 16);
#  341|->         y = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 20);
#  342|           handlex = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 24);
#  343|           handley = (int32_t)sscanu32(buf + 4 + 16 + f * 32 + 28);

Error: CPPCHECK_WARNING: [#def42]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CLANG_WARNING: [#def43]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:83:45: warning[deadcode.DeadStores]: Although the value stored to 'height' is used in the enclosing expression, the value is never actually read from 'height'
#   81|       if (y > height)
#   82|       {
#   83|->         if (caca_set_canvas_size(cv, width, height = y) < 0)
#   84|               return -1;
#   85|       }

Error: CLANG_WARNING: [#def44]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:489:45: warning[deadcode.DeadStores]: Although the value stored to 'height' is used in the enclosing expression, the value is never actually read from 'height'
#  487|           savedattr = caca_get_attr(cv, -1, -1);
#  488|           caca_set_attr(cv, im.clearattr);
#  489|->         if (caca_set_canvas_size(cv, width, height = y))
#  490|               return -1;
#  491|           caca_set_attr(cv, savedattr);

Error: GCC_ANALYZER_WARNING (CWE-688): [#def45]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c: scope_hint: In function ‘_export_utf8’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:547:24: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  545|               if(fg != prevfg || bg != prevbg)
#  546|               {
#  547|->                 cur += sprintf(cur, "\033[0");
#  548|   
#  549|                   if(fg < 8)

Error: GCC_ANALYZER_WARNING (CWE-688): [#def46]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:571:16: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  569|               cur += sprintf(cur, "\033[0m");
#  570|   
#  571|->         cur += sprintf(cur, cr ? "\r\n" : "\n");
#  572|       }
#  573|   

Error: CPPCHECK_WARNING (CWE-401): [#def47]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:578: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  576|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  577|       *bytes = (uintptr_t)(cur - data);
#  578|->     data = realloc(data, *bytes);
#  579|   
#  580|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def48]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:580:12: warning[-Wanalyzer-malloc-leak]: leak of ‘cur’
#  578|       data = realloc(data, *bytes);
#  579|   
#  580|->     return data;
#  581|   }
#  582|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def49]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:580:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
#  578|       data = realloc(data, *bytes);
#  579|   
#  580|->     return data;
#  581|   }
#  582|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def50]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c: scope_hint: In function ‘_export_ansi’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:622:24: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  620|               if(fg != prevfg || bg != prevbg)
#  621|               {
#  622|->                 cur += sprintf(cur, "\033[0;");
#  623|   
#  624|                   if(fg < 8)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def51]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:636:20: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’
#  634|               }
#  635|   
#  636|->             *cur++ = caca_utf32_to_cp437(ch);
#  637|   
#  638|               prevfg = fg;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def52]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:648:20: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  646|           else
#  647|           {
#  648|->             cur += sprintf(cur, "\033[0m\r\n");
#  649|               prevfg = -1;
#  650|               prevbg = -1;

Error: CPPCHECK_WARNING (CWE-401): [#def53]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:658: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  656|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  657|       *bytes = (uintptr_t)(cur - data);
#  658|->     data = realloc(data, *bytes);
#  659|   
#  660|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def54]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:660:12: warning[-Wanalyzer-malloc-leak]: leak of ‘cur’
#  658|       data = realloc(data, *bytes);
#  659|   
#  660|->     return data;
#  661|   }
#  662|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def55]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c: scope_hint: In function ‘_export_irc’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:721:32: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  719|                   {
#  720|                       if(fg == 0x10)
#  721|->                         cur += sprintf(cur, "\x0f");
#  722|                       else
#  723|                       {

Error: GCC_ANALYZER_WARNING (CWE-688): [#def56]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:725:36: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  723|                       {
#  724|                           if(prevbg == 0x10)
#  725|->                             cur += sprintf(cur, "\x03%d", fg);
#  726|                           else
#  727|                               cur += sprintf(cur, "\x0f\x03%d", fg);

Error: GCC_ANALYZER_WARNING (CWE-688): [#def57]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:736:32: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  734|                   {
#  735|                       if(fg == 0x10)
#  736|->                         cur += sprintf(cur, "\x0f\x03,%d", bg);
#  737|                       else
#  738|                           cur += sprintf(cur, "\x03%d,%d", fg, bg);

Error: GCC_ANALYZER_WARNING (CWE-688): [#def58]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:738:32: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘cur’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_sprintf’ must be non-null
#  736|                           cur += sprintf(cur, "\x0f\x03,%d", bg);
#  737|                       else
#  738|->                         cur += sprintf(cur, "\x03%d,%d", fg, bg);
#  739|                   }
#  740|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def59]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:755:20: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’
#  753|           /* TODO: do the same the day we optimise whole lines above */
#  754|           if(!cv->width)
#  755|->             *cur++ = ' ';
#  756|   
#  757|           *cur++ = '\r';

Error: GCC_ANALYZER_WARNING (CWE-476): [#def60]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:757:16: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’
#  755|               *cur++ = ' ';
#  756|   
#  757|->         *cur++ = '\r';
#  758|           *cur++ = '\n';
#  759|       }

Error: CPPCHECK_WARNING (CWE-401): [#def61]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:765: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  763|             (unsigned long int)*bytes, (unsigned long int)(cur - data));
#  764|       *bytes = (uintptr_t)(cur - data);
#  765|->     data = realloc(data, *bytes);
#  766|   
#  767|       return data;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def62]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:767:12: warning[-Wanalyzer-malloc-leak]: leak of ‘cur’
#  765|       data = realloc(data, *bytes);
#  766|   
#  767|->     return data;
#  768|   }
#  769|   

Error: GCC_ANALYZER_WARNING (CWE-787): [#def63]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c: scope_hint: In function ‘ansi_parse_grcm’
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:790:31: warning[-Wanalyzer-out-of-bounds]: buffer over-read
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:790:31: note: valid subscripts for ‘ansi2caca’ are ‘[0]’ to ‘[7]’
#                                                       └─────────────────┘
#                                                                ^
#  788|               im->fg = ansi2caca[argv[j] - 30];
#  789|           else if(argv[j] >= 40 && argv[j] <= 47)
#  790|->             im->bg = ansi2caca[argv[j] - 40];
#  791|           else if(argv[j] >= 90 && argv[j] <= 97)
#  792|               im->fg = ansi2caca[argv[j] - 90] + 8;

Error: GCC_ANALYZER_WARNING (CWE-787): [#def64]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:792:31: warning[-Wanalyzer-out-of-bounds]: buffer over-read
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:792:31: note: valid subscripts for ‘ansi2caca’ are ‘[0]’ to ‘[7]’
#                                                       └─────────────────┘
#                                                                ^
#  790|               im->bg = ansi2caca[argv[j] - 40];
#  791|           else if(argv[j] >= 90 && argv[j] <= 97)
#  792|->             im->fg = ansi2caca[argv[j] - 90] + 8;
#  793|           else if(argv[j] >= 100 && argv[j] <= 107)
#  794|               im->bg = ansi2caca[argv[j] - 100] + 8;

Error: GCC_ANALYZER_WARNING (CWE-787): [#def65]
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:794:31: warning[-Wanalyzer-out-of-bounds]: buffer over-read
libcaca-0.99-build/libcaca-0.99.beta20/caca/codec/text.c:794:31: note: valid subscripts for ‘ansi2caca’ are ‘[0]’ to ‘[7]’
#                                                       └─────────────────┘
#                                                                ^
#  792|               im->fg = ansi2caca[argv[j] - 90] + 8;
#  793|           else if(argv[j] >= 100 && argv[j] <= 107)
#  794|->             im->bg = ansi2caca[argv[j] - 100] + 8;
#  795|           else switch(argv[j])
#  796|           {

Error: CPPCHECK_WARNING: [#def66]
libcaca-0.99-build/libcaca-0.99.beta20/caca/conic.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def67]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING (CWE-483): [#def68]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c: scope_hint: In function ‘rgb2hsv_default’
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:213:5: warning[-Wmisleading-indentation]: this ‘if’ clause does not guard...
#  213 |     if(min > g) min = g; if(max < g) max = g;
#      |     ^~
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:213:26: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
#  213 |     if(min > g) min = g; if(max < g) max = g;
#      |                          ^~
#  211|   
#  212|       min = r; max = r;
#  213|->     if(min > g) min = g; if(max < g) max = g;
#  214|       if(min > b) min = b; if(max < b) max = b;
#  215|   

Error: COMPILER_WARNING (CWE-483): [#def69]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:214:5: warning[-Wmisleading-indentation]: this ‘if’ clause does not guard...
#  214 |     if(min > b) min = b; if(max < b) max = b;
#      |     ^~
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:214:26: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
#  214 |     if(min > b) min = b; if(max < b) max = b;
#      |                          ^~
#  212|       min = r; max = r;
#  213|       if(min > g) min = g; if(max < g) max = g;
#  214|->     if(min > b) min = b; if(max < b) max = b;
#  215|   
#  216|       delta = max - min; /* 0 - 0xfff */

Error: COMPILER_WARNING (CWE-563): [#def70]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c: scope_hint: In function ‘caca_dither_bitmap’
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:946:25: warning[-Wunused-but-set-variable]: variable ‘pitch’ set but not used
#  946 |     int x1, y1, x2, y2, pitch, deltax, deltay, dchmax;
#      |                         ^~~~~
#  944|       uint32_t savedattr;
#  945|       int fs_length;
#  946|->     int x1, y1, x2, y2, pitch, deltax, deltay, dchmax;
#  947|   
#  948|       if(!d || !pixels)

Error: CLANG_WARNING: [#def71]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:959:5: warning[deadcode.DeadStores]: Value stored to 'pitch' is never read
#  957|       w = d->w;
#  958|       h = d->h;
#  959|->     pitch = d->pitch;
#  960|   
#  961|       deltax = x2 - x1 + 1;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def72]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c: scope_hint: In function ‘caca_dither_bitmap’
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:967:5: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘floyd_steinberg’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
#  965|       fs_length = ((int)cv->width <= x2 ? (int)cv->width : x2) + 1;
#  966|       floyd_steinberg = malloc(3 * (fs_length + 2) * sizeof(int));
#  967|->     memset(floyd_steinberg, 0, 3 * (fs_length + 2) * sizeof(int));
#  968|       fs_r = floyd_steinberg + 1;
#  969|       fs_g = fs_r + fs_length + 2;

Error: CLANG_WARNING: [#def73]
libcaca-0.99-build/libcaca-0.99.beta20/caca/dither.c:1013:21: warning[core.DivideZero]: Division by zero
# 1011|   
# 1012|               /* Normalize */
# 1013|->             rgba[0] /= dots;
# 1014|               rgba[1] /= dots;
# 1015|               rgba[2] /= dots;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def74]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/gl.c: scope_hint: In function ‘gl_compute_font’
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/gl.c:558:18: warning[-Wanalyzer-malloc-leak]: leak of ‘malloc((long unsigned int)b * 4)’
#  556|       dp->drv.p->txid = malloc(b * sizeof(int));
#  557|   
#  558|->     w = dp->drv.p->font_width <= 16 ? dp->drv.p->font_width : 16;
#  559|       h = dp->drv.p->font_height <= 16 ? dp->drv.p->font_height : 16;
#  560|   

Error: CLANG_WARNING: [#def75]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/gl.c:610:31: warning[core.NullDereference]: Dereference of null pointer
#  608|   {
#  609|   #if defined(HAVE_GETENV) && defined(GLUT_XLIB_IMPLEMENTATION)
#  610|->     if(!getenv("DISPLAY") || !*(getenv("DISPLAY")))
#  611|           return -1;
#  612|   #endif

Error: GCC_ANALYZER_WARNING (CWE-476): [#def76]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/ncurses.c: scope_hint: In function ‘ncurses_install_terminal’
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/ncurses.c:610:21: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘*dp.drv.p’
#  608|       char *term, *colorterm;
#  609|   
#  610|->     dp->drv.p->term = NULL;
#  611|   
#  612|       term = getenv("TERM");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def77]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/ncurses.c:630:25: warning[-Wanalyzer-malloc-leak]: leak of ‘strdup(term)’
#  628|           endwin();
#  629|           (void)putenv("TERM=xterm-16color");
#  630|->         dp->drv.p->term = strdup(term);
#  631|           return;
#  632|       }

Error: CPPCHECK_WARNING: [#def78]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/slang.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-476): [#def79]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/slang.c: scope_hint: In function ‘slang_init_graphics’
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/slang.c:128:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘*dp.drv.p’
#  126|   {
#  127|       dp->drv.p = malloc(sizeof(struct driver_private));
#  128|->     dp->drv.p->sigint_event = 0;
#  129|   
#  130|   #if defined(HAVE_GETENV) && defined(HAVE_PUTENV)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def80]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/slang.c: scope_hint: In function ‘slang_install_terminal’
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/slang.c:567:25: warning[-Wanalyzer-malloc-leak]: leak of ‘strdup(term)’
#  565|       {
#  566|           (void)putenv("TERM=xterm-16color");
#  567|->         dp->drv.p->term = strdup(term);
#  568|           return;
#  569|       }

Error: CPPCHECK_WARNING: [#def81]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/x11.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CLANG_WARNING: [#def82]
libcaca-0.99-build/libcaca-0.99.beta20/caca/driver/x11.c:972:31: warning[core.NullDereference]: Dereference of null pointer
#  970|   {
#  971|   #if defined HAVE_GETENV
#  972|->     if(!getenv("DISPLAY") || !*(getenv("DISPLAY")))
#  973|           return -1;
#  974|   #endif

Error: CPPCHECK_WARNING: [#def83]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING (CWE-563): [#def84]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c: scope_hint: In function ‘caca_put_figchar’
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:150:33: warning[-Wunused-but-set-variable]: variable ‘extra’ set but not used
#  150 |     int c, w, h, x, y, overlap, extra, xleft, xright;
#      |                                 ^~~~~
#  148|   {
#  149|       caca_charfont_t *ff = cv->ff;
#  150|->     int c, w, h, x, y, overlap, extra, xleft, xright;
#  151|   
#  152|       if (!ff)

Error: CLANG_WARNING: [#def85]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:193:9: warning[deadcode.DeadStores]: Value stored to 'extra' is never read
#  191|       case H_KERN:
#  192|       case H_OVERLAP:
#  193|->         extra = (ff->hmode == H_OVERLAP);
#  194|           overlap = w;
#  195|           for(y = 0; y < h; y++)

Error: CLANG_WARNING: [#def86]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:405:26: warning[unix.MallocSizeof]: Result of 'realloc' is converted to a pointer of type 'uint32_t', which is incompatible with sizeof operand type 'int'
#  403|       {
#  404|           if((ff->glyphs % 2048) == 0)
#  405|->             ff->lookup = realloc(ff->lookup,
#  406|                                      (ff->glyphs + 2048) * 2 * sizeof(int));
#  407|   

Error: CPPCHECK_WARNING (CWE-401): [#def87]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:455: error[memleakOnRealloc]: Common realloc mistake: 'data' nulled but not freed upon failure
#  453|           {
#  454|               if(i + 2048 >= size)
#  455|->                 data = realloc(data, size += 2048);
#  456|   
#  457|               caca_file_gets(f, data + i, 2048);

Error: GCC_ANALYZER_WARNING (CWE-415): [#def88]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c: scope_hint: In function ‘open_charfont’
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:455:24: warning[-Wanalyzer-double-free]: double-‘free’ of ‘data’
#  453|           {
#  454|               if(i + 2048 >= size)
#  455|->                 data = realloc(data, size += 2048);
#  456|   
#  457|               caca_file_gets(f, data + i, 2048);

Error: GCC_ANALYZER_WARNING (CWE-688): [#def89]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:458:28: warning[-Wanalyzer-null-argument]: use of NULL ‘data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_strlen’ must be non-null
#  456|   
#  457|               caca_file_gets(f, data + i, 2048);
#  458|->             i = (uintptr_t)strchr(data + i, 0) - (uintptr_t)data;
#  459|           }
#  460|       }

Error: GCC_ANALYZER_WARNING (CWE-415): [#def90]
libcaca-0.99-build/libcaca-0.99.beta20/caca/figfont.c:468:9: warning[-Wanalyzer-double-free]: double-‘free’ of ‘data’
#  466|           debug("figfont error: only %u glyphs in `%s', expected at least %u",
#  467|                           ff->glyphs, path, EXT_GLYPHS);
#  468|->         free(data);
#  469|           free(ff->lookup);
#  470|           free(ff);

Error: CPPCHECK_WARNING: [#def91]
libcaca-0.99-build/libcaca-0.99.beta20/caca/file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-476): [#def92]
libcaca-0.99-build/libcaca-0.99.beta20/caca/file.c: scope_hint: In function ‘caca_file_open’
libcaca-0.99-build/libcaca-0.99.beta20/caca/file.c:72:18: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘fp’
#   70|       caca_file_t *fp = malloc(sizeof(*fp));
#   71|   
#   72|->     fp->readonly = !!strchr(mode, 'r');
#   73|   
#   74|   #   if defined HAVE_ZLIB_H

Error: CPPCHECK_WARNING: [#def93]
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-476): [#def94]
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c: scope_hint: In function ‘unpack_glyph4’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:81:18: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘glyph’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:85:1: note: in expansion of macro ‘DECLARE_UNPACKGLYPH’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:85:1: note: in expansion of macro ‘DECLARE_UNPACKGLYPH’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:85:1: note: in expansion of macro ‘DECLARE_UNPACKGLYPH’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:85:1: note: in expansion of macro ‘DECLARE_UNPACKGLYPH’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:85:1: note: in expansion of macro ‘DECLARE_UNPACKGLYPH’
#   79|           pixel %= (1 << bpp); \
#   80|           pixel *= 0xff / ((1 << bpp) - 1); \
#   81|->         *glyph++ = pixel; \
#   82|       } \
#   83|   }

Error: GCC_ANALYZER_WARNING (CWE-476): [#def95]
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c: scope_hint: In function ‘caca_render_canvas’
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:505:30: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘glyph’
#  503|                       uint32_t p, q, t;
#  504|   
#  505|->                     p = glyph[j * g->width + i];
#  506|                       q = 0xff - p;
#  507|   

Error: GCC_ANALYZER_WARNING (CWE-122): [#def96]
libcaca-0.99-build/libcaca-0.99.beta20/caca/frame.c: scope_hint: In function ‘caca_create_frame’
libcaca-0.99-build/libcaca-0.99.beta20/caca/frame.c:160:23: warning[-Wanalyzer-out-of-bounds]: heap-based buffer over-read
#                                                       └─────────────────┘
#                                                                ^
#  158|   
#  159|       for(f = cv->framecount - 1; f > id; f--)
#  160|->         cv->frames[f] = cv->frames[f - 1];
#  161|   
#  162|       if(cv->frame >= id)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def97]
libcaca-0.99-build/libcaca-0.99.beta20/caca/frame.c: scope_hint: In function ‘_caca_load_frame_info’
libcaca-0.99-build/libcaca-0.99.beta20/caca/frame.c:259:38: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
#  257|   void _caca_load_frame_info(caca_canvas_t *cv)
#  258|   {
#  259|->     cv->width = cv->frames[cv->frame].width;
#  260|       cv->height = cv->frames[cv->frame].height;
#  261|   

Error: CPPCHECK_WARNING: [#def98]
libcaca-0.99-build/libcaca-0.99.beta20/caca/line.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING: [#def99]
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:32: included_from: Included from here.
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5773:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5771|   /* U+2028: "
" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5772|   /* U+2029: "
" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5773|-> /* U+202A: "‪" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5774|   /* U+202B: "‫" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def100]
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5774:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5772|   /* U+2029: "
" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5773|   /* U+202A: "‪" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5774|-> /* U+202B: "‫" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5776|   /* U+202D: "‭" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def101]
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5776:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5774|   /* U+202B: "‫" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5776|-> /* U+202D: "‭" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5777|   /* U+202E: "‮" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5778|   /* U+202F: " " */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def102]
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5777:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5776|   /* U+202D: "‭" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5777|-> /* U+202E: "‮" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5778|   /* U+202F: " " */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5779|   /* U+2030: "‰" */ 0,0,0,0,0,0,0,0,0,0,8,248,0,0,243,240,1,8,248,7,80,0,90,32,3,200,0,0,180,0,0,8,248,8,248,243,240,243,248,248,8,248,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def103]
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5833:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5831|   /* U+2064: "⁤" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5832|   /* U+2065: "⁥" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5833|-> /* U+2066: "⁦" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5834|   /* U+2067: "⁧" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5835|   /* U+2068: "⁨" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,

Error: COMPILER_WARNING: [#def104]
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5834:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5832|   /* U+2065: "⁥" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5833|   /* U+2066: "⁦" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5834|-> /* U+2067: "⁧" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5835|   /* U+2068: "⁨" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5836|   /* U+2069: "⁩" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,

Error: COMPILER_WARNING: [#def105]
libcaca-0.99-build/libcaca-0.99.beta20/caca/mono9.data:5835:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5833|   /* U+2066: "⁦" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5834|   /* U+2067: "⁧" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5835|-> /* U+2068: "⁨" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5836|   /* U+2069: "⁩" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,
# 5837|   /* U+206A: "" */ 0,0,0,0,255,255,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,240,0,240,15,0,15,0,255,255,240,0,0,0,0,

Error: COMPILER_WARNING: [#def106]
libcaca-0.99-build/libcaca-0.99.beta20/caca/font.c:33: included_from: Included from here.
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5773:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5771|   /* U+2028: "
" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5772|   /* U+2029: "
" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5773|-> /* U+202A: "‪" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5774|   /* U+202B: "‫" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def107]
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5774:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5772|   /* U+2029: "
" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5773|   /* U+202A: "‪" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5774|-> /* U+202B: "‫" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5776|   /* U+202D: "‭" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def108]
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5776:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5774|   /* U+202B: "‫" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5776|-> /* U+202D: "‭" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5777|   /* U+202E: "‮" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5778|   /* U+202F: " " */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def109]
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5777:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5775|   /* U+202C: "‬" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5776|   /* U+202D: "‭" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5777|-> /* U+202E: "‮" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5778|   /* U+202F: " " */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
# 5779|   /* U+2030: "‰" */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,94,228,0,0,0,227,62,0,0,0,227,62,0,3,16,94,229,2,170,16,0,2,173,64,0,1,159,112,0,0,143,178,0,0,0,180,0,0,0,0,94,228,5,238,64,227,62,14,51,224,227,62,14,51,224,94,228,5,238,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

Error: COMPILER_WARNING: [#def110]
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5833:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5831|   /* U+2064: "⁤" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5832|   /* U+2065: "⁥" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5833|-> /* U+2066: "⁦" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5834|   /* U+2067: "⁧" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5835|   /* U+2068: "⁨" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,

Error: COMPILER_WARNING: [#def111]
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5834:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5832|   /* U+2065: "⁥" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5833|   /* U+2066: "⁦" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5834|-> /* U+2067: "⁧" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5835|   /* U+2068: "⁨" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5836|   /* U+2069: "⁩" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,

Error: COMPILER_WARNING: [#def112]
libcaca-0.99-build/libcaca-0.99.beta20/caca/monobold12.data:5835:16: warning[-Wbidi-chars=]: unpaired UTF-8 bidirectional control character detected
# 5833|   /* U+2066: "⁦" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5834|   /* U+2067: "⁧" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5835|-> /* U+2068: "⁨" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5836|   /* U+2069: "⁩" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,
# 5837|   /* U+206A: "" */ 0,0,0,0,0,15,255,255,255,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,0,0,0,240,15,255,255,255,240,0,0,0,0,0,

Error: CPPCHECK_WARNING: [#def113]
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING (CWE-563): [#def114]
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c: scope_hint: In function ‘caca_blit’
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c:462:51: warning[-Wunused-but-set-variable]: variable ‘bleed_left’ set but not used
#  462 |     int i, j, starti, startj, endi, endj, stride, bleed_left, bleed_right;
#      |                                                   ^~~~~~~~~~
#  460|                 caca_canvas_t const *src, caca_canvas_t const *mask)
#  461|   {
#  462|->     int i, j, starti, startj, endi, endj, stride, bleed_left, bleed_right;
#  463|   
#  464|       if(mask && (src->width != mask->width || src->height != mask->height))

Error: CLANG_WARNING: [#def115]
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c:483:5: warning[deadcode.DeadStores]: Value stored to 'bleed_left' is never read
#  481|           return 0;
#  482|   
#  483|->     bleed_left = bleed_right = 0;
#  484|   
#  485|       for(j = startj; j < endj; j++)

Error: CLANG_WARNING: [#def116]
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c:483:18: warning[deadcode.DeadStores]: Although the value stored to 'bleed_right' is used in the enclosing expression, the value is never actually read from 'bleed_right'
#  481|           return 0;
#  482|   
#  483|->     bleed_left = bleed_right = 0;
#  484|   
#  485|       for(j = startj; j < endj; j++)

Error: CLANG_WARNING: [#def117]
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c:494:13: warning[deadcode.DeadStores]: Value stored to 'bleed_left' is never read
#  492|           {
#  493|               dst->chars[dstix - 1] = ' ';
#  494|->             bleed_left = 1;
#  495|           }
#  496|   

Error: CLANG_WARNING: [#def118]
libcaca-0.99-build/libcaca-0.99.beta20/caca/string.c:501:13: warning[deadcode.DeadStores]: Value stored to 'bleed_right' is never read
#  499|           {
#  500|               dst->chars[dstix + stride] = ' ';
#  501|->             bleed_right = 1;
#  502|           }
#  503|   

Error: CPPCHECK_WARNING: [#def119]
libcaca-0.99-build/libcaca-0.99.beta20/caca/t/simple.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def120]
libcaca-0.99-build/libcaca-0.99.beta20/caca/transform.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def121]
libcaca-0.99-build/libcaca-0.99.beta20/caca/triangle.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def122]
libcaca-0.99-build/libcaca-0.99.beta20/examples/conio-snake.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def123]
libcaca-0.99-build/libcaca-0.99.beta20/examples/conio.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING: [#def124]
libcaca-0.99-build/libcaca-0.99.beta20/examples/conio.c:594:18: warning[-Warray-parameter=]: argument 1 of type ‘int[]’ with mismatched bound
#  594 | void sorting(int n[])
#      |              ~~~~^~~
libcaca-0.99-build/libcaca-0.99.beta20/examples/conio.c:74:18: note: previously declared as ‘int[8]’
#   74 | void sorting(int n[X_BOARD]);
#      |              ~~~~^~~~~~~~~~
#  592|   }
#  593|   
#  594|-> void sorting(int n[])
#  595|   {
#  596|     int i, j, alpha;

Error: CLANG_WARNING: [#def125]
libcaca-0.99-build/libcaca-0.99.beta20/examples/demo.c:188:13: warning[deadcode.DeadStores]: Value stored to 'mouse' is never read
#  186|               }
#  187|               caca_refresh_display(dp);
#  188|->             mouse = menu = 0;
#  189|           }
#  190|           else if(demo)

Error: CLANG_WARNING: [#def126]
libcaca-0.99-build/libcaca-0.99.beta20/examples/demo.c:188:21: warning[deadcode.DeadStores]: Although the value stored to 'menu' is used in the enclosing expression, the value is never actually read from 'menu'
#  186|               }
#  187|               caca_refresh_display(dp);
#  188|->             mouse = menu = 0;
#  189|           }
#  190|           else if(demo)

Error: CLANG_WARNING: [#def127]
libcaca-0.99-build/libcaca-0.99.beta20/examples/demo0.c:170:13: warning[deadcode.DeadStores]: Value stored to 'mouse' is never read
#  168|               }
#  169|               caca_refresh();
#  170|->             mouse = menu = 0;
#  171|           }
#  172|           else if(demo)

Error: CLANG_WARNING: [#def128]
libcaca-0.99-build/libcaca-0.99.beta20/examples/demo0.c:170:21: warning[deadcode.DeadStores]: Although the value stored to 'menu' is used in the enclosing expression, the value is never actually read from 'menu'
#  168|               }
#  169|               caca_refresh();
#  170|->             mouse = menu = 0;
#  171|           }
#  172|           else if(demo)

Error: CPPCHECK_WARNING: [#def129]
libcaca-0.99-build/libcaca-0.99.beta20/examples/dithering.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def130]
libcaca-0.99-build/libcaca-0.99.beta20/examples/driver.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-688): [#def131]
libcaca-0.99-build/libcaca-0.99.beta20/examples/event.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/examples/event.c:58:5: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘events’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
#   56|   
#   57|       events = malloc(h * sizeof(caca_event_t));
#   58|->     memset(events, 0, h * sizeof(caca_event_t));
#   59|   
#   60|       for(quit = 0; quit < 4; )

Error: CPPCHECK_WARNING: [#def132]
libcaca-0.99-build/libcaca-0.99.beta20/examples/export.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def133]
libcaca-0.99-build/libcaca-0.99.beta20/examples/gamma.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def134]
libcaca-0.99-build/libcaca-0.99.beta20/examples/input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def135]
libcaca-0.99-build/libcaca-0.99.beta20/examples/mouse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def136]
libcaca-0.99-build/libcaca-0.99.beta20/examples/swallow.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-688): [#def137]
libcaca-0.99-build/libcaca-0.99.beta20/examples/swallow.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/examples/swallow.c:94:17: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memmove’ must be non-null
#   92|               {
#   93|                   total[i] -= bytes[i];
#   94|->                 memmove(buf[i], buf[i] + bytes[i], total[i]);
#   95|   
#   96|                   caca_blit(cv, (w + 2) * (i / 2) + 1,

Error: COMPILER_WARNING (CWE-252): [#def138]
libcaca-0.99-build/libcaca-0.99.beta20/examples/swallow.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/examples/swallow.c:103:17: warning[-Wunused-result]: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’
#  103 |                 fread(buf[i] + total[i], 128, 1, f[i]);
#      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  101|               {
#  102|                   buf[i] = realloc(buf[i], total[i] + 128);
#  103|->                 fread(buf[i] + total[i], 128, 1, f[i]);
#  104|                   total[i] += 128;
#  105|               }

Error: CPPCHECK_WARNING: [#def139]
libcaca-0.99-build/libcaca-0.99.beta20/examples/trifiller.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING (CWE-563): [#def140]
libcaca-0.99-build/libcaca-0.99.beta20/src/aafire.c: scope_hint: In function ‘firemain’
libcaca-0.99-build/libcaca-0.99.beta20/src/aafire.c:185:25: warning[-Wunused-but-set-variable]: variable ‘i’ set but not used
#  185 |   register unsigned int i;
#      |                         ^
#  183|   firemain (void)
#  184|   {
#  185|->   register unsigned int i;
#  186|     unsigned char *p;
#  187|   #ifndef LIBCACA

Error: CLANG_WARNING: [#def141]
libcaca-0.99-build/libcaca-0.99.beta20/src/aafire.c:190:3: warning[deadcode.DeadStores]: Value stored to 'i' is never read
#  188|     char *bitmap = aa_image (context);
#  189|   #endif
#  190|->   i = 0;
#  191|   #define END (bitmap + XSIZ * YSIZ)
#  192|     for (p = (unsigned char*)bitmap;

Error: CLANG_WARNING: [#def142]
libcaca-0.99-build/libcaca-0.99.beta20/src/aafire.c:226:23: warning[core.DivideZero]: Division by zero
#  224|          p++, i1 += 4, i2 -= 4)
#  225|       {
#  226|->       last1 = rand () % min (i1, min (i2, height));
#  227|         i = rand () % 6;
#  228|         for (; p < (unsigned char *) bitmap + XSIZ * (YSIZ + 1) && i != 0;

Error: CLANG_WARNING: [#def143]
libcaca-0.99-build/libcaca-0.99.beta20/src/aafire.c:232:32: warning[deadcode.DeadStores]: Although the value stored to 'last1' is used in the enclosing expression, the value is never actually read from 'last1'
#  230|           *p = last1, last1 += rand () % 6 - 2, *(p + XSIZ) = last1, last1 +=
#  231|             rand () % 6 - 2;
#  232|->       *(p + 2 * XSIZ) = last1, last1 += rand () % 6 - 2;
#  233|       }
#  234|     i = 0;

Error: CLANG_WARNING: [#def144]
libcaca-0.99-build/libcaca-0.99.beta20/src/aafire.c:234:3: warning[deadcode.DeadStores]: Value stored to 'i' is never read
#  232|         *(p + 2 * XSIZ) = last1, last1 += rand () % 6 - 2;
#  233|       }
#  234|->   i = 0;
#  235|     firemain ();
#  236|   #ifdef LIBCACA

Error: CPPCHECK_WARNING: [#def145]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaclock.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-688): [#def146]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaclock.c: scope_hint: In function ‘get_date’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaclock.c:59:5: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘charTime’ where non-null expected
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaclock.c:16: included_from: Included from here.
/usr/include/time.h:99:15: note: argument 1 of ‘strftime’ must be non-null
#   57|   
#   58|       time(&currtime);
#   59|->     strftime(charTime, 100,format,localtime(&currtime));
#   60|   
#   61|       return charTime;

Error: CPPCHECK_WARNING: [#def147]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING (CWE-563): [#def148]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c: scope_hint: In function ‘do_plasma’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c:408:22: warning[-Wunused-but-set-variable]: variable ‘x’ set but not used
#  408 |         unsigned int x;
#      |                      ^
#  406|       for(y = 0; y < YSIZ; y++)
#  407|       {
#  408|->         unsigned int x;
#  409|           uint8_t * tmp = pixels + y * YSIZ;
#  410|           unsigned int ty = y * TABLEX, tmax = ty + XSIZ;

Error: CLANG_WARNING: [#def149]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c:411:13: warning[deadcode.DeadStores]: Value stored to 'x' is never read
#  409|           uint8_t * tmp = pixels + y * YSIZ;
#  410|           unsigned int ty = y * TABLEX, tmax = ty + XSIZ;
#  411|->         for(x = 0; ty < tmax; ty++, tmp++)
#  412|               tmp[0] = t1[ty] + t2[ty] + t3[ty];
#  413|       }

Error: CLANG_WARNING: [#def150]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c:620:9: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull'
#  618|   
#  619|       case UPDATE:
#  620|->         memset(screen, 0, XSIZ * YSIZ);
#  621|   
#  622|           /* Set the palette */

Error: GCC_ANALYZER_WARNING (CWE-688): [#def151]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c: scope_hint: In function ‘langton’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c:716:9: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘screen’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
#  714|       case INIT:
#  715|           screen = malloc(width * height);
#  716|->         memset(screen, 0, width * height);
#  717|           break;
#  718|   

Error: CLANG_WARNING: [#def152]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacademo.c:731:29: warning[core.NullDereference]: Array access (from variable 'screen') results in a null pointer dereference
#  729|               for(a = 0; a < ANTS; a++)
#  730|               {
#  731|->                 uint8_t p = screen[ax[a] + width * ay[a]];
#  732|   
#  733|                   if(p & 0x0f)

Error: CPPCHECK_WARNING: [#def153]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacadraw.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def154]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaplay.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING (CWE-401): [#def155]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaplay.c:76: error[memleakOnRealloc]: Common realloc mistake: 'buf' nulled but not freed upon failure
#   74|           {
#   75|               ssize_t n;
#   76|->             buf = realloc(buf, total + 1);
#   77|               n = read(fd, buf + total, 1);
#   78|               if(n < 0)

Error: GCC_ANALYZER_WARNING (CWE-688): [#def156]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaplay.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaplay.c:96:13: warning[-Wanalyzer-null-argument]: use of NULL ‘buf’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memmove’ must be non-null
#   94|           {
#   95|               total -= bytes;
#   96|->             memmove(buf, buf + bytes, total);
#   97|   
#   98|               caca_blit(cv, 0, 0, app, NULL);

Error: CPPCHECK_WARNING: [#def157]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-476): [#def158]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:151:19: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘server’
#  149|       server = malloc(sizeof(struct server));
#  150|   
#  151|->     server->input = malloc(12);
#  152|       server->read = 0;
#  153|   

Error: CPPCHECK_WARNING (CWE-909): [#def159]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:161: error[uninitStructMember]: Uninitialized struct member: server.width
#  159|       memcpy(server->prefix, INIT_PREFIX, sizeof(INIT_PREFIX));
#  160|       tmp = strstr(server->prefix, "____");
#  161|->     tmp[0] = (uint8_t) (server->width & 0xff00) >> 8;
#  162|       tmp[1] = (uint8_t) server->width & 0xff;
#  163|       tmp[2] = (uint8_t) (server->height & 0xff00) >> 8;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def160]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:161:12: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘tmp’
#  159|       memcpy(server->prefix, INIT_PREFIX, sizeof(INIT_PREFIX));
#  160|       tmp = strstr(server->prefix, "____");
#  161|->     tmp[0] = (uint8_t) (server->width & 0xff00) >> 8;
#  162|       tmp[1] = (uint8_t) server->width & 0xff;
#  163|       tmp[2] = (uint8_t) (server->height & 0xff00) >> 8;

Error: CLANG_WARNING: [#def161]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:161:39: warning[core.UndefinedBinaryOperatorResult]: The left operand of '&' is a garbage value
#  159|       memcpy(server->prefix, INIT_PREFIX, sizeof(INIT_PREFIX));
#  160|       tmp = strstr(server->prefix, "____");
#  161|->     tmp[0] = (uint8_t) (server->width & 0xff00) >> 8;
#  162|       tmp[1] = (uint8_t) server->width & 0xff;
#  163|       tmp[2] = (uint8_t) (server->height & 0xff00) >> 8;

Error: CPPCHECK_WARNING (CWE-909): [#def162]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:163: error[uninitStructMember]: Uninitialized struct member: server.height
#  161|       tmp[0] = (uint8_t) (server->width & 0xff00) >> 8;
#  162|       tmp[1] = (uint8_t) server->width & 0xff;
#  163|->     tmp[2] = (uint8_t) (server->height & 0xff00) >> 8;
#  164|       tmp[3] = (uint8_t) server->height & 0xff;
#  165|   

Error: CPPCHECK_WARNING (CWE-401): [#def163]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:176: error[memleak]: Memory leak: server
#  174|       {
#  175|          perror("getaddrinfo");
#  176|->        return -1;
#  177|       }
#  178|   

Error: CPPCHECK_WARNING (CWE-401): [#def164]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:176: error[memleak]: Memory leak: server.input
#  174|       {
#  175|          perror("getaddrinfo");
#  176|->        return -1;
#  177|       }
#  178|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def165]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:181:12: warning[-Wanalyzer-fd-leak]: leak of file descriptor
#  179|       for (res = ai; res && server->sock_count < MAXSOCKS; res = res->ai_next)
#  180|       {
#  181|->         if ((fd = socket(res->ai_addr->sa_family, SOCK_STREAM, 0)) == -1)
#  182|           {
#  183|               perror("socket");

Error: CPPCHECK_WARNING (CWE-909): [#def166]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:210: error[uninitStructMember]: Uninitialized struct member: server.sock_count
#  208|           }
#  209|   
#  210|->         server->socks[server->sock_count].sockfd = fd;
#  211|           server->sock_count++;
#  212|           fprintf(stderr, "listening on ");

Error: COMPILER_WARNING (CWE-252): [#def167]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:245:13: warning[-Wunused-result]: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’
#  245 |             read(0, server->input + server->read, 12 - server->read);
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  243|           if(server->read < 12)
#  244|           {
#  245|->             read(0, server->input + server->read, 12 - server->read);
#  246|               server->read = 12;
#  247|           }

Error: COMPILER_WARNING (CWE-252): [#def168]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaserver.c:253:13: warning[-Wunused-result]: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’
#  253 |             read(0, server->input + server->read - 1, 1);
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  251|           {
#  252|               memmove(server->input, server->input + 1, server->read - 1);
#  253|->             read(0, server->input + server->read - 1, 1);
#  254|           }
#  255|   

Error: CPPCHECK_WARNING: [#def169]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING (CWE-401): [#def170]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:118: error[memleakOnRealloc]: Common realloc mistake: 'list' nulled but not freed upon failure
#  116|           /* Add argv[i] to the list */
#  117|           if(items)
#  118|->             list = realloc(list, (items + 1) * sizeof(char *));
#  119|           else
#  120|               list = malloc(sizeof(char *));

Error: GCC_ANALYZER_WARNING (CWE-476): [#def171]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:121:21: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘list’
#  119|           else
#  120|               list = malloc(sizeof(char *));
#  121|->         list[items] = argv[i];
#  122|           items++;
#  123|   

Error: CLANG_WARNING: [#def172]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:175:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  173|               case CACA_KEY_F11:
#  174|                   fullscreen = ~fullscreen;
#  175|->                 update = 1;
#  176|                   set_zoom(zoom);
#  177|                   break;

Error: CLANG_WARNING: [#def173]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:215:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  213|                                              algos[dither_algorithm * 2]);
#  214|                   new_status = STATUS_DITHERING;
#  215|->                 update = 1;
#  216|                   break;
#  217|               case 'D':

Error: CLANG_WARNING: [#def174]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:225:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  223|                                              algos[dither_algorithm * 2]);
#  224|                   new_status = STATUS_DITHERING;
#  225|->                 update = 1;
#  226|                   break;
#  227|               case '+':

Error: CLANG_WARNING: [#def175]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:228:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  226|                   break;
#  227|               case '+':
#  228|->                 update = 1;
#  229|                   set_zoom(zoom + 1);
#  230|                   break;

Error: CLANG_WARNING: [#def176]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:232:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  230|                   break;
#  231|               case '-':
#  232|->                 update = 1;
#  233|                   set_zoom(zoom - 1);
#  234|                   break;

Error: CLANG_WARNING: [#def177]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:236:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  234|                   break;
#  235|               case 'G':
#  236|->                 update = 1;
#  237|                   set_gamma(g + 1);
#  238|                   break;

Error: CLANG_WARNING: [#def178]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:240:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  238|                   break;
#  239|               case 'g':
#  240|->                 update = 1;
#  241|                   set_gamma(g - 1);
#  242|                   break;

Error: CLANG_WARNING: [#def179]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:245:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  243|               case 'x':
#  244|               case 'X':
#  245|->                 update = 1;
#  246|                   set_zoom(0);
#  247|                   set_gamma(0);

Error: CLANG_WARNING: [#def180]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:254:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  252|                   if(yfactor > 1.0) dy -= PAD_STEP / yfactor;
#  253|                   if(dy < 0.0) dy = 0.0;
#  254|->                 update = 1;
#  255|                   break;
#  256|               case 'j':

Error: CLANG_WARNING: [#def181]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:261:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  259|                   if(yfactor > 1.0) dy += PAD_STEP / yfactor;
#  260|                   if(dy > 1.0) dy = 1.0;
#  261|->                 update = 1;
#  262|                   break;
#  263|               case 'h':

Error: CLANG_WARNING: [#def182]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:268:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  266|                   if(xfactor > 1.0) dx -= PAD_STEP / xfactor;
#  267|                   if(dx < 0.0) dx = 0.0;
#  268|->                 update = 1;
#  269|                   break;
#  270|               case 'l':

Error: CLANG_WARNING: [#def183]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:275:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  273|                   if(xfactor > 1.0) dx += PAD_STEP / xfactor;
#  274|                   if(dx > 1.0) dx = 1.0;
#  275|->                 update = 1;
#  276|                   break;
#  277|               case '?':

Error: CLANG_WARNING: [#def184]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:279:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  277|               case '?':
#  278|                   new_help = !help;
#  279|->                 update = 1;
#  280|                   break;
#  281|               case 'q':

Error: CLANG_WARNING: [#def185]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:292:17: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  290|                   ww = caca_get_event_resize_width(&ev);
#  291|                   wh = caca_get_event_resize_height(&ev);
#  292|->                 update = 1;
#  293|                   set_zoom(zoom);
#  294|               }

Error: CLANG_WARNING: [#def186]
libcaca-0.99-build/libcaca-0.99.beta20/src/cacaview.c:332:13: warning[deadcode.DeadStores]: Value stored to 'update' is never read
#  330|               /* Reset image-specific runtime variables */
#  331|               dx = dy = 0.5;
#  332|->             update = 1;
#  333|               set_zoom(0);
#  334|               set_gamma(0);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def187]
libcaca-0.99-build/libcaca-0.99.beta20/src/common-image.c: scope_hint: In function ‘load_image’
libcaca-0.99-build/libcaca-0.99.beta20/src/common-image.c:52:16: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘im’
#   50|   
#   51|       imlib_context_set_image(image);
#   52|->     im->pixels = (char *)imlib_image_get_data_for_reading_only();
#   53|       im->w = imlib_image_get_width();
#   54|       im->h = imlib_image_get_height();

Error: GCC_ANALYZER_WARNING (CWE-401): [#def188]
libcaca-0.99-build/libcaca-0.99.beta20/src/common-image.c:262:5: warning[-Wanalyzer-malloc-leak]: leak of ‘load_image(argv[1])’
libcaca-0.99-build/libcaca-0.99.beta20/examples/trifiller.c: scope_hint: In function ‘main’
#  260|       free(im->pixels);
#  261|   #endif
#  262|->     caca_free_dither(im->dither);
#  263|   }
#  264|   

Error: CPPCHECK_WARNING: [#def189]
libcaca-0.99-build/libcaca-0.99.beta20/src/img2txt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: CPPCHECK_WARNING: [#def190]
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: COMPILER_WARNING (CWE-477): [#def191]
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c: scope_hint: In function ‘main’
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c:132:5: warning[-Wdeprecated-declarations]: ‘pango_ft2_font_map_create_context’ is deprecated: Use 'pango_font_map_create_context' instead
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c:29: included_from: Included from here.
/usr/include/pango-1.0/pango/pangoft2.h:128:15: note: declared here
#  130|       fm = pango_ft2_font_map_new();
#  131|       pango_ft2_font_map_set_resolution(PANGO_FT2_FONT_MAP(fm), dpi, dpi);
#  132|->     cx = pango_ft2_font_map_create_context(PANGO_FT2_FONT_MAP(fm));
#  133|   
#  134|       l = pango_layout_new(cx);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def192]
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c:243:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘gtab’
#  241|                   current_size = fullsize;
#  242|               }
#  243|->             gtab[n].unicode = i;
#  244|               bytes = caca_utf32_to_utf8(gtab[n].buf, gtab[n].unicode);
#  245|               gtab[n].buf[bytes] = '\0';

Error: GCC_ANALYZER_WARNING (CWE-688): [#def193]
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c:256:13: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘glyph_data’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
#  254|   
#  255|               /* Write bitmap as an escaped C string */
#  256|->             memset(glyph_data + current_offset, 0, current_size);
#  257|               k = 0;
#  258|               for(y = 0; y < height; y++)

Error: COMPILER_WARNING (CWE-195): [#def194]
libcaca-0.99-build/libcaca-0.99.beta20/tools/makefont.c:327:39: warning[-Wsign-compare]: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’
#  327 |                     for (int x = 0; x < gtab[n].data_width; ++x)
#      |                                       ^
#  325|                   for (int y = 0; y < height; ++y)
#  326|                   {
#  327|->                     for (int x = 0; x < gtab[n].data_width; ++x)
#  328|                       {
#  329|                           int val = glyph_data[gtab[n].data_offset + y * gtab[n].data_width + x];

Error: CPPCHECK_WARNING: [#def195]
libcaca-0.99-build/libcaca-0.99.beta20/tools/sortchars.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.

Error: GCC_ANALYZER_WARNING (CWE-688): [#def196]
libcaca-0.99-build/libcaca-0.99.beta20/tools/sortchars.c: scope_hint: In function ‘testcircle’
libcaca-0.99-build/libcaca-0.99.beta20/tools/sortchars.c:217:5: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘buf’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
#  215|       int x, y, ret;
#  216|   
#  217|->     memset(buf, 0, 256 * 256);
#  218|       memset(dst, 0, WIDTH * DX * HEIGHT * DY);
#  219|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def197]
libcaca-0.99-build/libcaca-0.99.beta20/tools/sortchars.c:218:5: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘dst’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
#  216|   
#  217|       memset(buf, 0, 256 * 256);
#  218|->     memset(dst, 0, WIDTH * DX * HEIGHT * DY);
#  219|   
#  220|       /* Fill image */

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
enabled-pluginsclang, cppcheck, gcc, shellcheck
exit-code0
hostip-172-16-1-194.us-west-2.compute.internal
mock-configfedora-41-x86_64
project-namelibcaca-0.99-0.74.beta20.fc41
store-results-to/tmp/tmpx4xf_3xx/libcaca-0.99-0.74.beta20.fc41.tar.xz
time-created2024-07-03 14:42:47
time-finished2024-07-03 14:44:53
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmpx4xf_3xx/libcaca-0.99-0.74.beta20.fc41.tar.xz' '--gcc-analyze' '/tmp/tmpx4xf_3xx/libcaca-0.99-0.74.beta20.fc41.src.rpm'
tool-versioncsmock-3.5.3-1.el9