summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llaudio/llaudioengine.cpp2
-rw-r--r--indra/llmath/llvolume.h2
-rw-r--r--indra/llprimitive/llmodel.cpp1
-rw-r--r--indra/llprimitive/llmodel.h16
-rw-r--r--indra/newview/VIEWER_VERSION.txt2
-rw-r--r--indra/newview/llagentcamera.cpp2
-rw-r--r--indra/newview/llfloaterpreference.cpp1
-rw-r--r--indra/newview/llinventoryfunctions.cpp17
-rw-r--r--indra/newview/llmodelpreview.cpp10
-rw-r--r--indra/newview/llmodelpreview.h1
-rw-r--r--indra/newview/llpanelprofileclassifieds.cpp10
-rw-r--r--indra/newview/skins/default/xui/en/floater_publish_classified.xml2
12 files changed, 57 insertions, 9 deletions
diff --git a/indra/llaudio/llaudioengine.cpp b/indra/llaudio/llaudioengine.cpp
index a387bb23cd..ece0a12a7a 100644
--- a/indra/llaudio/llaudioengine.cpp
+++ b/indra/llaudio/llaudioengine.cpp
@@ -398,7 +398,7 @@ void LLAudioEngine::idle()
for (source_map::value_type& src_pair : mAllSources)
{
LLAudioSource *sourcep = src_pair.second;
- if (sourcep->isMuted() && sourcep->isSyncMaster() && sourcep->getPriority() > max_sm_priority)
+ if (!sourcep->isMuted() && sourcep->isSyncMaster() && sourcep->getPriority() > max_sm_priority)
{
sync_masterp = sourcep;
master_channelp = sync_masterp->getChannel();
diff --git a/indra/llmath/llvolume.h b/indra/llmath/llvolume.h
index afed98ff36..71878b8cb6 100644
--- a/indra/llmath/llvolume.h
+++ b/indra/llmath/llvolume.h
@@ -1000,7 +1000,7 @@ class LLVolume : public LLRefCount
friend class LLVolumeLODGroup;
protected:
- ~LLVolume(); // use unref
+ virtual ~LLVolume(); // use unref
public:
typedef std::vector<LLVolumeFace> face_list_t;
diff --git a/indra/llprimitive/llmodel.cpp b/indra/llprimitive/llmodel.cpp
index ee493968de..68a7f29378 100644
--- a/indra/llprimitive/llmodel.cpp
+++ b/indra/llprimitive/llmodel.cpp
@@ -67,6 +67,7 @@ LLModel::~LLModel()
{
LLConvexDecomposition::getInstance()->deleteDecomposition(mDecompID);
}
+ mPhysics.mMesh.clear();
}
//static
diff --git a/indra/llprimitive/llmodel.h b/indra/llprimitive/llmodel.h
index 4505d6b3b9..040257e00e 100644
--- a/indra/llprimitive/llmodel.h
+++ b/indra/llprimitive/llmodel.h
@@ -106,6 +106,8 @@ public:
std::vector<LLVector3> mPositions;
std::vector<LLVector3> mNormals;
+ ~PhysicsMesh() {}
+
void clear()
{
mPositions.clear();
@@ -131,6 +133,7 @@ public:
public:
Decomposition() { }
Decomposition(LLSD& data);
+ ~Decomposition() { }
void fromLLSD(LLSD& data);
LLSD asLLSD() const;
bool hasHullList() const;
@@ -365,7 +368,7 @@ class LLModelInstanceBase
{
public:
LLPointer<LLModel> mModel;
- LLPointer<LLModel> mLOD[5];
+ LLPointer<LLModel> mLOD[LLModel::NUM_LODS];
LLUUID mMeshID;
LLMatrix4 mTransform;
@@ -380,6 +383,15 @@ public:
: mModel(NULL)
{
}
+
+ virtual ~LLModelInstanceBase()
+ {
+ mModel = NULL;
+ for (int j = 0; j < LLModel::NUM_LODS; ++j)
+ {
+ mLOD[j] = NULL;
+ }
+ };
};
typedef std::vector<LLModelInstanceBase> model_instance_list;
@@ -399,6 +411,8 @@ public:
LLModelInstance(LLSD& data);
+ ~LLModelInstance() {}
+
LLSD asLLSD();
};
diff --git a/indra/newview/VIEWER_VERSION.txt b/indra/newview/VIEWER_VERSION.txt
index 0e7b60da8a..a8a1887568 100644
--- a/indra/newview/VIEWER_VERSION.txt
+++ b/indra/newview/VIEWER_VERSION.txt
@@ -1 +1 @@
-7.1.2 \ No newline at end of file
+7.1.2
diff --git a/indra/newview/llagentcamera.cpp b/indra/newview/llagentcamera.cpp
index 8977b145d1..0d0d6e7e46 100644
--- a/indra/newview/llagentcamera.cpp
+++ b/indra/newview/llagentcamera.cpp
@@ -1779,7 +1779,7 @@ LLVector3d LLAgentCamera::calcCameraPositionTargetGlobal(BOOL *hit_limit)
head_offset.clearVec();
F32 fixup;
- if (gAgentAvatarp->hasPelvisFixup(fixup))
+ if (gAgentAvatarp->hasPelvisFixup(fixup) && !gAgentAvatarp->isSitting())
{
head_offset[VZ] -= fixup;
}
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index aa723eb3a8..6b8e2898a0 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -1016,7 +1016,6 @@ void LLFloaterPreference::onBtnCancel(const LLSD& userdata)
if (userdata.asString() == "closeadvanced")
{
LLFloaterReg::hideInstance("prefs_graphics_advanced");
- updateMaxComplexity();
}
else
{
diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp
index 4aeacae6ed..6ac8bbee76 100644
--- a/indra/newview/llinventoryfunctions.cpp
+++ b/indra/newview/llinventoryfunctions.cpp
@@ -2949,6 +2949,23 @@ bool get_selection_object_uuids(LLFolderView *root, uuid_vec_t& ids)
void LLInventoryAction::doToSelected(LLInventoryModel* model, LLFolderView* root, const std::string& action, BOOL user_confirm)
{
std::set<LLFolderViewItem*> selected_items = root->getSelectionList();
+ if (selected_items.empty()
+ && action != "wear"
+ && action != "wear_add"
+ && !isRemoveAction(action))
+ {
+ // Was item removed while user was checking menu?
+ // "wear" and removal exlusions are due to use of
+ // getInventorySelectedUUIDs() below
+ LL_WARNS("Inventory") << "Menu tried to operate on empty selection" << LL_ENDL;
+
+ if (("copy" == action) || ("cut" == action))
+ {
+ LLClipboard::instance().reset();
+ }
+
+ return;
+ }
// Prompt the user and check for authorization for some marketplace active listing edits
if (user_confirm && (("delete" == action) || ("cut" == action) || ("rename" == action) || ("properties" == action) || ("task_properties" == action) || ("open" == action)))
diff --git a/indra/newview/llmodelpreview.cpp b/indra/newview/llmodelpreview.cpp
index ccae1030f1..ad22e84c6e 100644
--- a/indra/newview/llmodelpreview.cpp
+++ b/indra/newview/llmodelpreview.cpp
@@ -220,6 +220,16 @@ LLModelPreview::~LLModelPreview()
mPreviewAvatar->markDead();
mPreviewAvatar = NULL;
}
+
+ mUploadData.clear();
+ mTextureSet.clear();
+
+ for (U32 i = 0; i < LLModel::NUM_LODS; i++)
+ {
+ clearModel(i);
+ }
+ mBaseModel.clear();
+ mBaseScene.clear();
}
void LLModelPreview::updateDimentionsAndOffsets()
diff --git a/indra/newview/llmodelpreview.h b/indra/newview/llmodelpreview.h
index df7320768c..d4d5d087bd 100644
--- a/indra/newview/llmodelpreview.h
+++ b/indra/newview/llmodelpreview.h
@@ -310,7 +310,6 @@ protected:
vv_LLVolumeFace_t mBaseModelFacesCopy;
U32 mGroup;
- std::map<LLPointer<LLModel>, U32> mObject;
// Amount of triangles in original(base) model
U32 mMaxTriangleLimit;
diff --git a/indra/newview/llpanelprofileclassifieds.cpp b/indra/newview/llpanelprofileclassifieds.cpp
index 3fbaad4dee..e0902c5ce4 100644
--- a/indra/newview/llpanelprofileclassifieds.cpp
+++ b/indra/newview/llpanelprofileclassifieds.cpp
@@ -955,7 +955,7 @@ void LLPanelProfileClassified::onSaveClick()
}
if(isNew() || isNewWithErrors())
{
- if(gStatusBar->getBalance() < getPriceForListing())
+ if(gStatusBar->getBalance() < MINIMUM_PRICE_FOR_LISTING)
{
LLNotificationsUtil::add("ClassifiedInsufficientFunds");
return;
@@ -1428,6 +1428,14 @@ void LLPanelProfileClassified::doSave()
void LLPanelProfileClassified::onPublishFloaterPublishClicked()
{
+ if (mPublishFloater->getPrice() < MINIMUM_PRICE_FOR_LISTING)
+ {
+ LLSD args;
+ args["MIN_PRICE"] = MINIMUM_PRICE_FOR_LISTING;
+ LLNotificationsUtil::add("MinClassifiedPrice", args);
+ return;
+ }
+
setPriceForListing(mPublishFloater->getPrice());
doSave();
diff --git a/indra/newview/skins/default/xui/en/floater_publish_classified.xml b/indra/newview/skins/default/xui/en/floater_publish_classified.xml
index 84e0b489d0..3e68011b6c 100644
--- a/indra/newview/skins/default/xui/en/floater_publish_classified.xml
+++ b/indra/newview/skins/default/xui/en/floater_publish_classified.xml
@@ -25,6 +25,7 @@ Remember, Classified fees are non-refundable.
</text>
<spinner
decimal_digits="0"
+ allow_digits_only="true"
follows="left|top"
font="SansSerif"
halign="left"
@@ -36,7 +37,6 @@ Remember, Classified fees are non-refundable.
layout="topleft"
left="15"
value="50"
- min_val="50"
max_val="999999"
name="price_for_listing"
top_pad="10"