Cure Issue 1586: Singularity crashes when adding classified adds on opensim grids (untested in SL)
Following as it is done upstream, no more requests on null ids.
This commit is contained in:
@@ -488,7 +488,7 @@ void LLAvatarPropertiesProcessor::notifyObservers(const LLUUID& id,void* data, E
|
||||
// only notify observers for the same agent, or if the observer
|
||||
// didn't know the agent ID and passed a NULL id.
|
||||
const LLUUID &agent_id = oi->first;
|
||||
if (agent_id == id || (type == APT_CLASSIFIED_INFO && agent_id.isNull())) // Singu Note: Classifieds are the only ones registering null ids.
|
||||
if (agent_id == id || agent_id.isNull())
|
||||
{
|
||||
oi->second->processProperties(data,type);
|
||||
}
|
||||
|
||||
@@ -211,14 +211,7 @@ LLPanelClassifiedInfo::LLPanelClassifiedInfo(bool in_finder, bool from_search)
|
||||
|
||||
LLPanelClassifiedInfo::~LLPanelClassifiedInfo()
|
||||
{
|
||||
if (mCreatorID.notNull())
|
||||
{
|
||||
LLAvatarPropertiesProcessor::getInstance()->removeObserver(mCreatorID, this);
|
||||
}
|
||||
else
|
||||
{
|
||||
LLAvatarPropertiesProcessor::getInstance()->removeObserver(LLUUID::null, this);
|
||||
}
|
||||
LLAvatarPropertiesProcessor::getInstance()->removeObserver(mCreatorID, this);
|
||||
sAllPanels.remove(this);
|
||||
}
|
||||
|
||||
@@ -330,7 +323,7 @@ void LLPanelClassifiedInfo::processProperties(void* data, EAvatarProcessorType t
|
||||
LLAvatarClassifiedInfo* c_info = static_cast<LLAvatarClassifiedInfo*>(data);
|
||||
if(c_info && mClassifiedID == c_info->classified_id)
|
||||
{
|
||||
LLAvatarPropertiesProcessor::getInstance()->removeObserver(LLUUID::null, this);
|
||||
LLAvatarPropertiesProcessor::getInstance()->removeObserver(mCreatorID, this);
|
||||
|
||||
// "Location text" is actually the original
|
||||
// name that owner gave the parcel, and the location.
|
||||
@@ -563,7 +556,7 @@ void LLPanelClassifiedInfo::sendClassifiedInfoRequest()
|
||||
{
|
||||
if (mClassifiedID != mRequestedID)
|
||||
{
|
||||
LLAvatarPropertiesProcessor::getInstance()->addObserver(LLUUID::null, this);
|
||||
LLAvatarPropertiesProcessor::getInstance()->addObserver(mCreatorID, this);
|
||||
LLAvatarPropertiesProcessor::getInstance()->sendClassifiedInfoRequest(mClassifiedID);
|
||||
|
||||
mDataRequested = TRUE;
|
||||
|
||||
Reference in New Issue
Block a user