CWE-762 Mismatched Memory Management Routines
V611 The memory was allocated using ‘alloca’ function but was released using the ‘free’ function. Consider inspecting operation logics behind the ‘full_path’ variable. setting-ringtone-remove.c 88
static void __draw_remove_list(SettingRingtoneData *ad) { char *full_path = NULL; .... full_path = (char *)alloca(PATH_MAX); .... if (!select_all_item) { SETTING_TRACE_ERROR("select_all_item is NULL"); free(full_path); return; } .... }
The buffer allocated on the stack using the alloca function could be passed to the free function.
Please click here to see more bugs from this project.