From: Philippe E. <ph...@us...> - 2007-11-01 20:39:28
|
Update of /cvsroot/oprofile/oprofile/pp In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25310/pp Modified Files: Tag: JIT_SUPPORT oparchive_options.cpp opreport.cpp Log Message: sync with HEAD Index: oparchive_options.cpp =================================================================== RCS file: /cvsroot/oprofile/oprofile/pp/oparchive_options.cpp,v retrieving revision 1.10.2.2 retrieving revision 1.10.2.3 diff -u -p -d -r1.10.2.2 -r1.10.2.3 --- oparchive_options.cpp 29 Oct 2007 19:52:25 -0000 1.10.2.2 +++ oparchive_options.cpp 1 Nov 2007 20:39:30 -0000 1.10.2.3 @@ -62,9 +62,16 @@ void check_options() using namespace options; /* output directory is required */ - if (outdirectory.size() == 0 && !list_files) { - cerr << "Requires --output-directory option." << endl; - exit(EXIT_FAILURE); + if (!list_files) { + if (outdirectory.size() == 0) { + cerr << "Requires --output-directory option." << endl; + exit(EXIT_FAILURE); + } + string realpath = op_realpath(outdirectory); + if (realpath == "/") { + cerr << "Invalid --output-directory: /" << endl; + exit(EXIT_FAILURE); + } } } Index: opreport.cpp =================================================================== RCS file: /cvsroot/oprofile/oprofile/pp/opreport.cpp,v retrieving revision 1.59.2.2 retrieving revision 1.59.2.3 diff -u -p -d -r1.59.2.2 -r1.59.2.3 --- opreport.cpp 29 Oct 2007 19:52:25 -0000 1.59.2.2 +++ opreport.cpp 1 Nov 2007 20:39:30 -0000 1.59.2.3 @@ -378,7 +378,8 @@ void output_symbols(profile_container co format_output::opreport_formatter * text_out = 0; if (options::xml) { - xml_out = new format_output::xml_formatter(&pc, symbols); + xml_out = new format_output::xml_formatter(&pc, symbols, + pc.extra_found_images); xml_out->show_details(options::details); out = xml_out; // for XML always output long filenames @@ -425,7 +426,10 @@ void output_diff_symbols(profile_contain if (multiple_apps) flags = format_flags(flags | ff_app_name); - format_output::diff_formatter out(dc); + // With diff profile we output only filename coming from the first + // profile session, internally we use only name derived from the sample + // filename so image name can match. + format_output::diff_formatter out(dc, pc1.extra_found_images); out.set_nr_classes(nr_classes); out.show_long_filenames(options::long_filenames); @@ -455,7 +459,7 @@ void output_cg_symbols(callgraph_contain format_output::cg_formatter * text_out = 0; if (options::xml) { - xml_out = new format_output::xml_cg_formatter(&cg, symbols); + xml_out = new format_output::xml_cg_formatter(cg, symbols); xml_out->show_details(options::details); out = xml_out; // for XML always output long filenames |