summaryrefslogtreecommitdiff
path: root/indra/newview/llviewerparcelmgr.cpp
diff options
context:
space:
mode:
authorAdam Moss <moss@lindenlab.com>2009-05-04 17:43:26 +0000
committerAdam Moss <moss@lindenlab.com>2009-05-04 17:43:26 +0000
commitcc92525b0df952659102d2e5adcc4140fea7f371 (patch)
treeee1a9b63decb3667fb740a8c9b70bcfdbf9a054b /indra/newview/llviewerparcelmgr.cpp
parent4bcbf3342284b19ff5fbda5a16a43a8cafb3baad (diff)
QAR-1476 Combo-merge to trunk: Viewer 1.23 RC0 and Simulator 1.26.3
svn merge -r118927:118939 svn+ssh://svn.lindenlab.com/svn/linden/branches/viewer/viewer-1.23.0-merge-2-combo-QAR-1476 this is a composite of... svn merge -r115088:118182 svn+ssh://svn.lindenlab.com/svn/linden/branches/viewer/viewer_1-23 conflicts resolved: C doc/contributions.txt C indra/llaudio/audioengine.cpp C indra/newview/CMakeLists.txt C indra/newview/llfloaterlandholdings.cpp C indra/newview/llpaneldirbrowser.cpp C indra/newview/llpanelgrouplandmoney.cpp C indra/newview/llpreviewscript.cpp C indra/newview/llviewermenu.cpp C indra/newview/skins/default/xui/en-us/notifications.xml and... svn merge -r116937:118673 svn+ssh://svn.lindenlab.com/svn/linden/branches/server/server-1.26 minor-to-trivial conflicts resolved: C indra/llcommon/llversionserver.h C indra/newsim/llrezdata.cpp C indra/newsim/llstate.cpp C indra/upgrade/schema_version/sequence/3/index_log_paypal.sql
Diffstat (limited to 'indra/newview/llviewerparcelmgr.cpp')
-rw-r--r--indra/newview/llviewerparcelmgr.cpp23
1 files changed, 21 insertions, 2 deletions
diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp
index 07203ce0f4..193dfaae96 100644
--- a/indra/newview/llviewerparcelmgr.cpp
+++ b/indra/newview/llviewerparcelmgr.cpp
@@ -1324,9 +1324,9 @@ void LLViewerParcelMgr::processParcelOverlay(LLMessageSystem *msg, void **user)
// Extract the packed overlay information
S32 packed_overlay_size = msg->getSizeFast(_PREHASH_ParcelData, _PREHASH_Data);
- if (packed_overlay_size == 0)
+ if (packed_overlay_size <= 0)
{
- llwarns << "Overlay size 0" << llendl;
+ llwarns << "Overlay size " << packed_overlay_size << llendl;
return;
}
@@ -2027,6 +2027,25 @@ bool LLViewerParcelMgr::canAgentBuyParcel(LLParcel* parcel, bool forGroup) const
return true; // change this if want to make it gods only
}
+ LLViewerRegion* regionp = LLViewerParcelMgr::getInstance()->getSelectionRegion();
+ if (regionp)
+ {
+ U8 sim_access = regionp->getSimAccess();
+ const LLAgentAccess& agent_access = gAgent.getAgentAccess();
+ // if the region is PG, we're happy already, so do nothing
+ // but if we're set to avoid either mature or adult, get us outta here
+ if ((sim_access == SIM_ACCESS_MATURE) &&
+ !agent_access.canAccessMature())
+ {
+ return false;
+ }
+ else if ((sim_access == SIM_ACCESS_ADULT) &&
+ !agent_access.canAccessAdult())
+ {
+ return false;
+ }
+ }
+
bool isForSale = parcel->getForSale()
&& ((parcel->getSalePrice() > 0) || (authorizeBuyer.notNull()));