cid#1607861 Data race condition
Change-Id: Ib58f6613b98b2b778c9894359fe92b6fcf33298d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174293 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
This commit is contained in:
parent
ccef1a40d4
commit
9a2f11cc1f
1 changed files with 6 additions and 2 deletions
|
@ -38,7 +38,7 @@ namespace dbaui
|
|||
class OAsynchronousLink final
|
||||
{
|
||||
Link<void*,void> m_aHandler;
|
||||
std::mutex m_aEventSafety;
|
||||
mutable std::mutex m_aEventSafety;
|
||||
std::mutex m_aDestructionSafety;
|
||||
ImplSVEvent * m_nEventId;
|
||||
DECL_LINK(OnAsyncCall, void*, void);
|
||||
|
@ -50,7 +50,11 @@ namespace dbaui
|
|||
OAsynchronousLink( const Link<void*,void>& _rHandler );
|
||||
~OAsynchronousLink();
|
||||
|
||||
bool IsRunning() const { return m_nEventId != nullptr; }
|
||||
bool IsRunning() const
|
||||
{
|
||||
std::unique_lock aEventGuard(m_aEventSafety);
|
||||
return m_nEventId != nullptr;
|
||||
}
|
||||
|
||||
void Call( void* _pArgument = nullptr );
|
||||
void CancelCall();
|
||||
|
|
Loading…
Reference in a new issue