diff --git a/paddle/phi/kernels/funcs/concat_and_split_functor.cc b/paddle/phi/kernels/funcs/concat_and_split_functor.cc index aa73ba5f689906e73f3f0e3a845aa397ad0a33c1..fd61484eb8526b2b699fb46f5bd32bac908fe33c 100644 --- a/paddle/phi/kernels/funcs/concat_and_split_functor.cc +++ b/paddle/phi/kernels/funcs/concat_and_split_functor.cc @@ -37,6 +37,11 @@ struct ConcatFunctor { } int64_t out_rows = rows, out_cols = 0; + PADDLE_ENFORCE_NE( + rows, + 0, + phi::errors::InvalidArgument("The input size should not be 0.")); + std::vector input_cols(input.size()); for (size_t i = 0; i < num; ++i) { int64_t t_cols = input[i].numel() / rows; diff --git a/python/paddle/fluid/tests/unittests/test_functional_conv1d_transpose.py b/python/paddle/fluid/tests/unittests/test_functional_conv1d_transpose.py index 1d4e079f9f84ad71bb366b7d11516570c9832a98..865c848f8ba1d3db9182bf1073ec86eb36afa257 100644 --- a/python/paddle/fluid/tests/unittests/test_functional_conv1d_transpose.py +++ b/python/paddle/fluid/tests/unittests/test_functional_conv1d_transpose.py @@ -82,5 +82,17 @@ class TestFunctionalConv1DErrorCase2(TestFunctionalConv1DError): self.data_format = "NCL" +class TestFunctionalConv1DErrorCase3(TestFunctionalConv1DError): + def setUp(self): + self.input = np.random.randn(6, 0, 6) + self.filter = np.random.randn(6, 0, 0) + self.bias = None + self.padding = 0 + self.stride = 1 + self.dilation = 1 + self.groups = 1 + self.data_format = "NCL" + + if __name__ == "__main__": unittest.main()