on master help sign in
Merge pull request #4431 from jacereda/recv-leak

Leak when receiving from inactive sender

commitfb1cc4e1ce642071928afffaa121e5b544cfcdcd authorNiklas Larsson <metaniklas@gmail.com> dateSun 29 Apr 2018, 21:04 (8 years ago) parent33d367d2247f69
1 file changed+2−1
rts/idris_rts.c+2−1
rts/idris_rts.c+2−1
@@ -1030,7 +1030,7 @@ Msg* idris_recvMessage(VM* vm) {
10301030
10311031Msg* idris_recvMessageFrom(VM* vm, int channel_id, VM* sender) {
10321032 Msg* msg;
1033− Msg* ret = malloc(sizeof(Msg));
1033+ Msg* ret;
10341034
10351035 struct timespec timeout;
10361036 int status;
@@ -1054,6 +1054,7 @@ Msg* idris_recvMessageFrom(VM* vm, int channel_id, VM* sender) {
10541054 pthread_mutex_unlock(&vm->inbox_block);
10551055
10561056 if (msg != NULL) {
1057+ ret = malloc(sizeof(*ret));
10571058 ret->msg = msg->msg;
10581059 ret->sender = msg->sender;
10591060