summaryrefslogtreecommitdiff
path: root/third_party/x86inc/LICENSE
diff options
context:
space:
mode:
authorMatthias Räncker <theonetruecamper@gmx.de>2018-09-19 09:47:27 +0200
committerMatthias Räncker <theonetruecamper@gmx.de>2018-09-20 11:51:26 +0200
commitad228021b3caa4924dd854c8f193d1219095c80f (patch)
tree49c1ea521321588fe5e6eb308681980fa3d5a57d /third_party/x86inc/LICENSE
parent0aa83d61a18fbdd5921247e0401b0fbba443cf35 (diff)
downloadlibvpx-ad228021b3caa4924dd854c8f193d1219095c80f.tar
libvpx-ad228021b3caa4924dd854c8f193d1219095c80f.tar.gz
libvpx-ad228021b3caa4924dd854c8f193d1219095c80f.tar.bz2
libvpx-ad228021b3caa4924dd854c8f193d1219095c80f.zip
fix UB when initializing parameterized tests
When running tests built with -fsanitize=undefined and--disable-optimizations the sanitizer will emit errors of the following general form: runtime error: member call on address 0xxxxxxxxx which does not point to an object of type 'WithParamInterface' 0xxxxxxxxx: note: object has invalid vptr 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... ^~~~~~~~~~~~~~~~~~~~~~~ invalid vptr This can be traced to calls to WithParamInterface<T>::GetParam before the object argument has been initialized. Although GetParam only accesses static data it is a non-static member function. This causes that call to have undefined behaviour. The patch makes GetParam a static member function. upstream pull request: https://github.com/google/googletest/pull/1830 The alternative - if the pull request is denied - would be to modify all parameterized tests to have them derive from ::libvpx_test::CodecTestWith*Params as the first base class. Signed-off-by: Matthias Räncker <theonetruecamper@gmx.de> Change-Id: I8e91a4fba5438c9b3e93fa398f789115ab86b521
Diffstat (limited to 'third_party/x86inc/LICENSE')
0 files changed, 0 insertions, 0 deletions