diff options
author | caryclark <caryclark@google.com> | 2015-12-09 12:02:30 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-09 12:02:30 -0800 |
commit | 3127c99986dc932343aae5ccc575237d99c3aaec (patch) | |
tree | 68b3bf28a8f38c10838afa7a2b28478ad07ff17f /src/pathops/SkOpAngle.cpp | |
parent | e36ec871768eb4f5372540c1167ff7ec592f2bec (diff) |
ubsan shift fixes
Use an inline function that does a normal shift. When built for the sanitizer, add casts so that the shift is unsigned.
Also make a few fixes to do unsigned shifts or avoid the shift altogether; and add an argument spec to some macros.
R=reed@google.com,mtklein@google.com
BUG=skia:4633
Review URL: https://codereview.chromium.org/1503423003
Diffstat (limited to 'src/pathops/SkOpAngle.cpp')
-rw-r--r-- | src/pathops/SkOpAngle.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/pathops/SkOpAngle.cpp b/src/pathops/SkOpAngle.cpp index 655df45b15..c2eb0c9326 100644 --- a/src/pathops/SkOpAngle.cpp +++ b/src/pathops/SkOpAngle.cpp @@ -1016,7 +1016,7 @@ deferTilLater: if (!crossesZero) { fSectorMask = (unsigned) -1 >> (31 - end + start) << start; } else { - fSectorMask = (unsigned) -1 >> (31 - start) | (-1 << end); + fSectorMask = (unsigned) -1 >> (31 - start) | ((unsigned) -1 << end); } } |