# # patch "ChangeLog" # from [4618e22780f227ba8b634d33433ce38bf1d50e0d] # to [e7d105abd1c2b52c280d67442385202f5db79816] # # patch "change_set.cc" # from [acf229c928d5a98c12d51fae465303b2ab9a1454] # to [e13f7ab5ea191e09735f2e46b6710d6782b08b71] # # patch "sanity.cc" # from [36ad241e17f12b3d4e08f78ba1f302bb76523a76] # to [ffb40b74ba38772ebf90bf7bc0f7ac710933a338] # ======================================================================== --- ChangeLog 4618e22780f227ba8b634d33433ce38bf1d50e0d +++ ChangeLog e7d105abd1c2b52c280d67442385202f5db79816 @@ -1,3 +1,12 @@ +2005-08-17 Timothy Brownawell + + * sanity.cc (gasp()): When catching an error from dumping a MM'd + variable, do not discard output generated prior to the error. This + way, at least the header line (function name, file, line no.) is + printed. + * change_set.cc: write_insane_change_set: new function to write a + change set without sanity checking it, now used by dump(). + 2005-08-17 Nathaniel Smith * netsync.cc: Add IANA port assignment to the todo list. ======================================================================== --- change_set.cc acf229c928d5a98c12d51fae465303b2ab9a1454 +++ change_set.cc e13f7ab5ea191e09735f2e46b6710d6782b08b71 @@ -2817,11 +2817,10 @@ void -print_path_rearrangement(basic_io::printer & printer, - change_set::path_rearrangement const & pr) +print_insane_path_rearrangement(basic_io::printer & printer, + change_set::path_rearrangement const & pr) { - pr.check_sane(); for (std::set::const_iterator i = pr.deleted_files.begin(); i != pr.deleted_files.end(); ++i) { @@ -2866,6 +2865,14 @@ } void +print_path_rearrangement(basic_io::printer & printer, + change_set::path_rearrangement const & pr) +{ + pr.check_sane(); + print_insane_path_rearrangement(printer, pr); +} + +void parse_change_set(basic_io::parser & parser, change_set & cs) { @@ -2890,11 +2897,10 @@ } void -print_change_set(basic_io::printer & printer, - change_set const & cs) +print_insane_change_set(basic_io::printer & printer, + change_set const & cs) { - cs.check_sane(); - print_path_rearrangement(printer, cs.rearrangement); + print_insane_path_rearrangement(printer, cs.rearrangement); for (change_set::delta_map::const_iterator i = cs.deltas.begin(); i != cs.deltas.end(); ++i) @@ -2907,6 +2913,14 @@ } } +void +print_change_set(basic_io::printer & printer, + change_set const & cs) +{ + cs.check_sane(); + print_insane_change_set(printer, cs); +} + void read_path_rearrangement(data const & dat, change_set::path_rearrangement & re) @@ -2936,17 +2950,24 @@ } void -write_change_set(change_set const & cs, - data & dat) +write_insane_change_set(change_set const & cs, + data & dat) { - cs.check_sane(); std::ostringstream oss; basic_io::printer pr(oss); - print_change_set(pr, cs); + print_insane_change_set(pr, cs); dat = data(oss.str()); } void +write_change_set(change_set const & cs, + data & dat) +{ + cs.check_sane(); + write_insane_change_set(cs, dat); +} + +void write_path_rearrangement(change_set::path_rearrangement const & re, data & dat) { @@ -2961,7 +2982,8 @@ dump(change_set const & cs, std::string & out) { data tmp; - write_change_set(cs, tmp); + write_insane_change_set(cs, tmp); +// write_change_set(cs, tmp); out = tmp(); } ======================================================================== --- sanity.cc 36ad241e17f12b3d4e08f78ba1f302bb76523a76 +++ sanity.cc ffb40b74ba38772ebf90bf7bc0f7ac710933a338 @@ -253,19 +253,21 @@ for (std::vector::const_iterator i = musings.begin(); i != musings.end(); ++i) { + std::string tmp; try { - std::string tmp; (*i)->gasp(tmp); out << tmp; } catch (logic_error) { + out << tmp; out << "\n"; L(F("ignoring error trigged by saving work set to debug log")); } catch (informative_failure) { + out << tmp; out << "\n"; L(F("ignoring error trigged by saving work set to debug log")); }