diff options
Diffstat (limited to 'Carpet/CarpetLib')
-rw-r--r-- | Carpet/CarpetLib/src/commstate.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Carpet/CarpetLib/src/commstate.cc b/Carpet/CarpetLib/src/commstate.cc index ec4bbf667..7a5caca3b 100644 --- a/Carpet/CarpetLib/src/commstate.cc +++ b/Carpet/CarpetLib/src/commstate.cc @@ -1,3 +1,5 @@ +#include <cstring> + #include "cctk.h" #include "cctk_Parameters.h" @@ -59,6 +61,7 @@ comm_state::comm_state () void comm_state::step () { + DECLARE_CCTK_PARAMETERS; assert (thestate != state_done); switch (thestate) { case state_post: @@ -91,6 +94,12 @@ void comm_state::step () procbuf.sendbufbase = new char[procbuf.sendbufsize*datatypesize]; procbuf.recvbufbase = new char[procbuf.recvbufsize*datatypesize]; + // TODO: this may be a bit extreme, and it is only for + // internal consistency checking + if (poison_new_memory) { + memset (procbuf.sendbufbase, poison_value, procbuf.sendbufsize*datatypesize); + memset (procbuf.recvbufbase, poison_value, procbuf.recvbufsize*datatypesize); + } procbuf.sendbuf = procbuf.sendbufbase; procbuf.recvbuf = procbuf.recvbufbase; |