plymouth-24.004.60-12.fc41
List of Defects
Error: GCC_ANALYZER_WARNING (CWE-476): [#def1]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c: scope_hint: In function ‘ply_boot_client_request_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c:215:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘request’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c:24: included_from: Included from here.
# 213|
# 214| request = calloc (1, sizeof(ply_boot_client_request_t));
# 215|-> request->client = client;
# 216| request->command = strdup (request_command);
# 217| if (request_argument != NULL)
Error: GCC_ANALYZER_WARNING (CWE-401): [#def2]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c: scope_hint: In function ‘ply_boot_client_process_incoming_replies’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c:324:35: warning[-Wanalyzer-malloc-leak]: leak of ‘strdup(p)’
# 322| if (*q == '\0') {
# 323| ply_array_add_pointer_element (array, strdup (p));
# 324|-> p = q + 1;
# 325| }
# 326| }
Error: CLANG_WARNING: [#def3]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c:324:35: warning[unix.Malloc]: Potential memory leak
# 322| if (*q == '\0') {
# 323| ply_array_add_pointer_element (array, strdup (p));
# 324|-> p = q + 1;
# 325| }
# 326| }
Error: GCC_ANALYZER_WARNING (CWE-688): [#def4]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c: scope_hint: In function ‘ply_boot_client_get_request_string’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c:377:33: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘strdup(*request.command)’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_strlen’ must be non-null
# 375| if (request->argument == NULL) {
# 376| request_string = strdup (request->command);
# 377|-> *request_size = strlen (request_string) + 1;
# 378| return request_string;
# 379| }
Error: COMPILER_WARNING (CWE-252): [#def5]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c: scope_hint: In function ‘ply_boot_client_get_request_string’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/ply-boot-client.c:384:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 384 | asprintf (&request_string, "%s\002%c%s", request->command,
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 385 | (char) (strlen (request->argument) + 1), request->argument);
# | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 382|
# 383| request_string = NULL;
# 384|-> asprintf (&request_string, "%s\002%c%s", request->command,
# 385| (char) (strlen (request->argument) + 1), request->argument);
# 386| *request_size = strlen (request_string) + 1;
Error: CPPCHECK_WARNING: [#def6]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def7]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘split_string’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:113:35: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘args’
# 111| for (p = command; *p != '\0'; p++) {
# 112| if (*p == delimiter) {
# 113|-> args[i++] = strndup (q, p - q);
# 114|
# 115| while (*p == delimiter) {
Error: GCC_ANALYZER_WARNING (CWE-476): [#def8]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:126:19: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘args’
# 124| }
# 125|
# 126|-> args[i++] = strndup (q, p - q);
# 127|
# 128| return args;
Error: GCC_ANALYZER_WARNING (CWE-688): [#def9]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘answer_via_command’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:167:17: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘*<unknown>’ where non-null expected
/usr/include/bits/sigstksz.h:24: included_from: Included from here.
/usr/include/signal.h:328: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:27: included_from: Included from here.
/usr/include/unistd.h:599:12: note: argument 1 of ‘execvp’ must be non-null
# 165| }
# 166|
# 167|-> execvp (args[0], args);
# 168| ply_trace ("could not run command: %m");
# 169| _exit (127);
Error: COMPILER_WARNING (CWE-252): [#def10]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_password_answer’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:275:25: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 275 | write (STDOUT_FILENO, answer, strlen (answer));
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 273| }
# 274| } else {
# 275|-> write (STDOUT_FILENO, answer, strlen (answer));
# 276| exit_status = 0;
# 277| }
Error: COMPILER_WARNING (CWE-252): [#def11]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_question_answer’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:313:25: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 313 | write (STDOUT_FILENO, answer, strlen (answer));
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 311| answer_via_command (answer_state->command, answer, NULL);
# 312| else
# 313|-> write (STDOUT_FILENO, answer, strlen (answer));
# 314| if (answer_state->pause) {
# 315| ply_boot_client_tell_daemon_to_progress_unpause (client,
Error: COMPILER_WARNING (CWE-252): [#def12]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_key_answer’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:358:17: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 358 | write (STDOUT_FILENO, answer, strlen (answer));
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 356| answer_via_command (answer_state->command, answer, NULL);
# 357| else if (answer != NULL)
# 358|-> write (STDOUT_FILENO, answer, strlen (answer));
# 359|
# 360| ply_event_loop_exit (answer_state->state->loop, 0);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def13]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_password_request’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:479:38: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘password_answer_state’
# 477|
# 478| password_answer_state = calloc (1, sizeof(password_answer_state_t));
# 479|-> password_answer_state->state = state;
# 480| password_answer_state->command = program;
# 481| password_answer_state->prompt = prompt;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def14]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_question_request’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:531:38: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘question_answer_state’
# 529|
# 530| question_answer_state = calloc (1, sizeof(question_answer_state_t));
# 531|-> question_answer_state->state = state;
# 532| question_answer_state->command = program;
# 533| question_answer_state->prompt = prompt;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def15]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_keystroke_request’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:609:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘key_answer_state’
# 607|
# 608| key_answer_state = calloc (1, sizeof(key_answer_state_t));
# 609|-> key_answer_state->state = state;
# 610| key_answer_state->keys = keys;
# 611| key_answer_state->command = program;
Error: COMPILER_WARNING (CWE-252): [#def16]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c: scope_hint: In function ‘on_system_update_request’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:870:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 870 | asprintf (&progress_string, "%d", progress);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 868| char *progress_string = NULL;
# 869|
# 870|-> asprintf (&progress_string, "%d", progress);
# 871|
# 872| ply_boot_client_system_update (state->client,
Error: GCC_ANALYZER_WARNING (CWE-476): [#def17]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-boot-splash.c: scope_hint: In function ‘ply_boot_splash_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-boot-splash.c:98:28: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘splash’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-boot-splash.c:25: included_from: Included from here.
# 96| splash = calloc (1, sizeof(ply_boot_splash_t));
# 97| splash->loop = NULL;
# 98|-> splash->theme_path = strdup (theme_path);
# 99| splash->plugin_dir = strdup (plugin_dir);
# 100| splash->module_handle = NULL;
Error: COMPILER_WARNING (CWE-252): [#def18]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-boot-splash.c: scope_hint: In function ‘ply_boot_splash_load’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-boot-splash.c:233:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 233 | asprintf (&module_path, "%s%s.so",
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 234 | splash->plugin_dir, module_name);
# | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 231| module_name = ply_key_file_get_value (key_file, "Plymouth Theme", "ModuleName");
# 232|
# 233|-> asprintf (&module_path, "%s%s.so",
# 234| splash->plugin_dir, module_name);
# 235| free (module_name);
Error: CPPCHECK_WARNING: [#def19]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-688): [#def20]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c: scope_hint: In function ‘get_terminal’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:760:13: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘device_name’ where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:39: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.h:149:9: note: in expansion of macro ‘ply_logger_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:973:9: note: in expansion of macro ‘ply_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.h:25: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.h:29: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.h:25: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:20: included_from: Included from here.
/usr/include/string.h:159:12: note: argument 1 of ‘strncmp’ must be non-null
# 758| ply_terminal_t *terminal;
# 759|
# 760|-> if (strncmp (device_name, "/dev/", strlen ("/dev/")) == 0)
# 761| full_name = strdup (device_name);
# 762| else
Error: COMPILER_WARNING (CWE-252): [#def21]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c: scope_hint: In function ‘get_terminal’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:763:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 763 | asprintf (&full_name, "/dev/%s", device_name);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 761| full_name = strdup (device_name);
# 762| else
# 763|-> asprintf (&full_name, "/dev/%s", device_name);
# 764|
# 765| if (strcmp (full_name, "/dev/tty0") == 0 ||
Error: GCC_ANALYZER_WARNING (CWE-688): [#def22]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:765:13: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘full_name’ where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.h:149:9: note: in expansion of macro ‘ply_logger_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-device-manager.c:973:9: note: in expansion of macro ‘ply_trace’
/usr/include/string.h:156:12: note: argument 1 of ‘strcmp’ must be non-null
# 763| asprintf (&full_name, "/dev/%s", device_name);
# 764|
# 765|-> if (strcmp (full_name, "/dev/tty0") == 0 ||
# 766| strcmp (full_name, "/dev/tty") == 0 ||
# 767| strcmp (full_name, ply_terminal_get_name (manager->local_console_terminal)) == 0) {
Error: GCC_ANALYZER_WARNING (CWE-457): [#def23]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c: scope_hint: In function ‘on_input’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:253:20: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘key_state’
# 251| symbol = xkb_state_key_get_one_sym (input_device->keyboard_state, keycode);
# 252|
# 253|-> if (key_state != PLY_KEY_HELD) {
# 254| updated_state = xkb_state_update_key (input_device->keyboard_state, keycode, xkb_key_direction);
# 255|
Error: COMPILER_WARNING (CWE-457): [#def24]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c: scope_hint: In function ‘on_input’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:253:20: warning[-Wmaybe-uninitialized]: ‘key_state’ may be used uninitialized
# 253 | if (key_state != PLY_KEY_HELD) {
# | ^
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:193:37: note: ‘key_state’ was declared here
# 193 | ply_key_direction_t key_state;
# | ^~~~~~~~~
# 251| symbol = xkb_state_key_get_one_sym (input_device->keyboard_state, keycode);
# 252|
# 253|-> if (key_state != PLY_KEY_HELD) {
# 254| updated_state = xkb_state_update_key (input_device->keyboard_state, keycode, xkb_key_direction);
# 255|
Error: CLANG_WARNING: [#def25]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:253:31: warning[core.UndefinedBinaryOperatorResult]: The left operand of '!=' is a garbage value
# 251| symbol = xkb_state_key_get_one_sym (input_device->keyboard_state, keycode);
# 252|
# 253|-> if (key_state != PLY_KEY_HELD) {
# 254| updated_state = xkb_state_update_key (input_device->keyboard_state, keycode, xkb_key_direction);
# 255|
Error: COMPILER_WARNING (CWE-457): [#def26]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:254:41: warning[-Wmaybe-uninitialized]: ‘xkb_key_direction’ may be used uninitialized
# 254 | updated_state = xkb_state_update_key (input_device->keyboard_state, keycode, xkb_key_direction);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:194:40: note: ‘xkb_key_direction’ was declared here
# 194 | enum xkb_key_direction xkb_key_direction;
# | ^~~~~~~~~~~~~~~~~
# 252|
# 253| if (key_state != PLY_KEY_HELD) {
# 254|-> updated_state = xkb_state_update_key (input_device->keyboard_state, keycode, xkb_key_direction);
# 255|
# 256| if ((updated_state & XKB_STATE_LEDS) != 0) {
Error: GCC_ANALYZER_WARNING (CWE-476): [#def27]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c: scope_hint: In function ‘ply_input_device_get_state’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-input-device.c:481:35: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xkb_state’
# 479| ply_xkb_keyboard_state_t *xkb_state = calloc (1, sizeof(ply_xkb_keyboard_state_t));
# 480|
# 481|-> xkb_state->mods_depressed = xkb_state_serialize_mods (input_device->keyboard_state,
# 482| XKB_STATE_DEPRESSED);
# 483| xkb_state->mods_latched = xkb_state_serialize_mods (input_device->keyboard_state,
Error: CPPCHECK_WARNING: [#def28]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def29]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c:179:17: warning[deadcode.DeadStores]: Although the value stored to 'size' is used in the enclosing expression, the value is never actually read from 'size'
# 177| size_t size;
# 178|
# 179|-> while ((size = ply_buffer_get_size (keyboard->line_buffer)) > 0) {
# 180| process_backspace (keyboard);
# 181| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def30]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c: scope_hint: In function ‘process_keyboard_input’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c:192:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘keyboard_input’
# 190| ply_list_node_t *node;
# 191|
# 192|-> if (keyboard_input[0] == KEY_ESCAPE && character_size >= 2) {
# 193| /* Escape sequence */
# 194| ply_buffer_append_bytes (keyboard->line_buffer,
Error: GCC_ANALYZER_WARNING (CWE-476): [#def31]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c:528:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘closure’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c: scope_hint: In function ‘ply_keyboard_add_backspace_handler’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c:24: included_from: Included from here.
# 526| ply_keyboard_closure_t *closure = calloc (1, sizeof(ply_keyboard_closure_t));
# 527|
# 528|-> closure->function = function;
# 529| closure->user_data = user_data;
# 530| return closure;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def32]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c: scope_hint: In function ‘handle_kmsg_message’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c:91:21: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘msgptr’
# 89| /* Messages end in \n, any following lines are machine readable. Actual multiline messages are expanded with unhexmangle_to_buffer */
# 90| msgptr = strchr (message, '\n');
# 91|-> if (*msgptr && *msgptr != '\n')
# 92| msgptr--;
# 93|
Error: COMPILER_WARNING (CWE-252): [#def33]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c: scope_hint: In function ‘handle_kmsg_message’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c:132:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 132 | asprintf (&format_begin, "\033[0;%i;%im", bold_enabled, color);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 130| break;
# 131| }
# 132|-> asprintf (&format_begin, "\033[0;%i;%im", bold_enabled, color);
# 133|
# 134| message_substr = strtok_r (message, "\n", &saveptr);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def34]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c:138:48: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘kmsg_message’
# 136| kmsg_message = calloc (1, sizeof(kmsg_message_t));
# 137|
# 138|-> kmsg_message->priority = priority;
# 139| kmsg_message->facility = facility;
# 140| kmsg_message->sequence = sequence;
Error: COMPILER_WARNING (CWE-252): [#def35]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c:143:25: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 143 | asprintf (&new_message, "%s%s%s", format_begin, message_substr, "\033[0m");
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 141| kmsg_message->timestamp = timestamp;
# 142|
# 143|-> asprintf (&new_message, "%s%s%s", format_begin, message_substr, "\033[0m");
# 144| kmsg_message->message = strndup (new_message, strlen (new_message));
# 145|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def36]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c: scope_hint: In function ‘ply_kmsg_reader_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-kmsg-reader.c:166:35: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘kmsg_reader’
# 164| {
# 165| ply_kmsg_reader_t *kmsg_reader = calloc (1, sizeof(ply_kmsg_reader_t));
# 166|-> kmsg_reader->kmsg_trigger = ply_trigger_new (NULL);
# 167| kmsg_reader->kmsg_messages = ply_list_new ();
# 168|
Error: CPPCHECK_WARNING: [#def37]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def38]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: scope_hint: In function ‘ply_pixel_buffer_set_pixel’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:164:59: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘*buffer.bytes + ((long unsigned int)y * *buffer.area.width + (long unsigned int)x) * 4’
# 162| switch (buffer->device_rotation) {
# 163| case PLY_PIXEL_BUFFER_ROTATE_UPRIGHT:
# 164|-> buffer->bytes[y * buffer->area.width + x] = pixel_value;
# 165| break;
# 166| case PLY_PIXEL_BUFFER_ROTATE_UPSIDE_DOWN:
Error: GCC_ANALYZER_WARNING (CWE-476): [#def39]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: scope_hint: In function ‘ply_pixel_buffer_push_clip_area’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:341:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘new_clip_area’
# 339| new_clip_area = malloc (sizeof(*new_clip_area));
# 340|
# 341|-> *new_clip_area = *clip_area;
# 342| ply_pixel_buffer_adjust_area_for_device_scale (buffer, new_clip_area);
# 343|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def40]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: scope_hint: In function ‘ply_pixel_buffer_new_with_device_rotation’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:381:31: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘buffer’
# 379| buffer = calloc (1, sizeof(ply_pixel_buffer_t));
# 380|
# 381|-> buffer->updated_areas = ply_region_new ();
# 382| buffer->bytes = (uint32_t *) calloc (height, width * sizeof(uint32_t));
# 383| buffer->area.width = width;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def41]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: scope_hint: In function ‘ply_pixel_buffer_resize’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:991:46: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ply_pixel_buffer_get_argb32_data(ply_pixel_buffer_new((long unsigned int)width, (long unsigned int)height))’
# 989| for (x = 0; x < width; x++) {
# 990| old_x = x * scale_x;
# 991|-> bytes[x + y * width] =
# 992| ply_pixel_buffer_interpolate (old_buffer, old_x, old_y);
# 993| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def42]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: scope_hint: In function ‘ply_pixel_buffer_rotate’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:1033:54: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ply_pixel_buffer_get_argb32_data(ply_pixel_buffer_new((long unsigned int)width, (long unsigned int)height))’
# 1031| for (x = 0; x < width; x++) {
# 1032| if (old_x < 0 || old_x > width || old_y < 0 || old_y > height)
# 1033|-> bytes[x + y * width] = 0;
# 1034| else
# 1035| bytes[x + y * width] =
Error: GCC_ANALYZER_WARNING (CWE-476): [#def43]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:1035:54: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ply_pixel_buffer_get_argb32_data(ply_pixel_buffer_new((long unsigned int)width, (long unsigned int)height)) + (long unsigned int)(y * width + x) * 4’
# 1033| bytes[x + y * width] = 0;
# 1034| else
# 1035|-> bytes[x + y * width] =
# 1036| ply_pixel_buffer_interpolate (old_buffer, old_x, old_y);
# 1037| old_x += step_x;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def44]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c: scope_hint: In function ‘ply_pixel_buffer_tile’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-buffer.c:1067:46: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ply_pixel_buffer_get_argb32_data(ply_pixel_buffer_new((long unsigned int)width, (long unsigned int)height)) + (long unsigned int)(y * width + x) * 4’
# 1065| for (x = 0; x < width; x++) {
# 1066| old_x = x % old_width;
# 1067|-> bytes[x + y * width] = old_bytes[old_x + old_y * old_width];
# 1068| }
# 1069| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def45]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-display.c: scope_hint: In function ‘ply_pixel_display_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-display.c:71:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘display’
# 69| display = calloc (1, sizeof(ply_pixel_display_t));
# 70|
# 71|-> display->loop = ply_event_loop_get_default ();
# 72| display->renderer = renderer;
# 73| display->head = head;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def46]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-renderer.c: scope_hint: In function ‘ply_renderer_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-renderer.c:74:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘renderer’
# 72| renderer = calloc (1, sizeof(struct _ply_renderer));
# 73|
# 74|-> renderer->type = renderer_type;
# 75|
# 76| if (device_name != NULL)
Error: CLANG_WARNING: [#def47]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-rich-text.c:72:9: warning[deadcode.DeadStores]: Value stored to 'characters' is never read
# 70| return;
# 71|
# 72|-> characters = ply_rich_text_get_characters (rich_text);
# 73| characters = (ply_rich_text_character_t **) ply_array_get_pointer_elements (rich_text->characters);
# 74| for (size_t i = 0; characters[i] != NULL; i++) {
Error: CLANG_WARNING: [#def48]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-rich-text.c:119:9: warning[deadcode.DeadStores]: Value stored to 'characters' is never read
# 117| return;
# 118|
# 119|-> characters = ply_rich_text_get_characters (rich_text);
# 120| characters = (ply_rich_text_character_t **) ply_array_get_pointer_elements (rich_text->characters);
# 121| for (size_t i = 0; characters[i] != NULL; i++) {
Error: GCC_ANALYZER_WARNING (CWE-476): [#def49]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-rich-text.c: scope_hint: In function ‘ply_rich_text_character_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-rich-text.c:160:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘character’
# 158| ply_rich_text_character_t *character = calloc (1, sizeof(ply_rich_text_character_t));
# 159| character->bytes = NULL;
# 160|-> character->length = 0;
# 161|
# 162| return character;
Error: GCC_ANALYZER_WARNING (CWE-401): [#def50]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-rich-text.c: scope_hint: In function ‘ply_rich_text_set_character’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-rich-text.c:267:27: warning[-Wanalyzer-malloc-leak]: leak of ‘*character.bytes’
# 265| characters[character_index] = character;
# 266| character->bytes = strdup (character_string);
# 267|-> character->length = length;
# 268| character->style = style;
# 269| }
Error: CPPCHECK_WARNING: [#def51]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def52]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c:1162:25: warning[deadcode.DeadStores]: Value stored to 'break_string' is never read
# 1160|
# 1161| if (break_string == PLY_TERMINAL_EMULATOR_BREAK_STRING && terminal_emulator->state == PLY_TERMINAL_EMULATOR_TERMINAL_STATE_UNESCAPED) {
# 1162|-> break_string = PLY_TERMINAL_EMULATOR_BREAK_STRING_NONE;
# 1163| break;
# 1164| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def53]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c: scope_hint: In function ‘ply_terminal_emulator_parse_substring’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c:1245:73: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘command_object’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c:26: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c:25: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c: scope_hint: In function ‘ply_terminal_emulator_parse_substring’
# 1243| } else if (iscntrl (*input_bytes) && *input_bytes != '\e') {
# 1244| terminal_emulator->staged_command = ply_terminal_emulator_command_new ();
# 1245|-> terminal_emulator->staged_command->code = *input_bytes;
# 1246| terminal_emulator->staged_command->type = PLY_TERMINAL_EMULATOR_COMMAND_TYPE_CONTROL_CHARACTER;
# 1247| ply_list_append_data (terminal_emulator->pending_commands, terminal_emulator->staged_command);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def54]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c:1285:54: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘command_object’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal-emulator.c: scope_hint: In function ‘ply_terminal_emulator_parse_substring’
# 1283| } else if (iscntrl (*input_bytes) && *input_bytes != '\e') {
# 1284| ply_terminal_emulator_command_t *nested_command = ply_terminal_emulator_command_new ();
# 1285|-> nested_command->code = *input_bytes;
# 1286| nested_command->type = PLY_TERMINAL_EMULATOR_COMMAND_TYPE_CONTROL_CHARACTER;
# 1287| ply_list_append_data (terminal_emulator->pending_commands, nested_command);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def55]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c: scope_hint: In function ‘ply_terminal_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c:130:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘terminal’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c:24: included_from: Included from here.
# 128| terminal = calloc (1, sizeof(ply_terminal_t));
# 129|
# 130|-> terminal->loop = ply_event_loop_get_default ();
# 131| terminal->vt_change_closures = ply_list_new ();
# 132| terminal->input_closures = ply_list_new ();
Error: COMPILER_WARNING (CWE-252): [#def56]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c: scope_hint: In function ‘ply_terminal_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c:137:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 137 | asprintf (&terminal->name, "/dev/%s", device_name);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 135| terminal->name = strdup (device_name);
# 136| else
# 137|-> asprintf (&terminal->name, "/dev/%s", device_name);
# 138|
# 139| terminal->fd = -1;
Error: COMPILER_WARNING (CWE-252): [#def57]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c: scope_hint: In function ‘ply_terminal_write’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c:365:9: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 365 | write (terminal->fd, string, size);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 363| va_end (args);
# 364|
# 365|-> write (terminal->fd, string, size);
# 366| free (string);
# 367| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def58]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c: scope_hint: In function ‘ply_terminal_watch_for_active_vt_change’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c:1031:26: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘closure’
# 1029|
# 1030| closure = calloc (1, sizeof(*closure));
# 1031|-> closure->handler = active_vt_changed_handler;
# 1032| closure->user_data = user_data;
# 1033|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def59]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c: scope_hint: In function ‘ply_terminal_watch_for_input’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-terminal.c:1073:26: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘closure’
# 1071|
# 1072| closure = calloc (1, sizeof(*closure));
# 1073|-> closure->handler = input_handler;
# 1074| closure->user_data = user_data;
# 1075|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def60]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-display.c: scope_hint: In function ‘ply_text_display_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-display.c:113:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘display’
# 111|
# 112| display->loop = NULL;
# 113|-> display->terminal = terminal;
# 114|
# 115| return display;
Error: COMPILER_WARNING (CWE-252): [#def61]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-display.c: scope_hint: In function ‘ply_text_display_write’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-display.c:246:9: warning[-Wunused-result]: ignoring return value of ‘vasprintf’ declared with attribute ‘warn_unused_result’
# 246 | vasprintf (&string, format, args);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 244| string = NULL;
# 245| va_start (args, format);
# 246|-> vasprintf (&string, format, args);
# 247| va_end (args);
# 248|
Error: COMPILER_WARNING (CWE-252): [#def62]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-display.c:249:9: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 249 | write (fd, string, strlen (string));
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 247| va_end (args);
# 248|
# 249|-> write (fd, string, strlen (string));
# 250| free (string);
# 251| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def63]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c: scope_hint: In function ‘ply_text_progress_bar_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c:81:30: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘progress_bar’
# 79|
# 80| progress_bar->row = 0;
# 81|-> progress_bar->column = 0;
# 82| progress_bar->number_of_columns = 0;
# 83| progress_bar->number_of_rows = 0;
Error: COMPILER_WARNING (CWE-252): [#def64]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c: scope_hint: In function ‘get_os_string’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c:116:9: warning[-Wunused-result]: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’
# 116 | read (fd, buf, sbuf.st_size);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 114|
# 115| buf = calloc (sbuf.st_size + 1, sizeof(char));
# 116|-> read (fd, buf, sbuf.st_size);
# 117| close (fd);
# 118|
Error: COMPILER_WARNING (CWE-252): [#def65]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c:145:25: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 145 | asprintf (&os_string, " %s", pos);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 143| *pos2 = '\0';
# 144| }
# 145|-> asprintf (&os_string, " %s", pos);
# 146| }
# 147| goto out;
Error: GCC_ANALYZER_WARNING (CWE-688): [#def66]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c: scope_hint: In function ‘get_os_string’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c:150:15: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘buf’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_strstr’ must be non-null
# 148| }
# 149|
# 150|-> pos = strstr (buf, " release ");
# 151|
# 152| if (pos == NULL)
Error: COMPILER_WARNING (CWE-252): [#def67]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-progress-bar.c:164:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 164 | asprintf (&os_string, " %s %s", buf, pos);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 162|
# 163| *pos2 = '\0';
# 164|-> asprintf (&os_string, " %s %s", buf, pos);
# 165|
# 166| out:
Error: GCC_ANALYZER_WARNING (CWE-476): [#def68]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-step-bar.c: scope_hint: In function ‘ply_text_step_bar_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-text-step-bar.c:51:26: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘step_bar’
# 49|
# 50| step_bar->row = 0;
# 51|-> step_bar->column = 0;
# 52| step_bar->number_of_columns = 0;
# 53| step_bar->number_of_rows = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def69]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-animation.c: scope_hint: In function ‘ply_animation_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-animation.c:88:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘animation’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-animation.c:23: included_from: Included from here.
# 86| animation = calloc (1, sizeof(ply_animation_t));
# 87|
# 88|-> animation->frames = ply_array_new (PLY_ARRAY_ELEMENT_TYPE_POINTER);
# 89| animation->frames_prefix = strdup (frames_prefix);
# 90| animation->image_dir = strdup (image_dir);
Error: COMPILER_WARNING (CWE-252): [#def70]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-animation.c: scope_hint: In function ‘ply_animation_add_frames’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-animation.c:249:25: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 249 | asprintf (&filename, "%s/%s", animation->image_dir, entries[i]->d_name);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 247|
# 248| filename = NULL;
# 249|-> asprintf (&filename, "%s/%s", animation->image_dir, entries[i]->d_name);
# 250|
# 251| if (!ply_animation_add_frame (animation, filename))
Error: COMPILER_WARNING (CWE-252): [#def71]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-capslock-icon.c: scope_hint: In function ‘ply_capslock_icon_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-capslock-icon.c:65:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 65 | asprintf (&capslock_icon->image_name, "%s/capslock.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 63| capslock_icon = calloc (1, sizeof(ply_capslock_icon_t));
# 64|
# 65|-> asprintf (&capslock_icon->image_name, "%s/capslock.png", image_dir);
# 66| capslock_icon->is_hidden = true;
# 67|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def72]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-capslock-icon.c: scope_hint: In function ‘ply_capslock_icon_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-capslock-icon.c:66:34: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘capslock_icon’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-capslock-icon.c:23: included_from: Included from here.
# 64|
# 65| asprintf (&capslock_icon->image_name, "%s/capslock.png", image_dir);
# 66|-> capslock_icon->is_hidden = true;
# 67|
# 68| return capslock_icon;
Error: CPPCHECK_WARNING: [#def73]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-console-viewer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def74]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-console-viewer.c: scope_hint: In function ‘ply_console_viewer_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-console-viewer.c:105:40: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘console_viewer’
# 103| console_viewer = calloc (1, sizeof(struct _ply_console_viewer));
# 104|
# 105|-> console_viewer->message_labels = ply_list_new ();
# 106| console_viewer->is_hidden = true;
# 107|
Error: COMPILER_WARNING (CWE-252): [#def75]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-entry.c: scope_hint: In function ‘ply_entry_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-entry.c:87:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 87 | asprintf (&image_path, "%s/entry.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 85|
# 86| image_path = NULL;
# 87|-> asprintf (&image_path, "%s/entry.png", image_dir);
# 88| entry->text_field_image = ply_image_new (image_path);
# 89| free (image_path);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def76]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-entry.c: scope_hint: In function ‘ply_entry_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-entry.c:88:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘entry’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-entry.c:23: included_from: Included from here.
# 86| image_path = NULL;
# 87| asprintf (&image_path, "%s/entry.png", image_dir);
# 88|-> entry->text_field_image = ply_image_new (image_path);
# 89| free (image_path);
# 90|
Error: COMPILER_WARNING (CWE-252): [#def77]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-entry.c:92:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 92 | asprintf (&image_path, "%s/bullet.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 90|
# 91| image_path = NULL;
# 92|-> asprintf (&image_path, "%s/bullet.png", image_dir);
# 93| entry->bullet_image = ply_image_new (image_path);
# 94| free (image_path);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def78]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-image.c: scope_hint: In function ‘ply_image_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-image.c:91:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘image’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-image.c:31: included_from: Included from here.
# 89| image = calloc (1, sizeof(ply_image_t));
# 90|
# 91|-> image->filename = strdup (filename);
# 92| image->buffer = NULL;
# 93|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def79]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-image.c: scope_hint: In function ‘ply_image_load_png’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-image.c:203:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘rows’
/usr/include/libpng16/pngconf.h:51: included_from: Included from here.
/usr/include/libpng16/png.h:335: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-image.c:45: included_from: Included from here.
# 201|
# 202| for (row = 0; row < height; row++) {
# 203|-> rows[row] = (png_byte *) &bytes[row * width];
# 204| }
# 205|
Error: CPPCHECK_WARNING: [#def80]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-688): [#def81]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:108:21: warning[-Wanalyzer-null-argument]: use of NULL ‘icon_text’ where non-null expected
/usr/include/string.h:156:12: note: argument 2 of ‘strcmp’ must be non-null
# 106| }
# 107|
# 108|-> if (strcmp (ply_keymap_metadata[i].name, icon_text) == 0) {
# 109| keymap_icon->keymap_name = strdup (icon_text);
# 110| keymap_icon->keymap_offset = ply_keymap_metadata[i].offset;
Error: GCC_ANALYZER_WARNING (CWE-688): [#def82]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c: scope_hint: In function ‘ply_keymap_icon_fill_keymap_info’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:108:21: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘icon_text’ where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.h:25: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-renderer.h:28: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-pixel-display.h:31: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.h:29: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:27: included_from: Included from here.
/usr/include/string.h:156:12: note: argument 2 of ‘strcmp’ must be non-null
# 106| }
# 107|
# 108|-> if (strcmp (ply_keymap_metadata[i].name, icon_text) == 0) {
# 109| keymap_icon->keymap_name = strdup (icon_text);
# 110| keymap_icon->keymap_offset = ply_keymap_metadata[i].offset;
Error: CLANG_WARNING: [#def83]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:108:21: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull'
# 106| }
# 107|
# 108|-> if (strcmp (ply_keymap_metadata[i].name, icon_text) == 0) {
# 109| keymap_icon->keymap_name = strdup (icon_text);
# 110| keymap_icon->keymap_offset = ply_keymap_metadata[i].offset;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def84]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c: scope_hint: In function ‘ply_keymap_icon_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:130:30: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘keymap_icon’
# 128|
# 129| keymap_icon = calloc (1, sizeof(ply_keymap_icon_t));
# 130|-> keymap_icon->display = display;
# 131| keymap_icon->image_dir = strdup (image_dir);
# 132| keymap_icon->is_hidden = true;
Error: COMPILER_WARNING (CWE-252): [#def85]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c: scope_hint: In function ‘ply_keymap_icon_load’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:167:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 167 | asprintf (&filename, "%s/keyboard.png", keymap_icon->image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 165| return true;
# 166|
# 167|-> asprintf (&filename, "%s/keyboard.png", keymap_icon->image_dir);
# 168| icon_image = ply_image_new (filename);
# 169| success = ply_image_load (icon_image);
Error: COMPILER_WARNING (CWE-252): [#def86]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:174:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 174 | asprintf (&filename, "%s/keymap-render.png", keymap_icon->image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 172|
# 173| if (success) {
# 174|-> asprintf (&filename, "%s/keymap-render.png", keymap_icon->image_dir);
# 175| keymap_image = ply_image_new (filename);
# 176| success = ply_image_load (keymap_image);
Error: CLANG_WARNING: [#def87]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-keymap-icon.c:190:17: warning[deadcode.DeadStores]: Value stored to 'label_width' is never read
# 188| if (keymap_icon->has_prerendered_text) {
# 189| keymap_icon->keymap_buffer = ply_image_convert_to_pixel_buffer (keymap_image);
# 190|-> label_width = SPACING + ply_pixel_buffer_get_width (keymap_icon->keymap_buffer);
# 191| keymap_icon->width = ply_pixel_buffer_get_width (keymap_icon->icon_buffer) + SPACING + keymap_icon->keymap_width;
# 192| } else {
Error: GCC_ANALYZER_WARNING (CWE-476): [#def88]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-label.c: scope_hint: In function ‘ply_label_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-label.c:73:20: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘label’
# 71|
# 72| label = calloc (1, sizeof(struct _ply_label));
# 73|-> label->red = 1;
# 74| label->green = 1;
# 75| label->blue = 1;
Error: CPPCHECK_WARNING: [#def89]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-animation.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def90]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-animation.c: scope_hint: In function ‘ply_progress_animation_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-animation.c:86:36: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘progress_animation’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-animation.c:24: included_from: Included from here.
# 84| progress_animation = calloc (1, sizeof(ply_progress_animation_t));
# 85|
# 86|-> progress_animation->frames = ply_array_new (PLY_ARRAY_ELEMENT_TYPE_POINTER);
# 87| progress_animation->frames_prefix = strdup (frames_prefix);
# 88| progress_animation->image_dir = strdup (image_dir);
Error: COMPILER_WARNING (CWE-252): [#def91]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-animation.c: scope_hint: In function ‘ply_progress_animation_add_frames’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-animation.c:358:25: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 358 | asprintf (&filename, "%s/%s", progress_animation->image_dir, entries[i]->d_name);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 356|
# 357| filename = NULL;
# 358|-> asprintf (&filename, "%s/%s", progress_animation->image_dir, entries[i]->d_name);
# 359|
# 360| r = ply_progress_animation_add_frame (progress_animation, filename);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def92]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-bar.c: scope_hint: In function ‘ply_progress_bar_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-progress-bar.c:72:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘progress_bar’
# 70| progress_bar = calloc (1, sizeof(ply_progress_bar_t));
# 71|
# 72|-> progress_bar->is_hidden = true;
# 73| progress_bar->fg_color = 0xffffffff; /* Solid white */
# 74| progress_bar->bg_color = 0x01000000; /* Transparent */
Error: GCC_ANALYZER_WARNING (CWE-476): [#def93]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-throbber.c: scope_hint: In function ‘ply_throbber_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-throbber.c:94:26: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘throbber’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-throbber.c:23: included_from: Included from here.
# 92| throbber = calloc (1, sizeof(ply_throbber_t));
# 93|
# 94|-> throbber->frames = ply_array_new (PLY_ARRAY_ELEMENT_TYPE_POINTER);
# 95| throbber->frames_prefix = strdup (frames_prefix);
# 96| throbber->image_dir = strdup (image_dir);
Error: COMPILER_WARNING (CWE-252): [#def94]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-throbber.c: scope_hint: In function ‘ply_throbber_add_frames’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-graphics/ply-throbber.c:260:25: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 260 | asprintf (&filename, "%s/%s", throbber->image_dir, entries[i]->d_name);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 258|
# 259| filename = NULL;
# 260|-> asprintf (&filename, "%s/%s", throbber->image_dir, entries[i]->d_name);
# 261|
# 262| if (!ply_throbber_add_frame (throbber, filename))
Error: GCC_ANALYZER_WARNING (CWE-476): [#def95]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-array.c: scope_hint: In function ‘ply_array_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-array.c:47:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘array’
# 45| array = calloc (1, sizeof(ply_array_t));
# 46|
# 47|-> array->buffer = ply_buffer_new ();
# 48| array->element_type = element_type;
# 49|
Error: GCC_ANALYZER_WARNING (CWE-688): [#def96]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.c: scope_hint: In function ‘ply_buffer_remove_bytes’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.c:80:17: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.c:24: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.c:38: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.h:31:21: note: in definition of macro ‘MIN’
<built-in>: note: argument 1 of ‘__builtin_memmove’ must be non-null
# 78| buffer->size = 0;
# 79| } else {
# 80|-> memmove (buffer->data, buffer->data + bytes_to_remove,
# 81| buffer->size - bytes_to_remove);
# 82| buffer->size -= bytes_to_remove;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def97]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.c:84:36: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.h:31:21: note: in definition of macro ‘MIN’
# 82| buffer->size -= bytes_to_remove;
# 83| }
# 84|-> buffer->data[buffer->size] = '\0';
# 85| }
# 86|
Error: COMPILER_WARNING (CWE-563): [#def98]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.h:29: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c:22: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c: scope_hint: In function ‘process_backspace’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-buffer.h:60:20: warning[-Wunused-value]: value computed is not used
# 60 | !_ran && (*bytes = (char *) ply_buffer_get_bytes (buffer), \
# | ^~
plymouth-24.004.60-build/plymouth-24.004.60/src/libply-splash-core/ply-keyboard.c:161:9: note: in expansion of macro ‘ply_buffer_borrow_bytes’
# 161 | ply_buffer_borrow_bytes (keyboard->line_buffer, &bytes, &size, &capacity) {
# | ^~~~~~~~~~~~~~~~~~~~~~~
# 58| #define ply_buffer_borrow_bytes(buffer, bytes, size, capacity) \
# 59| for (bool _ran = false; \
# 60|-> !_ran && (*bytes = (char *) ply_buffer_get_bytes (buffer), \
# 61| *size = ply_buffer_get_size (buffer), \
# 62| *capacity = ply_buffer_get_capacity (buffer)), \
Error: GCC_ANALYZER_WARNING (CWE-401): [#def99]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-command-parser.c: scope_hint: In function ‘ply_command_parser_get_options_for_command’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-command-parser.c:572:31: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-command-parser.c:24: included_from: Included from here.
# 570| void *option_result;
# 571|
# 572|-> option_result = va_arg (args, void *);
# 573|
# 574| ply_command_parser_get_option_for_command (parser,
Error: GCC_ANALYZER_WARNING (CWE-688): [#def100]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-command-parser.c: scope_hint: In function ‘ply_command_read_option’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-command-parser.c:803:28: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘option_name’ where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-command-parser.c: scope_hint: In function ‘ply_command_read_option’
<built-in>: note: argument 1 of ‘__builtin_strchr’ must be non-null
# 801|
# 802| option_name = strdup (argument + strlen ("--"));
# 803|-> option_separator = strchr (option_name, '=');
# 804|
# 805| if (option_separator != NULL) {
Error: CPPCHECK_WARNING: [#def101]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-event-loop.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def102]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-event-loop.c:474:37: warning[unix.Malloc]: Use of memory after it is freed
# 472| ply_list_remove_data (source->destinations, destination);
# 473| ply_event_source_drop_reference (source);
# 474|-> assert (ply_list_find_node (source->destinations, destination) == NULL);
# 475| ply_event_loop_update_source_event_mask (loop, source);
# 476| }
Error: CLANG_WARNING: [#def103]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-event-loop.c:789:34: warning[unix.Malloc]: Use of memory after it is freed
# 787| ply_event_destination_free (destination);
# 788|
# 789|-> if (ply_list_get_length (source->destinations) == 0) {
# 790| ply_trace ("no more destinations remaing for fd %d, removing source", source->fd);
# 791| ply_event_loop_remove_source (loop, source);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def104]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-hashtable.c: scope_hint: In function ‘ply_hashtable_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-hashtable.c:93:37: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘hashtable’
# 91|
# 92| hashtable = malloc (sizeof(ply_hashtable_t));
# 93|-> hashtable->total_node_count = 0;
# 94| hashtable->dirty_node_count = 0;
# 95| hashtable->live_node_count = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def105]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c: scope_hint: In function ‘ply_key_file_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c:110:28: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘key_file’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c:26: included_from: Included from here.
# 108| key_file = calloc (1, sizeof(ply_key_file_t));
# 109|
# 110|-> key_file->filename = strdup (filename);
# 111| key_file->fp = NULL;
# 112| key_file->groups = ply_hashtable_new (ply_hashtable_string_hash, ply_hashtable_string_compare);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def106]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c: scope_hint: In function ‘ply_key_file_load_group’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c:171:21: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘group’
# 169|
# 170| group = calloc (1, sizeof(ply_key_file_group_t));
# 171|-> group->name = strdup (group_name);
# 172| group->entries = ply_hashtable_new (ply_hashtable_string_hash, ply_hashtable_string_compare);
# 173|
Error: COMPILER_WARNING (CWE-252): [#def107]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c: scope_hint: In function ‘ply_key_file_load_group’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c:196:25: warning[-Wunused-result]: ignoring return value of ‘getline’ declared with attribute ‘warn_unused_result’
# 196 | getline (&line_to_toss, &number_of_bytes,
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 197 | key_file->fp);
# | ~~~~~~~~~~~~~
# 194| number_of_bytes = 0;
# 195|
# 196|-> getline (&line_to_toss, &number_of_bytes,
# 197| key_file->fp);
# 198| free (line_to_toss);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def108]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c:218:28: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘entry’
# 216| entry = calloc (1, sizeof(ply_key_file_entry_t));
# 217|
# 218|-> entry->key = key;
# 219| entry->value = value;
# 220|
Error: COMPILER_WARNING (CWE-252): [#def109]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c: scope_hint: In function ‘ply_key_file_load_groups’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-key-file.c:248:25: warning[-Wunused-result]: ignoring return value of ‘getline’ declared with attribute ‘warn_unused_result’
# 248 | getline (&line_to_toss, &number_of_bytes,
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 249 | key_file->fp);
# | ~~~~~~~~~~~~~
# 246| number_of_bytes = 0;
# 247|
# 248|-> getline (&line_to_toss, &number_of_bytes,
# 249| key_file->fp);
# 250| free (line_to_toss);
Error: COMPILER_WARNING (CWE-252): [#def110]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c: scope_hint: In function ‘ply_logger_write_exception’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c:113:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 113 | asprintf (&message,
# | ^~~~~~~~~~~~~~~~~~~
# 114 | "[couldn't write a log entry: %s]\n%n",
# | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 115 | string, &number_of_bytes);
# | ~~~~~~~~~~~~~~~~~~~~~~~~~
# 111|
# 112| message = NULL;
# 113|-> asprintf (&message,
# 114| "[couldn't write a log entry: %s]\n%n",
# 115| string, &number_of_bytes);
Error: GCC_ANALYZER_WARNING (CWE-688): [#def111]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c: scope_hint: In function ‘ply_logger_buffer’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c:216:9: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c:24: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c:39: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.h:31:21: note: in definition of macro ‘MIN’
<built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null
# 214| assert (logger->buffer_size + length < logger->buffer_capacity);
# 215|
# 216|-> memcpy (logger->buffer + logger->buffer_size,
# 217| string, length);
# 218|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def112]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c: scope_hint: In function ‘ply_logger_add_filter’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.c:563:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘filter’
# 561| filter = calloc (1, sizeof(ply_logger_filter_t));
# 562|
# 563|-> filter->handler = filter_handler;
# 564| filter->user_data = user_data;
# 565|
Error: GCC_ANALYZER_WARNING (CWE-401): [#def113]
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:37: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.h:91:28: warning[-Wanalyzer-malloc-leak]: leak of ‘split_string(command, 32)’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.h:149:9: note: in expansion of macro ‘ply_logger_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:168:17: note: in expansion of macro ‘ply_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.h:149:9: note: in expansion of macro ‘ply_logger_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/client/plymouth.c:168:17: note: in expansion of macro ‘ply_trace’
# 89| { \
# 90| int _old_errno; \
# 91|-> _old_errno = errno; \
# 92| if (ply_logger_is_tracing_enabled (logger)) \
# 93| { \
Error: GCC_ANALYZER_WARNING (CWE-476): [#def114]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c: scope_hint: In function ‘ply_progress_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c:79:30: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘progress’
# 77| ply_progress_t *progress = calloc (1, sizeof(ply_progress_t));
# 78|
# 79|-> progress->start_time = ply_get_timestamp ();
# 80| progress->pause_time = 0;
# 81| progress->scalar = 1.0 / DEFAULT_BOOT_DURATION;
Error: CPPCHECK_WARNING (CWE-401): [#def115]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c:191: error[memleakOnRealloc]: Common realloc mistake: 'string' nulled but not freed upon failure
# 189| if (i >= string_size) {
# 190| string_size *= 2;
# 191|-> string = realloc (string, sizeof(char) * string_size);
# 192| }
# 193| items_matched = fscanf (fp, "%c", &string[i]);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def116]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c: scope_hint: In function ‘ply_progress_load_cache’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c:201:31: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘message’
# 199| }
# 200| ply_progress_message_t *message = malloc (sizeof(ply_progress_message_t));
# 201|-> message->time = time;
# 202| message->string = string;
# 203| ply_list_append_data (progress->previous_message_list, message);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def117]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c: scope_hint: In function ‘ply_progress_status_update’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-progress.c:322:31: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘message’
# 320| }
# 321| message = malloc (sizeof(ply_progress_message_t));
# 322|-> message->time = ply_progress_get_time (progress);
# 323| message->string = strdup (status);
# 324| message->disabled = false;
Error: CPPCHECK_WARNING: [#def118]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-rectangle.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def119]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-region.c: scope_hint: In function ‘copy_rectangle’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-region.c:86:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘new_rectangle’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-region.c:28: included_from: Included from here.
# 84|
# 85| new_rectangle = malloc (sizeof(*rectangle));
# 86|-> *new_rectangle = *rectangle;
# 87|
# 88| return new_rectangle;
Error: CPPCHECK_WARNING: [#def120]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-terminal-session.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def121]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-terminal-session.c: scope_hint: In function ‘ply_terminal_session_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-terminal-session.c:72:43: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘session’
# 70|
# 71| session = calloc (1, sizeof(ply_terminal_session_t));
# 72|-> session->pseudoterminal_master_fd = -1;
# 73| session->argv = argv == NULL ? NULL : ply_copy_string_array (argv);
# 74| session->logger = ply_logger_new ();
Error: GCC_ANALYZER_WARNING (CWE-476): [#def122]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-trigger.c: scope_hint: In function ‘ply_trigger_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-trigger.c:65:31: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘trigger’
# 63|
# 64| trigger = calloc (1, sizeof(ply_trigger_t));
# 65|-> trigger->free_address = free_address;
# 66| trigger->closures = ply_list_new ();
# 67| trigger->ignore_count = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def123]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-trigger.c: scope_hint: In function ‘ply_trigger_add_instance_handler’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-trigger.c:126:31: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘closure’
# 124|
# 125| closure = calloc (1, sizeof(ply_trigger_closure_t));
# 126|-> closure->handler_type = PLY_TRIGGER_HANDLER_TYPE_INSTANCE_HANDLER;
# 127| closure->instance_handler = handler;
# 128| closure->user_data = user_data;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def124]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-trigger.c: scope_hint: In function ‘ply_trigger_add_handler’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-trigger.c:171:28: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘closure’
# 169| closure->handler_type = PLY_TRIGGER_HANDLER_TYPE_HANDLER;
# 170| closure->handler = handler;
# 171|-> closure->user_data = user_data;
# 172|
# 173| ply_list_append_data (trigger->closures, closure);
Error: CPPCHECK_WARNING: [#def125]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def126]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘create_unix_address_from_path’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:142:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘address’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:25: included_from: Included from here.
# 140|
# 141| address = calloc (1, sizeof(struct sockaddr_un));
# 142|-> address->sun_family = AF_UNIX;
# 143|
# 144| /* a socket is marked as abstract if its path has the
Error: GCC_ANALYZER_WARNING (CWE-476): [#def127]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_copy_string_array’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:443:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘copy’
# 441|
# 442| for (i = 0; array[i] != NULL; i++) {
# 443|-> copy[i] = strdup (array[i]);
# 444| }
# 445|
Error: GCC_ANALYZER_WARNING (CWE-688): [#def128]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_create_directory’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:645:47: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘parent_directory’ where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:28: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:36: included_from: Included from here.
/usr/include/string.h:273:14: note: argument 1 of ‘strrchr’ must be non-null
# 643| if (errno == ENOENT) {
# 644| parent_directory = strdup (directory);
# 645|-> last_path_component = strrchr (parent_directory, '/');
# 646| *last_path_component = '\0';
# 647|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def129]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_create_daemon’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:727:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘handle’
# 725|
# 726| handle = calloc (1, sizeof(int));
# 727|-> *handle = sender_fd;
# 728|
# 729| return (ply_daemon_handle_t *) handle;
Error: GCC_ANALYZER_WARNING (CWE-457): [#def130]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_utf8_character_get_size_from_byte_type’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:810:16: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘size’
# 808| break;
# 809| }
# 810|-> return size;
# 811| }
# 812|
Error: COMPILER_WARNING (CWE-457): [#def131]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_utf8_character_get_size_from_byte_type’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:810:16: warning[-Wmaybe-uninitialized]: ‘size’ may be used uninitialized
# 810 | return size;
# | ^~~~
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:789:16: note: ‘size’ was declared here
# 789 | size_t size;
# | ^~~~
# 808| break;
# 809| }
# 810|-> return size;
# 811| }
# 812|
Error: COMPILER_WARNING (CWE-252): [#def132]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_get_process_command_line’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:945:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 945 | asprintf (&path, "/proc/%ld/cmdline", (long) pid);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 943| command_line = NULL;
# 944|
# 945|-> asprintf (&path, "/proc/%ld/cmdline", (long) pid);
# 946|
# 947| fd = open (path, O_RDONLY);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def133]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_get_process_command_line’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:965:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘command_line’
# 963|
# 964| for (i = 0; i < bytes_read - 1; i++) {
# 965|-> if (command_line[i] == '\0')
# 966| command_line[i] = ' ';
# 967| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def134]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:968:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘command_line’
# 966| command_line[i] = ' ';
# 967| }
# 968|-> command_line[i] = '\0';
# 969|
# 970| return command_line;
Error: COMPILER_WARNING (CWE-252): [#def135]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘ply_get_process_parent_pid’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:985:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 985 | asprintf (&path, "/proc/%ld/stat", (long) pid);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 983| int ppid;
# 984|
# 985|-> asprintf (&path, "/proc/%ld/stat", (long) pid);
# 986|
# 987| ppid = 0;
Error: GCC_ANALYZER_WARNING: [#def136]
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c: scope_hint: In function ‘check_secure_boot_settings’
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-utils.c:1279:15: warning[-Wanalyzer-fd-use-without-check]: ‘read’ on possibly invalid file descriptor ‘open(filename, 0)’
# 1277|
# 1278| fd = open (filename, O_RDONLY);
# 1279|-> len = read (fd, buf, 5);
# 1280| close (fd);
# 1281|
Error: CPPCHECK_WARNING: [#def137]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-252): [#def138]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘get_theme_path’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:288:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 288 | asprintf (theme_path,
# | ^~~~~~~~~~~~~~~~~~~~~
# 289 | "%s/%s/%s.plymouth",
# | ~~~~~~~~~~~~~~~~~~~~
# 290 | paths[i], splash_string, splash_string);
# | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 286| continue;
# 287|
# 288|-> asprintf (theme_path,
# 289| "%s/%s/%s.plymouth",
# 290| paths[i], splash_string, splash_string);
Error: COMPILER_WARNING (CWE-252): [#def139]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘on_newroot’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:675:9: warning[-Wunused-result]: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’
# 675 | chdir (root_dir);
# | ^~~~~~~~~~~~~~~~
# 673| }
# 674|
# 675|-> chdir (root_dir);
# 676| chroot (".");
# 677| chdir ("/");
Error: COMPILER_WARNING (CWE-252): [#def140]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:676:9: warning[-Wunused-result]: ignoring return value of ‘chroot’ declared with attribute ‘warn_unused_result’
# 676 | chroot (".");
# | ^~~~~~~~~~~~
# 674|
# 675| chdir (root_dir);
# 676|-> chroot (".");
# 677| chdir ("/");
# 678| /* Update local now that we have /usr/share/locale available */
Error: COMPILER_WARNING (CWE-252): [#def141]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:677:9: warning[-Wunused-result]: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’
# 677 | chdir ("/");
# | ^~~~~~~~~~~
# 675| chdir (root_dir);
# 676| chroot (".");
# 677|-> chdir ("/");
# 678| /* Update local now that we have /usr/share/locale available */
# 679| setlocale (LC_ALL, "");
Error: COMPILER_WARNING (CWE-252): [#def142]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘check_verbosity’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:1990:33: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1990 | asprintf (&file, "/dev/%s", device);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1988| file = strdup (device);
# 1989| else
# 1990|-> asprintf (&file, "/dev/%s", device);
# 1991|
# 1992| fd = open (file, O_RDWR | O_APPEND);
Error: GCC_ANALYZER_WARNING (CWE-688): [#def143]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘check_verbosity’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:1992:30: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘file’ where non-null expected
/usr/include/features.h:511: included_from: Included from here.
/usr/include/sys/stat.h:25: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:23: included_from: Included from here.
/usr/include/fcntl.h:212:12: note: argument 1 of ‘open’ must be non-null
# 1990| asprintf (&file, "/dev/%s", device);
# 1991|
# 1992|-> fd = open (file, O_RDWR | O_APPEND);
# 1993|
# 1994| if (fd < 0)
Error: CLANG_WARNING: [#def144]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2143:14: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull'
# 2141| size_t size;
# 2142|
# 2143|-> fd = open (debug_buffer_path,
# 2144| O_WRONLY | O_CREAT | O_TRUNC, 0600);
# 2145|
Error: COMPILER_WARNING (CWE-252): [#def145]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘write_maps’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2171:9: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 2171 | write (output_fd, "maps:\n", strlen ("maps:\n"));
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2169| int fd;
# 2170|
# 2171|-> write (output_fd, "maps:\n", strlen ("maps:\n"));
# 2172| fd = open ("/proc/self/maps", O_RDONLY);
# 2173|
Error: COMPILER_WARNING (CWE-252): [#def146]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2183:33: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 2183 | write (output_fd, maps_buffer + line_start, i - line_start + 1);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2181| for (ssize_t i = line_start; i < bytes_read; ++i) {
# 2182| if (maps_buffer[i] == '\n') {
# 2183|-> write (output_fd, maps_buffer + line_start, i - line_start + 1);
# 2184| line_start = i + 1;
# 2185| }
Error: COMPILER_WARNING (CWE-252): [#def147]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2198:17: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 2198 | write (output_fd, maps_buffer, buffer_end);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2196|
# 2197| if (buffer_end > 0) {
# 2198|-> write (output_fd, maps_buffer, buffer_end);
# 2199| }
# 2200|
Error: COMPILER_WARNING (CWE-252): [#def148]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘write_backtrace’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2210:9: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 2210 | write (output_fd, "backtrace:\n", strlen ("backtrace:\n"));
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2208| int number_of_addresses;
# 2209|
# 2210|-> write (output_fd, "backtrace:\n", strlen ("backtrace:\n"));
# 2211| number_of_addresses = backtrace (addresses, BACKTRACE_SIZE);
# 2212|
Error: COMPILER_WARNING (CWE-252): [#def149]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘on_crash’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2238:17: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
# 2238 | write (fd, show_cursor_sequence, sizeof(show_cursor_sequence) - 1);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2236| ioctl (fd, KDSETMODE, KD_TEXT);
# 2237|
# 2238|-> write (fd, show_cursor_sequence, sizeof(show_cursor_sequence) - 1);
# 2239|
# 2240| tcgetattr (fd, &term_attributes);
Error: GCC_ANALYZER_WARNING (CWE-479): [#def150]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘on_crash’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2259:17: warning[-Wanalyzer-unsafe-call-within-signal-handler]: call to ‘free’ from within signal handler
# 2257| if (pid_file != NULL) {
# 2258| unlink (pid_file);
# 2259|-> free (pid_file);
# 2260| pid_file = NULL;
# 2261| }
Error: COMPILER_WARNING (CWE-252): [#def151]
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c: scope_hint: In function ‘main’
plymouth-24.004.60-build/plymouth-24.004.60/src/main.c:2437:9: warning[-Wunused-result]: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’
# 2437 | chdir ("/");
# | ^~~~~~~~~~~
# 2435| state.no_boot_log = no_boot_log;
# 2436|
# 2437|-> chdir ("/");
# 2438| signal (SIGPIPE, SIG_IGN);
# 2439|
Error: CPPCHECK_WARNING: [#def152]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-252): [#def153]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: scope_hint: In function ‘find_default_font_path’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:134:9: warning[-Wunused-result]: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’
# 134 | fgets (fc_match_out, sizeof(fc_match_out), fp);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 132| return FONT_FALLBACK;
# 133|
# 134|-> fgets (fc_match_out, sizeof(fc_match_out), fp);
# 135|
# 136| pclose (fp);
Error: COMPILER_WARNING (CWE-252): [#def154]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: scope_hint: In function ‘find_default_monospace_font_path’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:151:9: warning[-Wunused-result]: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’
# 151 | fgets (fc_match_out, sizeof(fc_match_out), fp);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 149| return MONOSPACE_FONT_FALLBACK;
# 150|
# 151|-> fgets (fc_match_out, sizeof(fc_match_out), fp);
# 152|
# 153| pclose (fp);
Error: CLANG_WARNING: [#def155]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:246:17: warning[deadcode.DeadStores]: Value stored to 'character_size' is never read
# 244| if (character_size <= 0) {
# 245| character = (wchar_t) *input_text;
# 246|-> character_size = 1;
# 247| }
# 248|
Error: COMPILER_WARNING (CWE-457): [#def156]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:328:52: warning[-Wmaybe-uninitialized]: ‘red’ may be used uninitialized
# 328 | rd = invalpha * rd + alpha * rs;
# | ~~~~~~^~~~
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: scope_hint: In function ‘load_glyphs’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:548:25: note: ‘red’ was declared here
# 548 | uint8_t red, green, blue;
# | ^~~
# 326|
# 327| /* Alpha blending */
# 328|-> rd = invalpha * rd + alpha * rs;
# 329| gd = invalpha * gd + alpha * gs;
# 330| bd = invalpha * bd + alpha * bs;
Error: COMPILER_WARNING (CWE-457): [#def157]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:329:52: warning[-Wmaybe-uninitialized]: ‘green’ may be used uninitialized
# 329 | gd = invalpha * gd + alpha * gs;
# | ~~~~~~^~~~
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: scope_hint: In function ‘load_glyphs’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:548:30: note: ‘green’ was declared here
# 548 | uint8_t red, green, blue;
# | ^~~~~
# 327| /* Alpha blending */
# 328| rd = invalpha * rd + alpha * rs;
# 329|-> gd = invalpha * gd + alpha * gs;
# 330| bd = invalpha * bd + alpha * bs;
# 331| /* Semi-correct: Disregard the target alpha */
Error: COMPILER_WARNING (CWE-457): [#def158]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:330:52: warning[-Wmaybe-uninitialized]: ‘blue’ may be used uninitialized
# 330 | bd = invalpha * bd + alpha * bs;
# | ~~~~~~^~~~
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: scope_hint: In function ‘load_glyphs’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:548:37: note: ‘blue’ was declared here
# 548 | uint8_t red, green, blue;
# | ^~~~
# 328| rd = invalpha * rd + alpha * rs;
# 329| gd = invalpha * gd + alpha * gs;
# 330|-> bd = invalpha * bd + alpha * bs;
# 331| /* Semi-correct: Disregard the target alpha */
# 332| ad = alpha * 255;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def159]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c: scope_hint: In function ‘finish_measuring_line’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:441:16: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘entry’
# 439|
# 440| entry = calloc (1, sizeof(ply_rectangle_t));
# 441|-> *entry = *dimensions;
# 442| ply_array_add_pointer_element (label->dimensions_of_lines, entry);
# 443|
Error: GCC_ANALYZER_WARNING (CWE-401): [#def160]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:442:9: warning[-Wanalyzer-malloc-leak]: leak of ‘entry’
# 440| entry = calloc (1, sizeof(ply_rectangle_t));
# 441| *entry = *dimensions;
# 442|-> ply_array_add_pointer_element (label->dimensions_of_lines, entry);
# 443|
# 444| dimensions->y += dimensions->height;
Error: CLANG_WARNING: [#def161]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:444:23: warning[unix.Malloc]: Potential leak of memory pointed to by 'entry'
# 442| ply_array_add_pointer_element (label->dimensions_of_lines, entry);
# 443|
# 444|-> dimensions->y += dimensions->height;
# 445| }
# 446|
Error: CLANG_WARNING: [#def162]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-freetype/plugin.c:777:13: warning[unix.Malloc]: Use of memory after it is freed
# 775| label->font = new_font;
# 776|
# 777|-> if (strstr (font, "Mono") || strstr (font, "mono")) {
# 778| if (!label->is_monospaced) {
# 779| FT_Done_Face (label->face);
Error: CPPCHECK_WARNING: [#def163]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-pango/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def164]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/controls/label-pango/plugin.c:452:31: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull'
# 450| dirty_area = label->area;
# 451| free (label->text);
# 452|-> label->text = strdup (text);
# 453| size_control (label, false);
# 454| if (!label->is_hidden && label->display != NULL)
Error: CPPCHECK_WARNING: [#def165]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def166]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c: scope_hint: In function ‘ply_renderer_buffer_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:230:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘buffer’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:29: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:30: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/libply/ply-logger.h:149:9: note: in expansion of macro ‘ply_logger_trace’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:749:9: note: in expansion of macro ‘ply_trace’
# 228|
# 229| buffer = calloc (1, sizeof(ply_renderer_buffer_t));
# 230|-> buffer->width = width;
# 231| buffer->height = height;
# 232| buffer->map_address = MAP_FAILED;
Error: CLANG_WARNING: [#def167]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:1231:24: warning[core.NullDereference]: Dereference of null pointer (loaded from variable 'mode')
# 1229| mode = &connector->modes[0];
# 1230| }
# 1231|-> output->mode = *mode;
# 1232|
# 1233| if (backend->simpledrm)
Error: CLANG_WARNING: [#def168]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:1331:25: warning[unix.Malloc]: Potential leak of memory pointed to by 'new_outputs'
# 1329| new_outputs = setup_outputs (backend, new_outputs, outputs_len);
# 1330|
# 1331|-> count = count_setup_controllers (new_outputs, outputs_len);
# 1332| if (count > best_count) {
# 1333| if (best_outputs != outputs)
Error: CLANG_WARNING: [#def169]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/drm/plugin.c:1513:25: warning[deadcode.DeadStores]: Value stored to 'head' is never read
# 1511|
# 1512| if (head == NULL) {
# 1513|-> head = ply_renderer_head_new (backend, &outputs[i],
# 1514| console_buffer_id,
# 1515| gamma_size);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def170]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/frame-buffer/plugin.c: scope_hint: In function ‘create_backend’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/frame-buffer/plugin.c:253:38: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘backend’
# 251|
# 252| if (device_name != NULL)
# 253|-> backend->device_name = strdup (device_name);
# 254| else if (getenv ("FRAMEBUFFER") != NULL)
# 255| backend->device_name = strdup (getenv ("FRAMEBUFFER"));
Error: GCC_ANALYZER_WARNING (CWE-476): [#def171]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/frame-buffer/plugin.c:255:38: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘backend’
# 253| backend->device_name = strdup (device_name);
# 254| else if (getenv ("FRAMEBUFFER") != NULL)
# 255|-> backend->device_name = strdup (getenv ("FRAMEBUFFER"));
# 256| else
# 257| backend->device_name =
Error: CLANG_WARNING: [#def172]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/frame-buffer/plugin.c:255:40: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull'
# 253| backend->device_name = strdup (device_name);
# 254| else if (getenv ("FRAMEBUFFER") != NULL)
# 255|-> backend->device_name = strdup (getenv ("FRAMEBUFFER"));
# 256| else
# 257| backend->device_name =
Error: GCC_ANALYZER_WARNING (CWE-476): [#def173]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/frame-buffer/plugin.c:257:38: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘backend’
# 255| backend->device_name = strdup (getenv ("FRAMEBUFFER"));
# 256| else
# 257|-> backend->device_name =
# 258| strdup (PLY_FRAME_BUFFER_DEFAULT_FB_DEVICE_NAME);
# 259|
Error: CPPCHECK_WARNING: [#def174]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def175]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c: scope_hint: In function ‘create_backend’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c:129:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘backend’
# 127| backend = calloc (1, sizeof(ply_renderer_backend_t));
# 128|
# 129|-> backend->loop = ply_event_loop_get_default ();
# 130| backend->heads = ply_list_new ();
# 131| backend->input_source.key_buffer = ply_buffer_new ();
Error: GCC_ANALYZER_WARNING (CWE-476): [#def176]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c: scope_hint: In function ‘create_fake_multi_head_setup’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c:226:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘head’
# 224| head = calloc (1, sizeof(ply_renderer_head_t));
# 225|
# 226|-> head->backend = backend;
# 227| head->area.x = 0;
# 228| head->area.y = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def177]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c:239:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘head’
# 237| head = calloc (1, sizeof(ply_renderer_head_t));
# 238|
# 239|-> head->backend = backend;
# 240| head->area.x = 800;
# 241| head->area.y = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def178]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c: scope_hint: In function ‘create_fullscreen_single_head_setup’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/renderers/x11/plugin.c:271:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘head’
# 269| head = calloc (1, sizeof(ply_renderer_head_t));
# 270|
# 271|-> head->backend = backend;
# 272| head->area.x = monitor_geometry.x;
# 273| head->area.y = monitor_geometry.y;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def179]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/details/plugin.c:90:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘view’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/details/plugin.c: scope_hint: In function ‘add_text_display’
# 88|
# 89| view = calloc (1, sizeof(view_t));
# 90|-> view->plugin = plugin;
# 91| view->display = display;
# 92|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def180]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/details/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/details/plugin.c:158:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘plugin’
# 156|
# 157| plugin = calloc (1, sizeof(ply_boot_splash_plugin_t));
# 158|-> plugin->views = ply_list_new ();
# 159| plugin->state = PLY_BOOT_SPLASH_DISPLAY_NORMAL;
# 160| plugin->messages = ply_list_new ();
Error: CPPCHECK_WARNING: [#def181]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-252): [#def182]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c:239:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 239 | asprintf (&image_path, "%s/star.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 237| image_dir = ply_key_file_get_value (key_file, "fade-throbber", "ImageDir");
# 238|
# 239|-> asprintf (&image_path, "%s/star.png", image_dir);
# 240| plugin->star_image = ply_image_new (image_path);
# 241| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def183]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c:243:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 243 | asprintf (&image_path, "%s/lock.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 241| free (image_path);
# 242|
# 243|-> asprintf (&image_path, "%s/lock.png", image_dir);
# 244| plugin->lock_image = ply_image_new (image_path);
# 245| free (image_path);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def184]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c: scope_hint: In function ‘star_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c:279:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘star’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c:23: included_from: Included from here.
# 277|
# 278| star = calloc (1, sizeof(star_t));
# 279|-> star->x = x;
# 280| star->y = y;
# 281| star->speed = speed;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def185]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c: scope_hint: In function ‘view_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/fade-throbber/plugin.c:326:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘view’
# 324|
# 325| view = calloc (1, sizeof(view_t));
# 326|-> view->plugin = plugin;
# 327| view->display = display;
# 328|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def186]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/plugin.c: scope_hint: In function ‘add_script_env_var.part.0’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/plugin.c:159:26: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘new_env_var’
# 157| script_env_vars = user_data;
# 158| new_env_var = malloc (sizeof(script_env_var_t));
# 159|-> new_env_var->key = strdup (key);
# 160| new_env_var->value = strdup (value);
# 161|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def187]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/plugin.c:171:27: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘plugin’
# 169|
# 170| plugin = calloc (1, sizeof(ply_boot_splash_plugin_t));
# 171|-> plugin->image_dir = ply_key_file_get_value (key_file,
# 172| "script",
# 173| "ImageDir");
Error: GCC_ANALYZER_WARNING (CWE-476): [#def188]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-debug.c: scope_hint: In function ‘script_debug_add_element’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-debug.c:48:34: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘new_location’
# 46| script_debug_setup ();
# 47| script_debug_location_t *new_location = malloc (sizeof(script_debug_location_t));
# 48|-> new_location->line_index = location->line_index;
# 49| new_location->column_index = location->column_index;
# 50| new_location->name = ply_hashtable_lookup (script_debug_name_hash, location->name);
Error: CPPCHECK_WARNING: [#def189]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-execute.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-252): [#def190]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-execute.c: scope_hint: In function ‘script_evaluate_set’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-execute.c:147:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 147 | asprintf (&name, "%d", index);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 145| script_obj_t *data_obj = script_evaluate (state, data_exp);
# 146| char *name;
# 147|-> asprintf (&name, "%d", index);
# 148| index++;
# 149| script_obj_hash_add_element (obj, data_obj, name);
Error: CLANG_WARNING: [#def191]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-execute.c:552:26: warning[deadcode.DeadStores]: Value stored to 'node' during its initialization is never read
# 550| {
# 551| script_return_t reply = script_return_normal ();
# 552|-> ply_list_node_t *node = ply_list_get_first_node (op_list);
# 553|
# 554| for (node = ply_list_get_first_node (op_list);
Error: COMPILER_WARNING (CWE-252): [#def192]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-execute.c: scope_hint: In function ‘script_execute_function_with_parlist’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-execute.c:589:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 589 | asprintf (&name, "%d", index);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 587| script_obj_t *data_obj = ply_list_node_get_data (node_data);
# 588| char *name;
# 589|-> asprintf (&name, "%d", index);
# 590| index++;
# 591| script_obj_hash_add_element (arg_obj, data_obj, name);
Error: CPPCHECK_WARNING: [#def193]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-image.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-252): [#def194]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-image.c: scope_hint: In function ‘image_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-image.c:69:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 69 | asprintf (&path_filename, "%s/%s", data->image_dir, filename);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 67| path_filename = strdup ("");
# 68| } else {
# 69|-> asprintf (&path_filename, "%s/%s", data->image_dir, filename);
# 70| }
# 71| ply_image_t *file_image = ply_image_new (path_filename);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def195]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-math.c: scope_hint: In function ‘script_lib_math_setup’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-math.c:119:30: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘data’
# 117| script_obj_unref (math_hash);
# 118|
# 119|-> data->script_main_op = script_parse_string (script_lib_math_string, "script-lib-math.script");
# 120| script_return_t ret = script_execute (state, data->script_main_op);
# 121|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def196]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-plymouth.c: scope_hint: In function ‘script_lib_plymouth_setup’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-plymouth.c:122:35: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘data’
# 120| script_lib_plymouth_data_t *data = malloc (sizeof(script_lib_plymouth_data_t));
# 121|
# 122|-> data->script_refresh_func = script_obj_new_null ();
# 123| data->script_boot_progress_func = script_obj_new_null ();
# 124| data->script_root_mounted_func = script_obj_new_null ();
Error: CPPCHECK_WARNING: [#def197]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-sprite.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def198]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-sprite.c: scope_hint: In function ‘sprite_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-sprite.c:56:19: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘sprite’
# 54|
# 55| sprite->x = 0;
# 56|-> sprite->y = 0;
# 57| sprite->z = 0;
# 58| sprite->opacity = 1.0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def199]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-sprite.c: scope_hint: In function ‘add_display’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-sprite.c:537:39: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘script_display’
# 535| script_lib_display_t *script_display = malloc (sizeof(script_lib_display_t));
# 536|
# 537|-> script_display->pixel_display = pixel_display;
# 538| script_display->data = data;
# 539| ply_pixel_display_set_draw_handler (pixel_display,
Error: GCC_ANALYZER_WARNING (CWE-476): [#def200]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-string.c: scope_hint: In function ‘script_lib_string_setup’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-lib-string.c:126:30: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘data’
# 124| NULL);
# 125| script_obj_unref (string_hash);
# 126|-> data->script_main_op = script_parse_string (script_lib_string_string, "script-lib-string.script");
# 127| script_return_t ret = script_execute (state, data->script_main_op);
# 128|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def201]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c: scope_hint: In function ‘script_obj_new_null’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c:152:19: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘obj’
# 150| script_obj_t *obj = malloc (sizeof(script_obj_t));
# 151|
# 152|-> obj->type = SCRIPT_OBJ_TYPE_NULL;
# 153| obj->refcount = 1;
# 154| return obj;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def202]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c: scope_hint: In function ‘script_obj_new_hash’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c:181:19: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘obj’
# 179| script_obj_t *obj = malloc (sizeof(script_obj_t));
# 180|
# 181|-> obj->type = SCRIPT_OBJ_TYPE_HASH;
# 182| obj->data.hash = ply_hashtable_new (ply_hashtable_string_hash,
# 183| ply_hashtable_string_compare);
Error: COMPILER_WARNING (CWE-252): [#def203]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c: scope_hint: In function ‘script_obj_as_string’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c:314:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 314 | asprintf (&reply, "%g", string_obj->data.number);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 312| string_obj = script_obj_as_obj_type (obj, SCRIPT_OBJ_TYPE_NUMBER);
# 313| if (string_obj) {
# 314|-> asprintf (&reply, "%g", string_obj->data.number);
# 315| return reply;
# 316| }
Error: COMPILER_WARNING (CWE-252): [#def204]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c:319:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 319 | asprintf (&reply, "#(0x%p)", obj);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 317| if (script_obj_is_null (obj))
# 318| return strdup ("#NULL");
# 319|-> asprintf (&reply, "#(0x%p)", obj);
# 320| return reply;
# 321| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def205]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c: scope_hint: In function ‘script_obj_hash_get_element.part.0’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c:449:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘variable’
# 447| script_variable_t *variable = malloc (sizeof(script_variable_t));
# 448|
# 449|-> variable->name = strdup (name);
# 450| variable->object = script_obj_new_null ();
# 451| ply_hashtable_insert (realhash->data.hash, variable->name, variable);
Error: COMPILER_WARNING (CWE-252): [#def206]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c: scope_hint: In function ‘script_obj_plus’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-object.c:531:25: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 531 | asprintf (&newstring, "%s%s", string_a, string_b);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 529| if (string_a && string_b) {
# 530| char *newstring;
# 531|-> asprintf (&newstring, "%s%s", string_a, string_b);
# 532| obj = script_obj_new_string (newstring);
# 533| free (newstring);
Error: CPPCHECK_WARNING: [#def207]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def208]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c: scope_hint: In function ‘script_parse_new_exp’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:63:19: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘exp’
# 61| script_exp_t *exp = malloc (sizeof(script_exp_t));
# 62|
# 63|-> exp->type = type;
# 64| script_debug_add_element (exp, location);
# 65| return exp;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def209]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c: scope_hint: In function ‘script_parse_new_op’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:151:18: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘op’
# 149| script_op_t *op = malloc (sizeof(script_op_t));
# 150|
# 151|-> op->type = type;
# 152| script_debug_add_element (op, location);
# 153| return op;
Error: CLANG_WARNING: [#def210]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:285:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 283| }
# 284|
# 285|-> curtoken = script_scan_get_next_token (scan);
# 286|
# 287| script_op_t *func_op = script_parse_op (scan);
Error: CLANG_WARNING: [#def211]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:334:17: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 332| exp = script_parse_new_exp_var (curtoken->data.string, &curtoken->location);
# 333| }
# 334|-> curtoken = script_scan_get_next_token (scan);
# 335| return exp;
# 336| }
Error: CLANG_WARNING: [#def212]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:617:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 615| return NULL;
# 616| }
# 617|-> curtoken = script_scan_get_next_token (scan);
# 618|
# 619| script_op_t *op = script_parse_new_op_block (sublist, &location);
Error: CLANG_WARNING: [#def213]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:643:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 641| return NULL;
# 642| }
# 643|-> curtoken = script_scan_get_next_token (scan);
# 644|
# 645| script_exp_t *cond = script_parse_exp (scan);
Error: CLANG_WARNING: [#def214]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:680:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 678| script_debug_location_t location = curtoken->location;
# 679|
# 680|-> curtoken = script_scan_get_next_token (scan);
# 681| script_op_t *cond_op = script_parse_op (scan);
# 682|
Error: CLANG_WARNING: [#def215]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:697:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 695| return NULL;
# 696| }
# 697|-> curtoken = script_scan_get_next_token (scan);
# 698| script_exp_t *cond = script_parse_exp (scan);
# 699|
Error: CLANG_WARNING: [#def216]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:809:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 807| script_exp_t *name = script_parse_new_exp_var (curtoken->data.string, &curtoken->location);
# 808|
# 809|-> curtoken = script_scan_get_next_token (scan); /* FIXME parse any type of exp as target and do an assign*/
# 810|
# 811| script_function_t *function = script_parse_function_def (scan);
Error: CLANG_WARNING: [#def217]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:849:9: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 847| return NULL;
# 848| }
# 849|-> curtoken = script_scan_get_next_token (scan);
# 850| #endif
# 851|
Error: CLANG_WARNING: [#def218]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-parse.c:885:17: warning[deadcode.DeadStores]: Value stored to 'curtoken' is never read
# 883| return NULL;
# 884| }
# 885|-> curtoken = script_scan_get_next_token (scan);
# 886| #endif
# 887|
Error: CPPCHECK_WARNING: [#def219]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-scan.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def220]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-scan.c: scope_hint: In function ‘script_scan_read_next_token’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-scan.c:274:51: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
# 272| token->data.string = realloc (token->data.string,
# 273| (index + 2) * sizeof(char));
# 274|-> token->data.string[index] = curchar;
# 275| token->data.string[index + 1] = '\0';
# 276| index++;
Error: CLANG_WARNING: [#def221]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-scan.c:293:25: warning[deadcode.DeadStores]: Value stored to 'curchar' is never read
# 291| token->data.string = malloc (sizeof(char));
# 292| token->data.string[0] = '\0';
# 293|-> curchar = nextchar;
# 294| for (curchar = nextchar;
# 295| curchar != '\n' && curchar != '\0';
Error: GCC_ANALYZER_WARNING (CWE-476): [#def222]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-scan.c: scope_hint: In function ‘script_scan_peek_token’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script-scan.c:359:47: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘malloc(40)’
# 357| for (i = scan->tokencount; i <= n; i++) {
# 358| scan->tokens[i] = malloc (sizeof(script_scan_token_t));
# 359|-> scan->tokens[i]->type = SCRIPT_SCAN_TOKEN_TYPE_EMPTY;
# 360| }
# 361| scan->tokencount = n + 1;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def223]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c: scope_hint: In function ‘script_function_script_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c:48:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘function’
# 46| script_function_t *function = malloc (sizeof(script_function_t));
# 47|
# 48|-> function->type = SCRIPT_FUNCTION_TYPE_SCRIPT;
# 49| function->parameters = parameter_list;
# 50| function->data.script = script;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def224]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c: scope_hint: In function ‘script_function_native_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c:62:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘function’
# 60| script_function_t *function = malloc (sizeof(script_function_t));
# 61|
# 62|-> function->type = SCRIPT_FUNCTION_TYPE_NATIVE;
# 63| function->parameters = parameter_list;
# 64| function->data.native = native_function;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def225]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c: scope_hint: In function ‘script_obj_native_class_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c:104:26: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘class’
# 102| script_obj_native_class_t *class = malloc (sizeof(script_obj_native_class_t));
# 103|
# 104|-> class->free_func = free_func;
# 105| class->name = strdup (name);
# 106| class->user_data = user_data;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def226]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c: scope_hint: In function ‘script_state_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c:122:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘state’
# 120| script_obj_t *global_hash = script_obj_new_hash ();
# 121|
# 122|-> state->global = script_obj_new_ref (global_hash);
# 123| script_obj_unref (global_hash);
# 124| state->local = script_obj_new_ref (global_hash);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def227]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c: scope_hint: In function ‘script_state_init_sub’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/script/script.c:136:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘newstate’
# 134| script_obj_t *local_hash = script_obj_new_hash ();
# 135|
# 136|-> newstate->local = script_obj_new_ref (local_hash);
# 137| script_obj_unref (local_hash);
# 138| newstate->global = script_obj_new_ref (oldstate->global);
Error: CPPCHECK_WARNING: [#def228]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def229]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c: scope_hint: In function ‘add_sprite’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:421:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘new_sprite’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:25: included_from: Included from here.
# 419|
# 420| new_sprite->x = 0;
# 421|-> new_sprite->y = 0;
# 422| new_sprite->z = 0;
# 423| new_sprite->oldx = 0;
Error: COMPILER_WARNING (CWE-252): [#def230]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:584:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 584 | asprintf (&image_path, "%s/lock.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 582| image_dir = ply_key_file_get_value (key_file, "space-flares", "ImageDir");
# 583|
# 584|-> asprintf (&image_path, "%s/lock.png", image_dir);
# 585| plugin->lock_image = ply_image_new (image_path);
# 586| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def231]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:588:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 588 | asprintf (&image_path, "%s/box.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 586| free (image_path);
# 587|
# 588|-> asprintf (&image_path, "%s/box.png", image_dir);
# 589| plugin->box_image = ply_image_new (image_path);
# 590| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def232]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:592:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 592 | asprintf (&image_path, "%s/star.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 590| free (image_path);
# 591|
# 592|-> asprintf (&image_path, "%s/star.png", image_dir);
# 593| plugin->star_image = ply_image_new (image_path);
# 594| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def233]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:621:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 621 | asprintf (&image_path, "%s/progress_bar.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 619| #ifdef SHOW_PROGRESS_BAR
# 620|
# 621|-> asprintf (&image_path, "%s/progress_bar.png", image_dir);
# 622| plugin->progress_barimage = ply_image_new (image_path);
# 623| free (image_path);
Error: CLANG_WARNING: [#def234]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:1100:33: warning[deadcode.DeadStores]: Value stored to 'z' is never read
# 1098| angle = atan2 (z, x) + flare->rotate_xz[b] + 0.02 * sin (8 * b * flare_line);
# 1099| x = distance * cos (angle);
# 1100|-> z = distance * sin (angle);
# 1101|
# 1102|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def235]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c: scope_hint: In function ‘view_setup_scene’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:1580:37: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘star_bg’
# 1578| view->scaled_background_image = ply_image_resize (plugin->logo_image, screen_width, screen_height);
# 1579| star_bg = malloc (sizeof(star_bg_t));
# 1580|-> star_bg->star_count = (screen_width * screen_height) / 400;
# 1581| star_bg->star_x = malloc (sizeof(int) * star_bg->star_count);
# 1582| star_bg->star_y = malloc (sizeof(int) * star_bg->star_count);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def236]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:1682:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘progress’
# 1680| progress_t *progress = malloc (sizeof(progress_t));
# 1681|
# 1682|-> progress->image = plugin->progress_barimage;
# 1683|
# 1684| x = screen_width / 2 - ply_image_get_width (plugin->logo_image) / 2;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def237]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/space-flares/plugin.c:1703:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘flare’
# 1701| flare_t *flare = malloc (sizeof(flare_t));
# 1702|
# 1703|-> flare->image_a = ply_image_resize (plugin->star_image, width, height);
# 1704| flare->image_b = ply_image_resize (plugin->star_image, width, height);
# 1705|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def238]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/text/plugin.c: scope_hint: In function ‘view_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/text/plugin.c:93:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘view’
# 91|
# 92| view = calloc (1, sizeof(view_t));
# 93|-> view->plugin = plugin;
# 94| view->display = display;
# 95|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def239]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/text/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/text/plugin.c:309:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘plugin’
# 307| plugin->message = NULL;
# 308|
# 309|-> plugin->views = ply_list_new ();
# 310|
# 311| return plugin;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def240]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/text/plugin.c: scope_hint: In function ‘show_password_prompt’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/text/plugin.c:623:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘entered_text’
# 621|
# 622| for (i = 0; i < bullets; i++) {
# 623|-> entered_text[i] = '*';
# 624| }
# 625|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def241]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/tribar/plugin.c: scope_hint: In function ‘view_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/tribar/plugin.c:96:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘view’
# 94|
# 95| view = calloc (1, sizeof(view_t));
# 96|-> view->plugin = plugin;
# 97| view->display = display;
# 98|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def242]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/tribar/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/tribar/plugin.c:315:23: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘plugin’
# 313| plugin->message = NULL;
# 314|
# 315|-> plugin->views = ply_list_new ();
# 316|
# 317| return plugin;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def243]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/tribar/plugin.c: scope_hint: In function ‘show_password_prompt’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/tribar/plugin.c:629:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘entered_text’
# 627|
# 628| for (i = 0; i < bullets; i++) {
# 629|-> entered_text[i] = '*';
# 630| }
# 631|
Error: CPPCHECK_WARNING: [#def244]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-252): [#def245]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c: scope_hint: In function ‘create_plugin’
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1168:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1168 | asprintf (&image_path, "%s/lock.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1166| ply_trace ("Using '%s' as working directory", image_dir);
# 1167|
# 1168|-> asprintf (&image_path, "%s/lock.png", image_dir);
# 1169| plugin->lock_image = ply_image_new (image_path);
# 1170| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def246]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1172:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1172 | asprintf (&image_path, "%s/box.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1170| free (image_path);
# 1171|
# 1172|-> asprintf (&image_path, "%s/box.png", image_dir);
# 1173| plugin->box_image = ply_image_new (image_path);
# 1174| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def247]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1176:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1176 | asprintf (&image_path, "%s/corner-image.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1174| free (image_path);
# 1175|
# 1176|-> asprintf (&image_path, "%s/corner-image.png", image_dir);
# 1177| plugin->corner_image = ply_image_new (image_path);
# 1178| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def248]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1180:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1180 | asprintf (&image_path, "%s/header-image.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1178| free (image_path);
# 1179|
# 1180|-> asprintf (&image_path, "%s/header-image.png", image_dir);
# 1181| plugin->header_image = ply_image_new (image_path);
# 1182| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def249]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1184:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1184 | asprintf (&image_path, "%s/background.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1182| free (image_path);
# 1183|
# 1184|-> asprintf (&image_path, "%s/background.png", image_dir);
# 1185| if (!ply_file_exists (image_path)) {
# 1186| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def250]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1187:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1187 | asprintf (&image_path, "%s/background-tile.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1185| if (!ply_file_exists (image_path)) {
# 1186| free (image_path);
# 1187|-> asprintf (&image_path, "%s/background-tile.png", image_dir);
# 1188| }
# 1189|
Error: COMPILER_WARNING (CWE-252): [#def251]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1194:9: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1194 | asprintf (&image_path, "%s/watermark.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1192| free (image_path);
# 1193|
# 1194|-> asprintf (&image_path, "%s/watermark.png", image_dir);
# 1195| plugin->watermark_image = ply_image_new (image_path);
# 1196| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def252]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1203:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1203 | asprintf (&image_path, "%s/emblem-warning.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1201| if (!ply_kernel_command_line_has_argument ("secure_boot.warn_if_disabled=false") &&
# 1202| !ply_is_secure_boot_enabled ()) {
# 1203|-> asprintf (&image_path, "%s/emblem-warning.png", image_dir);
# 1204| plugin->secure_boot_warning_image = ply_image_new (image_path);
# 1205| free (image_path);
Error: COMPILER_WARNING (CWE-252): [#def253]
plymouth-24.004.60-build/plymouth-24.004.60/src/plugins/splash/two-step/plugin.c:1333:17: warning[-Wunused-result]: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’
# 1333 | asprintf (&image_path, "%s/bgrt-fallback.png", image_dir);
# | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1331| plugin->background_bgrt_image = ply_image_new ("/sys/firmware/acpi/bgrt/image");
# 1332|
# 1333|-> asprintf (&image_path, "%s/bgrt-fallback.png", image_dir);
# 1334| plugin->background_bgrt_fallback_image = ply_image_new (image_path);
# 1335| free (image_path);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def254]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c: scope_hint: In function ‘ply_boot_server_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:115:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘server’
# 113|
# 114| server = calloc (1, sizeof(ply_boot_server_t));
# 115|-> server->connections = ply_list_new ();
# 116| server->cached_passwords = ply_list_new ();
# 117| server->loop = NULL;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def255]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c: scope_hint: In function ‘ply_boot_connection_new’
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:170:24: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘connection’
# 168|
# 169| connection = calloc (1, sizeof(ply_boot_connection_t));
# 170|-> connection->fd = fd;
# 171| connection->server = server;
# 172| connection->watch = NULL;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def256]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c: scope_hint: In function ‘ply_boot_connection_read_request’
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:245:21: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘*command’
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:24: included_from: Included from here.
# 243|
# 244| *command = calloc (2, sizeof(char));
# 245|-> *command[0] = header[0];
# 246|
# 247| *argument = NULL;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def257]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:245:21: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘command’
# 243|
# 244| *command = calloc (2, sizeof(char));
# 245|-> *command[0] = header[0];
# 246|
# 247| *argument = NULL;
Error: GCC_ANALYZER_WARNING (CWE-688): [#def258]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c: scope_hint: In function ‘ply_boot_connection_on_request’
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:468:25: warning[-Wanalyzer-null-argument]: use of NULL ‘argument’ where non-null expected
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:37: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:423:13: note: in expansion of macro ‘ply_is_tracing’
/usr/include/features.h:511: included_from: Included from here.
/usr/include/bits/libc-header-start.h:33: included_from: Included from here.
/usr/include/stdint.h:26: included_from: Included from here.
/usr/lib/gcc/x86_64-redhat-linux/14/include/stdint.h:9: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.h:26: included_from: Included from here.
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:22: included_from: Included from here.
/usr/include/stdlib.h:215:17: note: argument 1 of ‘strtol’ must be non-null
# 466| char *endptr = NULL;
# 467|
# 468|-> value = strtol (argument, &endptr, 10);
# 469| if (endptr == NULL || *endptr != '\0' || value < 0 || value > 100) {
# 470| ply_error ("failed to parse percentage %s", argument);
Error: CLANG_WARNING: [#def259]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:468:25: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull'
# 466| char *endptr = NULL;
# 467|
# 468|-> value = strtol (argument, &endptr, 10);
# 469| if (endptr == NULL || *endptr != '\0' || value < 0 || value > 100) {
# 470| ply_error ("failed to parse percentage %s", argument);
Error: CLANG_WARNING: [#def260]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:530:40: warning[core.NullDereference]: Array access (from variable 'argument') results in a null pointer dereference
# 528| ply_trigger_t *quit_trigger;
# 529|
# 530|-> retain_splash = (bool) argument[0];
# 531|
# 532| ply_trace ("got quit %srequest", retain_splash ? "--retain-splash " : "");
Error: GCC_ANALYZER_WARNING (CWE-476): [#def261]
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:530:48: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘argument’
plymouth-24.004.60-build/plymouth-24.004.60/src/ply-boot-server.c:423:13: note: in expansion of macro ‘ply_is_tracing’
# 528| ply_trigger_t *quit_trigger;
# 529|
# 530|-> retain_splash = (bool) argument[0];
# 531|
# 532| ply_trace ("got quit %srequest", retain_splash ? "--retain-splash " : "");
Scan Properties
analyzer-version-clang | 18.1.7 |
analyzer-version-cppcheck | 2.14.2 |
analyzer-version-gcc | 14.1.1 |
analyzer-version-gcc-analyzer | 14.1.1 |
analyzer-version-shellcheck | 0.10.0 |
enabled-plugins | clang, cppcheck, gcc, shellcheck |
exit-code | 0 |
host | ip-172-16-1-217.us-west-2.compute.internal |
mock-config | fedora-41-x86_64 |
project-name | plymouth-24.004.60-12.fc41 |
store-results-to | /tmp/tmpok2eae6_/plymouth-24.004.60-12.fc41.tar.xz |
time-created | 2024-07-03 17:02:30 |
time-finished | 2024-07-03 17:04:22 |
tool | csmock |
tool-args | '/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmpok2eae6_/plymouth-24.004.60-12.fc41.tar.xz' '--gcc-analyze' '/tmp/tmpok2eae6_/plymouth-24.004.60-12.fc41.src.rpm' |
tool-version | csmock-3.5.3-1.el9 |