On Tue, 25 Sep 2012 11:11:21 +0900 Namhyung Kim <namhy...@kernel.org> wrote:
> On Mon, 24 Sep 2012 23:24:10 +0800, Feng Tang wrote: > [snip] > > + if (!check_perf_magic(magic)) { > > + options[nr_options] = strdup(name); > > + abs_path[nr_options++] = strdup(path); > > Need to check return values. > > > > + } > > + fclose(file); > > + } > > + closedir(pwd_dir); > > + > > + if (nr_options) { > > + choice = ui__popup_menu(nr_options, options); > > + if (choice < nr_options && choice >= 0) { > > + input_name = strdup(abs_path[choice]); > > Ditto. Plus it might leak previous input_name. Nice catch, will check the return value of "strdup". For input_name mem leak, in some cases the input_name can't be called with free(), like those got from parse "-i" option. In case the old input_name is got from malloc through strdup, I think it's not a big issue given that buffer will be freed any way when the application exit. Thanks, Feng > > Thanks, > Namhyung > > > > + ret = 0; > > + } > > + } > > + > > + free_popup_options(options, nr_options); > > + free_popup_options(abs_path, nr_options); > > + return ret; > > +} > > + > > + -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/