{"push_id":1361795780,"size":1,"distinct_size":1,"ref":"refs/heads/exec-seq-patch","head":"ae1cb3b3d07024618269b89e3421d828adfd34d9","before":"87ca1ececa5d013c878ff79746b006a0b7aba598","commits":[{"sha":"ae1cb3b3d07024618269b89e3421d828adfd34d9","author":{"name":"Nick Terrell","email":"5daa27ddf62cd18900c587bff78b5ed81174ca71@fb.com"},"message":"Fix small bug in ZSTD_execSequence()\n\n`memmove(op, match, sequence.matchLength)` is not the desired behavior.\nOverlap is allowed, and handled as if we did `*op++ = *match++`, which\nis not how `memmove()` handles overlap.\n\nOnly triggered if both of the following conditions are met:\n* The match spans extDict & currentPrefixSegment\n* `oLitEnd <= oend_w < oLitEnd + length1 < oMatchEnd <= oend`.\n\nThese two conditions imply that the block is less than 15 bytes long.\nThis bug isn't triggered by the streaming API, because it allocates\nenough space for the window size + the block size, so there cannot be\na match that is within 8 bytes of the end and overlaps with itself.\nIt cannot be triggered by the block decompression API because all of\nthe decompressed data is in the currentPrefixSegment.\n\nIntroduced by commit 71585843998459e636f639165ff8a1ca9d161b62","distinct":true,"url":"https://api.github.com/repos/terrelln/zstd/commits/ae1cb3b3d07024618269b89e3421d828adfd34d9"}]}
{"actor":{"display_login":"terrelln"}}