diff --git a/core/msg.c b/core/msg.c
index 32eda613fc763c432016821cc961574d7ec6c5f7..f33c7bc6e56c6f133d55091d2fa731048746056e 100644
--- a/core/msg.c
+++ b/core/msg.c
@@ -148,7 +148,7 @@ int msg_reply_int(msg *m, msg *reply) {
         return -1;
     }
     msg* target_message = (msg*)target->wait_data;
-    *target_message = *m;
+    *target_message = *reply;
     sched_set_status(target,  STATUS_PENDING);
     sched_context_switch_request = 1;
     return 1;