From: Chris Koeritz Date: Thu, 14 Feb 2013 01:45:32 +0000 (-0500) Subject: getting this toward working. X-Git-Tag: 2.140.90~1111 X-Git-Url: https://feistymeow.org/gitweb/?p=feisty_meow.git;a=commitdiff_plain;h=9bec98463817389b2a071c63b231ae6a33a66289 getting this toward working. --- diff --git a/octopi/applications/transporter/transporter.cpp b/octopi/applications/transporter/transporter.cpp index e6cc082a..b597a624 100644 --- a/octopi/applications/transporter/transporter.cpp +++ b/octopi/applications/transporter/transporter.cpp @@ -253,14 +253,26 @@ int transporter::push_client_download() // prepare a client request file_transfer_infoton initiate; initiate._request = true; - initiate._command = file_transfer_infoton::TREE_COMPARISON; + initiate._command = file_transfer_infoton::BUILD_TARGET_TREE; initiate._src_root = _source; initiate._dest_root = _target; + + // make a directory snapshot with just directories, no files. + directory_tree target_area_just_dirs(_target, "*", true); + string_set includes; + initiate.package_tree_info(target_area_just_dirs, includes); + octopus_request_id cmd_id; + outcome build_ret = _client_side->submit(initiate, cmd_id); + if (build_ret != tentacle::OKAY) + non_continuable_error(class_name(), func, astring("failed to build the " + " target tree: ") + cromp_client::outcome_name(build_ret)); + + // now get the full contents going on. + initiate._command = file_transfer_infoton::TREE_COMPARISON; directory_tree target_area(_target); target_area.calculate(false); - string_set includes; + includes.reset(); initiate.package_tree_info(target_area, includes); - octopus_request_id cmd_id; outcome start_ret = _client_side->submit(initiate, cmd_id); if (start_ret != tentacle::OKAY) non_continuable_error(class_name(), func, astring("failed to initiate "