on master help sign in
Merge pull request #4431 from jacereda/recv-leak
fb1cc4eNiklas Larsson
rts/idris_rts.c+2−1
@@ -1030,7 +1030,7 @@ Msg* idris_recvMessage(VM* vm) {
1030
1030
1031Msg* idris_recvMessageFrom(VM* vm, int channel_id, VM* sender) {
1031Msg* idris_recvMessageFrom(VM* vm, int channel_id, VM* sender) {
1032 Msg* msg;
1032 Msg* msg;
1033− Msg* ret = malloc(sizeof(Msg));
1033+ Msg* ret;
1034
1034
1035 struct timespec timeout;
1035 struct timespec timeout;
1036 int status;
1036 int status;
@@ -1054,6 +1054,7 @@ Msg* idris_recvMessageFrom(VM* vm, int channel_id, VM* sender) {
1054 pthread_mutex_unlock(&vm->inbox_block);
1054 pthread_mutex_unlock(&vm->inbox_block);
1055
1055
1056 if (msg != NULL) {
1056 if (msg != NULL) {
1057+ ret = malloc(sizeof(*ret));
1057 ret->msg = msg->msg;
1058 ret->msg = msg->msg;
1058 ret->sender = msg->sender;
1059 ret->sender = msg->sender;
1059
1060