diff options
author | A. Unique TensorFlower <gardener@tensorflow.org> | 2018-01-04 09:51:00 -0800 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-01-04 09:54:47 -0800 |
commit | 04cd5ca681df5a5526779e98d53686e4a2fa2866 (patch) | |
tree | 58aa80a59e9f76c28d416138c5a1729c000f9d78 | |
parent | 3aac69ade29b29905fd0a35ea078779204148c3d (diff) |
Ensure decode_raw on an empty string returns an empty tensor.
PiperOrigin-RevId: 180809736
-rw-r--r-- | tensorflow/core/kernels/decode_raw_op.cc | 2 | ||||
-rw-r--r-- | tensorflow/python/kernel_tests/decode_raw_op_test.py | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/tensorflow/core/kernels/decode_raw_op.cc b/tensorflow/core/kernels/decode_raw_op.cc index 1c0085cfea..bacacb94ae 100644 --- a/tensorflow/core/kernels/decode_raw_op.cc +++ b/tensorflow/core/kernels/decode_raw_op.cc @@ -51,7 +51,7 @@ class DecodeRawOp : public OpKernel { } TensorShape out_shape = input.shape(); if (str_size == -1 || str_size == 0) { // Empty input - out_shape.AddDim(1); + out_shape.AddDim(0); Tensor* output_tensor = nullptr; OP_REQUIRES_OK(context, context->allocate_output("output", out_shape, &output_tensor)); diff --git a/tensorflow/python/kernel_tests/decode_raw_op_test.py b/tensorflow/python/kernel_tests/decode_raw_op_test.py index 009f3ea4b3..0c7025f54e 100644 --- a/tensorflow/python/kernel_tests/decode_raw_op_test.py +++ b/tensorflow/python/kernel_tests/decode_raw_op_test.py @@ -90,8 +90,9 @@ class DecodeRawOpTest(test.TestCase): in_bytes = array_ops.placeholder(dtypes.string, shape=[None]) decode = parsing_ops.decode_raw(in_bytes, out_type=dtypes.float16) - result = decode.eval(feed_dict={in_bytes: [""]}) - self.assertEqual(len(result), 1) + for num_inputs in range(3): + result = decode.eval(feed_dict={in_bytes: [""] * num_inputs}) + self.assertEqual((num_inputs, 0), result.shape) def testToUInt16(self): with self.test_session(): |