Page Menu
Home
Search
Configure Global Search
Log In
Files
F18582
audaspace-deadlock.patch
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Authored By
Wander Lairson Costa (walac)
Nov 13 2013, 4:10 PM
Size
990 B
Subscribers
None
audaspace-deadlock.patch
View Options
Index: intern/audaspace/intern/AUD_Reference.h
===================================================================
--- intern/audaspace/intern/AUD_Reference.h (revisão 46184)
+++ intern/audaspace/intern/AUD_Reference.h (cópia de trabalho)
@@ -174,8 +174,14 @@
std::cerr << "-" << typeid(*m_reference).name() << std::endl;
#endif
if(AUD_ReferenceHandler::decref(m_original))
+ {
+ pthread_mutex_unlock(AUD_ReferenceHandler::getMutex());
delete m_reference;
- pthread_mutex_unlock(AUD_ReferenceHandler::getMutex());
+ }
+ else
+ {
+ pthread_mutex_unlock(AUD_ReferenceHandler::getMutex());
+ }
}
/**
@@ -194,7 +200,11 @@
std::cerr << "-" << typeid(*m_reference).name() << std::endl;
#endif
if(AUD_ReferenceHandler::decref(m_original))
+ {
+ pthread_mutex_unlock(AUD_ReferenceHandler::getMutex());
delete m_reference;
+ pthread_mutex_lock(AUD_ReferenceHandler::getMutex());
+ }
m_original = ref.m_original;
m_reference = ref.m_reference;
File Metadata
Details
Mime Type
text/x-diff
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
24/63/7664c9243a870167bfee1d78d630
Event Timeline
Log In to Comment