# # # patch "packet.cc" # from [bf8e98ffb5ae6c741c7cd5641c1577e845cb4f80] # to [25f83fec9ada186baff965f8787fd368148b02b6] # # patch "vocab_terms.hh" # from [c7639f8cb74d33a18455a9f46814c1c6839e3d37] # to [8b2cc02ef4b8f211f9ca6640ad64922469530ff0] # ============================================================ --- packet.cc bf8e98ffb5ae6c741c7cd5641c1577e845cb4f80 +++ packet.cc 25f83fec9ada186baff965f8787fd368148b02b6 @@ -42,7 +42,7 @@ packet_writer::consume_file_data(file_id { base64 > packed; pack(dat.inner(), packed); - ost << "[fdata " << ident.inner()() << "]\n" + ost << "[fdata " << encode_hexenc(ident.inner()()) << "]\n" << trim_ws(packed()) << '\n' << "[end]\n"; } @@ -54,8 +54,8 @@ packet_writer::consume_file_delta(file_i { base64 > packed; pack(del.inner(), packed); - ost << "[fdelta " << old_id.inner()() << '\n' - << " " << new_id.inner()() << "]\n" + ost << "[fdelta " << encode_hexenc(old_id.inner()()) << '\n' + << " " << encode_hexenc(new_id.inner()()) << "]\n" << trim_ws(packed()) << '\n' << "[end]\n"; } @@ -66,7 +66,7 @@ packet_writer::consume_revision_data(rev { base64 > packed; pack(dat.inner(), packed); - ost << "[rdata " << ident.inner()() << "]\n" + ost << "[rdata " << encode_hexenc(ident.inner()()) << "]\n" << trim_ws(packed()) << '\n' << "[end]\n"; } @@ -486,11 +486,12 @@ UNIT_TEST(packet, roundabout) // a rdata packet revision_t rev; - rev.new_manifest = manifest_id(string("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")); + rev.new_manifest = manifest_id(decode_hexenc( + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")); shared_ptr cs(new cset); cs->dirs_added.insert(file_path_internal("")); - rev.edges.insert(make_pair(revision_id(string("bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb")), - cs)); + rev.edges.insert(make_pair(revision_id(decode_hexenc( + "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb")), cs)); revision_data rdat; write_revision(rev, rdat); revision_id rid; ============================================================ --- vocab_terms.hh c7639f8cb74d33a18455a9f46814c1c6839e3d37 +++ vocab_terms.hh 8b2cc02ef4b8f211f9ca6640ad64922469530ff0 @@ -112,26 +112,12 @@ EXTERN template class base64; // instantiate those bits of the stream operator vocab (again) actually in // use. "again" since stream operators are friends, not members. -/* -hum... which operators are really needed and which not? -EXTERN template std::ostream & operator<< <>(std::ostream &, id const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, revision const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, roster const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, manifest const &); -*/ -EXTERN template std::ostream & operator<< <>(std::ostream &, file const &); -//EXTERN template std::ostream & operator<< <>(std::ostream &, epoch const &); - - EXTERN template std::ostream & operator<< <>(std::ostream &, hexenc const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, revision< hexenc > const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, roster< hexenc > const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, manifest< hexenc > const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, file< hexenc > const &); -EXTERN template std::ostream & operator<< <>(std::ostream &, epoch< hexenc > const &); +// for some reason, we need this output operator for file, which surely +// return +EXTERN template std::ostream & operator<< <>(std::ostream &, file const &); - EXTERN template std::ostream & operator<< <>(std::ostream &, hexenc const &); EXTERN template std::ostream & operator<< <>(std::ostream &, roster const &);