diff options
author | 2018-09-13 16:15:32 -0700 | |
---|---|---|
committer | 2018-09-13 16:20:12 -0700 | |
commit | 8f9413bf41ff89672a3415eef606ecaca7c70a2f (patch) | |
tree | 7ce769bb06ac8db11cab0deff7489c5032d63eef /tensorflow/core/kernels/decode_bmp_op.cc | |
parent | 29b56bde1e28e558111b917fd44b973e2aea7fcf (diff) |
Ensure that the input image of decode.bmp.op has valid dimensions.
This prevents an undefined behavior with signed integer overflow in
decode.bmp.op.
PiperOrigin-RevId: 212897289
Diffstat (limited to 'tensorflow/core/kernels/decode_bmp_op.cc')
-rw-r--r-- | tensorflow/core/kernels/decode_bmp_op.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tensorflow/core/kernels/decode_bmp_op.cc b/tensorflow/core/kernels/decode_bmp_op.cc index 750efca592..ae451be7e2 100644 --- a/tensorflow/core/kernels/decode_bmp_op.cc +++ b/tensorflow/core/kernels/decode_bmp_op.cc @@ -91,8 +91,10 @@ class DecodeBmpOp : public OpKernel { errors::InvalidArgument( "Number of channels must be 1, 3 or 4, was ", channels_)); - OP_REQUIRES(context, width > 0 && header_size >= 0, + OP_REQUIRES(context, width > 0, errors::InvalidArgument("Width must be positive")); + OP_REQUIRES(context, height != 0, + errors::InvalidArgument("Height must be nonzero")); OP_REQUIRES(context, header_size >= 0, errors::InvalidArgument("header size must be nonnegative")); |