From 4b7da208ea31ff10e6e0d74cede06d1eb9e8071e Mon Sep 17 00:00:00 2001 From: Pietro Incardona <incardon@mpi-cbg.de> Date: Sat, 12 Nov 2016 13:05:33 +0100 Subject: [PATCH] Fixing ghost get --- src/Vector/vector_dist_comm.hpp | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/src/Vector/vector_dist_comm.hpp b/src/Vector/vector_dist_comm.hpp index 6b536af0a..f6ec2e4b5 100644 --- a/src/Vector/vector_dist_comm.hpp +++ b/src/Vector/vector_dist_comm.hpp @@ -845,16 +845,16 @@ public: // if there are no properties skip // SSendRecvP send everything when we do not give properties - if (sizeof...(prp) != 0) - { - if (opt & SKIP_LABELLING) - { - op_ssend_gg_recv_merge opm(g_m); - v_cl.SSendRecvP_op<op_ssend_gg_recv_merge,send_vector,decltype(v_prp),prp...>(g_send_prp,v_prp,prc_g_opart,opm,prc_recv_get,recv_sz_get); - } - else - v_cl.SSendRecvP<send_vector,decltype(v_prp),prp...>(g_send_prp,v_prp,prc_g_opart,prc_recv_get,recv_sz_get); - } + if (sizeof...(prp) != 0) + { + if (opt & SKIP_LABELLING) + { + op_ssend_gg_recv_merge opm(g_m); + v_cl.SSendRecvP_op<op_ssend_gg_recv_merge,send_vector,decltype(v_prp),prp...>(g_send_prp,v_prp,prc_g_opart,opm,prc_recv_get,recv_sz_get); + } + else + v_cl.SSendRecvP<send_vector,decltype(v_prp),prp...>(g_send_prp,v_prp,prc_g_opart,prc_recv_get,recv_sz_get); + } if (!(opt & NO_POSITION)) { @@ -863,10 +863,13 @@ public: v_cl.SSendRecv(g_pos_send,v_pos,prc_g_opart,prc_recv_get,recv_sz_get); } - // Important to ensure that the number of particles in v_prp must be equal to v_pos - // Note that if we do not give properties sizeof...(prp) == 0 in general at this point - // v_prp.size() != v_pos.size() - v_prp.resize(v_pos.size()); + // Important to ensure that the number of particles in v_prp must be equal to v_pos + // Note that if we do not give properties sizeof...(prp) == 0 in general at this point + // v_prp.size() != v_pos.size() + if (!(opt & SKIP_LABELLING)) + { + v_prp.resize(v_pos.size()); + } add_loc_particles_bc(v_pos,v_prp,g_m,opt); } -- GitLab