diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp index df222d31cb870871f384b916c2cfe5dcd55ee70b..d9310d202d9c784f2fb7a8af5812ddabbeaf293b 100644 --- a/indra/newview/llpanelobject.cpp +++ b/indra/newview/llpanelobject.cpp @@ -2447,9 +2447,17 @@ void LLPanelObject::onPasteSize() { if (!mHasClipboardSize) return; - mClipboardSize.mV[VX] = llclamp(mClipboardSize.mV[VX], MIN_PRIM_SCALE, DEFAULT_MAX_PRIM_SCALE); - mClipboardSize.mV[VY] = llclamp(mClipboardSize.mV[VY], MIN_PRIM_SCALE, DEFAULT_MAX_PRIM_SCALE); - mClipboardSize.mV[VZ] = llclamp(mClipboardSize.mV[VZ], MIN_PRIM_SCALE, DEFAULT_MAX_PRIM_SCALE); + F32 min_scale = SL_MIN_PRIM_SCALE; + F32 max_scale = SL_DEFAULT_MAX_PRIM_SCALE; + if(gAgent.getRegion()) + { + min_scale = gAgent.getRegion()->getMinPrimScale(); + max_scale = gAgent.getRegion()->getMaxPrimScale(); + } + + mClipboardSize.mV[VX] = llclamp(mClipboardSize.mV[VX], min_scale, max_scale); + mClipboardSize.mV[VY] = llclamp(mClipboardSize.mV[VY], min_scale, max_scale); + mClipboardSize.mV[VZ] = llclamp(mClipboardSize.mV[VZ], min_scale, max_scale); mCtrlScaleX->set(mClipboardSize.mV[VX]); mCtrlScaleY->set(mClipboardSize.mV[VY]); @@ -2485,9 +2493,9 @@ void LLPanelObject::onCopyParams() mClipboardParams["volume_params"] = params.asLLSD(); // Sculpted Prim - if (objectp->getParameterEntryInUse(LLNetworkData::PARAMS_SCULPT)) + if (objectp->getSculptParams()) { - LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getParameterEntry(LLNetworkData::PARAMS_SCULPT); + LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getSculptParams(); LLUUID texture_id = sculpt_params->getSculptTexture(); if (get_can_copy_texture(texture_id)) @@ -2523,7 +2531,7 @@ void LLPanelObject::onPasteParams() } else { - LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getParameterEntry(LLNetworkData::PARAMS_SCULPT); + LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getSculptParams(); if (sculpt_params) { objectp->setParameterEntryInUse(LLNetworkData::PARAMS_SCULPT, FALSE, TRUE); diff --git a/indra/newview/llpanelvolume.cpp b/indra/newview/llpanelvolume.cpp index d07f1506dc5e2371e4c5bc27789a1f24295eb272..d242a656732192f2aece4b1a3a60c4ab057e9817 100644 --- a/indra/newview/llpanelvolume.cpp +++ b/indra/newview/llpanelvolume.cpp @@ -854,7 +854,7 @@ void LLPanelVolume::onCopyFeatures() // Flexi Prim if (volobjp && volobjp->isFlexible()) { - LLFlexibleObjectData *attributes = (LLFlexibleObjectData *)objectp->getParameterEntry(LLNetworkData::PARAMS_FLEXIBLE); + LLFlexibleObjectData *attributes = (LLFlexibleObjectData *)objectp->getFlexibleObjectData(); if (attributes) { clipboard["flex"]["lod"] = attributes->getSimulateLOD(); @@ -952,7 +952,7 @@ void LLPanelVolume::onPasteFeatures() objectp->setClickAction(CLICK_ACTION_NONE); } - LLFlexibleObjectData *attributes = (LLFlexibleObjectData *)objectp->getParameterEntry(LLNetworkData::PARAMS_FLEXIBLE); + LLFlexibleObjectData *attributes = (LLFlexibleObjectData *)objectp->getFlexibleObjectData(); if (attributes) { LLFlexibleObjectData new_attributes; diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 0d690a0f5702615bf7168b434f032f11476c34fa..0d2e307d68a28c961b7025f4a5ed780c7f9f3b49 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -1819,6 +1819,8 @@ BOOL LLVOVolume::genBBoxes(BOOL force_global, BOOL should_update_octree_bounds) max.setMax(max, face->mExtents[1]); } } + } + if (any_valid_boxes) { if (rebuild && should_update_octree_bounds)