diff --git a/kernels/portable/cpu/op_view_as_real_copy.cpp b/kernels/portable/cpu/op_view_as_real_copy.cpp index 4461ecb02f8..fe0ced2f722 100644 --- a/kernels/portable/cpu/op_view_as_real_copy.cpp +++ b/kernels/portable/cpu/op_view_as_real_copy.cpp @@ -41,6 +41,14 @@ Tensor& view_as_real_copy_out( // Get the output shape Tensor::SizesType expected_output_size[kTensorDimensionLimit]; + ET_KERNEL_CHECK_MSG( + ctx, + static_cast(self.dim()) < kTensorDimensionLimit, + InvalidArgument, + out, + "Output size buffer is too small. Expected at least %zu, got %zu", + self.dim() + 1, + kTensorDimensionLimit); get_view_as_real_copy_out_target_size(self, expected_output_size); // Resize for dynamic shape