diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index bc6a85abe7..7c731ccda2 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -1175,6 +1175,17 @@ Value 0 + BlockAttachmentKillsOnTeleport + + Comment + Ignore all attachment object kills during teleport + Persist + 1 + Type + Boolean + Value + 1 + BlockAvatarAppearanceMessages Comment diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 234036d340..37a58ba642 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -3654,13 +3654,14 @@ void process_kill_object(LLMessageSystem *mesgsys, void **user_data) LLViewerObject *objectp = gObjectList.findObject(id); if (objectp) { -//// [SL:KB] - Patch: Appearance-TeleportAttachKill | Checked: Catznip-4.0 -// if ( (objectp->isAttachment()) && (gAgentAvatarp) && (gAgent.getTeleportState() != LLAgent::TELEPORT_NONE) && (objectp->permYouOwner()) ) -// { -// gAgentAvatarp->addPendingDetach(objectp->getRootEdit()->getID()); -// continue; -// } -//// [/SL:KB] +// [SL:KB] - Patch: Appearance-TeleportAttachKill | Checked: Catznip-4.0 + if ( (objectp->isAttachment()) && (!objectp->isTempAttachment()) && (LLAgent::TELEPORT_NONE != gAgent.getTeleportState()) && + (gAgentAvatarp) && (objectp->permYouOwner()) && (gSavedSettings.getBOOL("BlockAttachmentKillsOnTeleport")) ) + { + //gAgentAvatarp->addPendingDetach(objectp->getRootEdit()->getID()); + continue; + } +// [/SL:KB] // Display green bubble on kill if ( gShowObjectUpdates )