From 038ae17545335e5d1b33746b0193e85ee9f584fe Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 5 Jan 2015 23:05:29 +0000 Subject: Thought-necessary protection of TransferFunction::lut() for access from multiple threads. --- src/transfer_function.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/transfer_function.cc') diff --git a/src/transfer_function.cc b/src/transfer_function.cc index d889cbbc..8a844d9b 100644 --- a/src/transfer_function.cc +++ b/src/transfer_function.cc @@ -33,6 +33,8 @@ TransferFunction::TransferFunction (bool inverse) TransferFunction::~TransferFunction () { + boost::mutex::scoped_lock lm (_mutex); + for (map::const_iterator i = _luts.begin(); i != _luts.end(); ++i) { delete[] i->second; } @@ -43,6 +45,8 @@ TransferFunction::~TransferFunction () double const * TransferFunction::lut (int bit_depth) const { + boost::mutex::scoped_lock lm (_mutex); + map::const_iterator i = _luts.find (bit_depth); if (i != _luts.end ()) { return i->second; -- cgit v1.2.3