diff options
| author | andreykproductengine <andreykproductengine@lindenlab.com> | 2018-08-22 19:32:50 +0300 | 
|---|---|---|
| committer | andreykproductengine <andreykproductengine@lindenlab.com> | 2018-08-22 19:32:50 +0300 | 
| commit | a1e6383b5f79a14d3394f5d849a1386ff72341c3 (patch) | |
| tree | 233cff4c6913a707ee8285907bfdda68273c0fe1 /indra/newview | |
| parent | c24f638088f3d67ceebe82520787a4d344ebd72f (diff) | |
MAINT-8926 Don't allow overwritting default preset
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llfloatersaveprefpreset.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llpresetsmanager.cpp | 5 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/notifications.xml | 7 | 
3 files changed, 18 insertions, 1 deletions
diff --git a/indra/newview/llfloatersaveprefpreset.cpp b/indra/newview/llfloatersaveprefpreset.cpp index 6320c6b626..684778c93a 100644 --- a/indra/newview/llfloatersaveprefpreset.cpp +++ b/indra/newview/llfloatersaveprefpreset.cpp @@ -34,6 +34,7 @@  #include "llfloaterreg.h"  #include "llnotificationsutil.h"  #include "llpresetsmanager.h" +#include "lltrans.h"  LLFloaterSavePrefPreset::LLFloaterSavePrefPreset(const LLSD &key)  :	LLFloater(key) @@ -86,7 +87,11 @@ void LLFloaterSavePrefPreset::onBtnSave()  {  	std::string name = mPresetCombo->getSimple(); -	if (!LLPresetsManager::getInstance()->savePreset(mSubdirectory, name)) +	if ((name == LLTrans::getString(PRESETS_DEFAULT)) || (name == PRESETS_DEFAULT)) +	{ +		LLNotificationsUtil::add("DefaultPresetNotSaved"); +	} +	else if (!LLPresetsManager::getInstance()->savePreset(mSubdirectory, name))  	{  		LLSD args;  		args["NAME"] = name; diff --git a/indra/newview/llpresetsmanager.cpp b/indra/newview/llpresetsmanager.cpp index 96818d5a21..df93572508 100644 --- a/indra/newview/llpresetsmanager.cpp +++ b/indra/newview/llpresetsmanager.cpp @@ -138,6 +138,11 @@ bool LLPresetsManager::savePreset(const std::string& subdirectory, std::string n  	{  		name = PRESETS_DEFAULT;  	} +	if (!createDefault && name == PRESETS_DEFAULT) +	{ +		LL_WARNS() << "Should not overwrite default" << LL_ENDL; +		return false; +	}  	bool saved = false;  	std::vector<std::string> name_list; diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index 6b164c660a..9eaa5330c3 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -8277,6 +8277,13 @@ Failed to save snapshot to [PATH]: Directory does not exist.      type="notifytip">  Error saving preset [NAME].    </notification> +     +  <notification +    icon="notifytip.tga" +    name="DefaultPresetNotSaved" +    type="notifytip"> +Can not overwrite default preset. +  </notification>    <notification      icon="notifytip.tga"  | 
