diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index aafd0dabe15a76b39be5e92bc2a7529cd34993ba..7e5b2d9483c1e8397f7216fe0cbb6c51234bb346 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -67,6 +67,17 @@ <key>Value</key> <integer>0</integer> </map> + <key>RLVaDebugHideUnsetDuplicate</key> + <map> + <key>Comment</key> + <string>Suppresses reporting "unset" or "duplicate" command restrictions when RestrainedLoveDebug is TRUE</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>0</integer> + </map> <key>RLVaEnableCompositeFolders</key> <map> <key>Comment</key> diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 79aab877c986bfab23b65e9db8c296357b4ab796..e1dc19737250e348436784ab1b93ed78019d8e39 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -3350,7 +3350,9 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) std::string strCmd = *itToken; ERlvCmdRet eRet = gRlvHandler.processCommand(from_id, strCmd, true); - if (RlvSettings::getDebug()) + if ( (RlvSettings::getDebug()) && + ( (!RlvSettings::getDebugHideUnsetDup()) || + ((RLV_RET_SUCCESS_UNSET != eRet) && (RLV_RET_SUCCESS_DUPLICATE != eRet)) ) ) { if ( RLV_RET_SUCCESS == (eRet & RLV_RET_SUCCESS) ) pstr = &strExecuted; @@ -3377,7 +3379,7 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) if (RlvForceWear::instanceExists()) RlvForceWear::instance().done(); - if (!RlvSettings::getDebug()) + if ( (!RlvSettings::getDebug()) || ((strExecuted.empty()) && (strFailed.empty()) && (strRetained.empty())) ) return; // Silly people want comprehensive debug messages, blah :p @@ -3396,7 +3398,7 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) verb = " retained: @"; mesg = strRetained; } - else + else { verb = ": @"; if (!strExecuted.empty()) diff --git a/indra/newview/rlvcommon.h b/indra/newview/rlvcommon.h index 7d4653480198f57be211d694ed7e271e8944e4b8..6fb2a9a880dc6af9b9c3a16e924065a53df6e74f 100644 --- a/indra/newview/rlvcommon.h +++ b/indra/newview/rlvcommon.h @@ -53,6 +53,7 @@ public: static BOOL getNoSetEnv() { return fNoSetEnv; } static BOOL getDebugUIEnablers() { return rlvGetSettingBOOL(RLV_SETTING_DEBUGUIENABLERS, FALSE); } + static BOOL getDebugHideUnsetDup() { return rlvGetSettingBOOL(RLV_SETTING_DEBUGHIDEUNSETDUP, FALSE); } #ifdef RLV_EXPERIMENTAL_COMPOSITEFOLDERS static BOOL getEnableComposites() { return fCompositeFolders; } #endif // RLV_EXPERIMENTAL_COMPOSITEFOLDERS diff --git a/indra/newview/rlvdefines.h b/indra/newview/rlvdefines.h index 01286071b1eac2f0b5fca44ffc383a566890d763..e4b44e9095cddcbed98817d97e6e89a2301aa5be 100644 --- a/indra/newview/rlvdefines.h +++ b/indra/newview/rlvdefines.h @@ -281,6 +281,7 @@ enum ERlvAttachGroupType #define RLV_SETTING_CREATEOUTFITFOLDERS "RLVaCreateFoldersOnSaveOutfit" #define RLV_SETTING_DEBUGUIENABLERS "RLVaDebugUIEnablers" +#define RLV_SETTING_DEBUGHIDEUNSETDUP "RLVaDebugHideUnsetDuplicate" #define RLV_SETTING_ENABLECOMPOSITES "RLVaEnableCompositeFolders" #define RLV_SETTING_ENABLELEGACYNAMING "RLVaEnableLegacyNaming" #define RLV_SETTING_ENABLESHAREDWEAR "RLVaEnableSharedWear"