diff options
| author | Greg Fitzgerald <garious@gmail.com> | 2015-02-19 20:42:23 +0000 |
|---|---|---|
| committer | Greg Fitzgerald <garious@gmail.com> | 2015-02-19 20:42:23 +0000 |
| commit | cdaea4db269646e25b97e8139a37849303c56e92 (patch) | |
| tree | 48020e65d5e5b61ecb8170d12fd7941a7394c5aa /lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp | |
| parent | 68ca67b212c3be05ab5a8f5f3c7afcaec785834f (diff) | |
| download | bcm5719-llvm-cdaea4db269646e25b97e8139a37849303c56e92.tar.gz bcm5719-llvm-cdaea4db269646e25b97e8139a37849303c56e92.zip | |
Fix heap-buffer-overflow bugs identified by the Address Sanitizer
Differential Revision: http://reviews.llvm.org/D7733
llvm-svn: 229912
Diffstat (limited to 'lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp')
| -rw-r--r-- | lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp b/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp index 40b257cd7a4..74b013f1d50 100644 --- a/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp +++ b/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp @@ -411,6 +411,9 @@ private: } } + if (atom->rawContent().size() < 4 * sizeof(uint32_t)) + return entry; + using normalized::read32; entry.rangeLength = read32(atom->rawContent().data() + 2 * sizeof(uint32_t), _isBig); |

