Fix endless loop in tensorflow::wav::DecodeLin16WaveAsFloatVector
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this [failed invocation](https://github.com/tensorflow/tensorflow/pull/60082/checks?check_run_id=12219818582) of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.
This bug was originally fixed by #56455

Regression was introduced in 50b4baf where addition result is truncated to smaller type. Thus, overflow checks do not work.

We performed continuous hybrid fuzzing with Sydr + libFuzzer/AFL++, and found an endless cycle in `decode_wav` fuzz target.

Seed: [timeout-26f66b056cebe711184a4ac9c508185972e48cb7.txt](https://github.com/tensorflow/tensorflow/files/11050056/timeout-26f66b056cebe711184a4ac9c508185972e48cb7.txt)

@mihaimaruseac, could you review, please?