Commit cce767b3 authored by Wesley Bland's avatar Wesley Bland Committed by Huiwei Lu
Browse files

Don't try to destroy a request if it doesn't exist



In the macro MPID_nem_lmt_send_RTS, the request for the send was being freed
on an error even if it didn't exist. This caused a segfault if calling a bcast
after a process previously failed.
Signed-off-by: default avatarHuiwei Lu <huiweilu@mcs.anl.gov>
parent e49213d6
......@@ -151,8 +151,10 @@ typedef union MPIDI_CH3_nem_pkt
/* --BEGIN ERROR HANDLING-- */ \
if (mpi_errno != MPI_SUCCESS) \
{ \
MPIU_Object_set_ref(_rts_req, 0); \
MPIDI_CH3_Request_destroy(_rts_req); \
if (NULL != _rts_req) { \
MPIU_Object_set_ref(_rts_req, 0); \
MPIDI_CH3_Request_destroy(_rts_req); \
} \
MPIU_ERR_SETANDJUMP(mpi_errno, MPI_ERR_OTHER, "**rtspkt"); \
} \
/* --END ERROR HANDLING-- */ \
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment