diff --git a/include/tvm/runtime/packed_func.h b/include/tvm/runtime/packed_func.h
index 7f38581a4cdf24684891b27fc2d374212542aac9..4535a0bc99f1b11322ce7b9bd80b820fc076361d 100644
--- a/include/tvm/runtime/packed_func.h
+++ b/include/tvm/runtime/packed_func.h
@@ -318,6 +318,8 @@ class TVMRetValue : public TVMPODValue_ {
    */
   TVMRetValue(TVMRetValue&& other)
       : TVMPODValue_(other.value_, other.type_code_) {
+    other.value_.v_handle = nullptr;
+    other.type_code_ = kNull;
   }
   /*! \brief destructor */
   ~TVMRetValue() {