diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp')
-rw-r--r-- | Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp b/Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp index bd62288f8..0bebfe93b 100644 --- a/Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp +++ b/Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp @@ -56,7 +56,8 @@ ThreadIdentifierData::~ThreadIdentifierData() void ThreadIdentifierData::initializeOnce() { - if (pthread_key_create(&m_key, destruct)) + int error = pthread_key_create(&m_key, destruct); + if (error) CRASH(); } @@ -71,6 +72,10 @@ ThreadIdentifier ThreadIdentifierData::identifier() void ThreadIdentifierData::initialize(ThreadIdentifier id) { ASSERT(!identifier()); + // Ideally we'd have this as a release assert everywhere, but that would hurt performane. + // Having this release assert here means that we will catch "didn't call + // WTF::initializeThreading() soon enough" bugs in release mode. + RELEASE_ASSERT(m_key != PTHREAD_KEYS_MAX); pthread_setspecific(m_key, new ThreadIdentifierData(id)); } |