In libz's inflateMark(), avoid left-shifting a negative integer, which

is undefined.

Reviewed by:	delphij
Differential Revision: https://reviews.freebsd.org/D3344
MFC after:	3 days
This commit is contained in:
Dimitry Andric 2015-09-07 20:55:14 +00:00
parent 9af8c8b72b
commit 1c292cd806

View File

@ -1504,7 +1504,7 @@ z_streamp strm;
{
struct inflate_state FAR *state;
if (strm == Z_NULL || strm->state == Z_NULL) return -1L << 16;
if (strm == Z_NULL || strm->state == Z_NULL) return -(1L << 16);
state = (struct inflate_state FAR *)strm->state;
return ((long)(state->back) << 16) +
(state->mode == COPY ? state->length :