diff options
author | Trevor Norris <trev.norris@gmail.com> | 2013-06-11 14:39:25 -0700 |
---|---|---|
committer | Trevor Norris <trev.norris@gmail.com> | 2013-06-11 14:39:25 -0700 |
commit | 5d4ac272c7ee88f44fa509e8fa2bc6def003a7f6 (patch) | |
tree | 20687f49bb50e9d3c1929f328262381e1956e33e /deps/v8/src | |
parent | 82b3524bce845bfb38d99f52ce3ab6492847ce9e (diff) | |
download | node-new-5d4ac272c7ee88f44fa509e8fa2bc6def003a7f6.tar.gz |
v8: fix pointer arithmetic undefined behavior
Clang branch release_33 would optimize out a != NULL check because of
some undefined behavior. This is a floating patch as a backport of that
fix.
Committed: http://code.google.com/p/v8/source/detail?r=13570
Diffstat (limited to 'deps/v8/src')
-rw-r--r-- | deps/v8/src/spaces.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/deps/v8/src/spaces.h b/deps/v8/src/spaces.h index 95c63d6b61..c8ccc7b561 100644 --- a/deps/v8/src/spaces.h +++ b/deps/v8/src/spaces.h @@ -320,7 +320,8 @@ class MemoryChunk { Space* owner() const { if ((reinterpret_cast<intptr_t>(owner_) & kFailureTagMask) == kFailureTag) { - return reinterpret_cast<Space*>(owner_ - kFailureTag); + return reinterpret_cast<Space*>(reinterpret_cast<intptr_t>(owner_) - + kFailureTag); } else { return NULL; } |