From d28ebb79205508311c6d6a8bf8ef1581d8c92307 Mon Sep 17 00:00:00 2001
From: David Seikel
Date: Mon, 9 May 2011 11:30:55 +1000
Subject: Fix the SL creator check. I fixed this wrong last time.
---
linden/indra/newview/primbackup.cpp | 42 +++++++++++-----------
.../skins/default/xui/en-us/notifications.xml | 7 ----
2 files changed, 21 insertions(+), 28 deletions(-)
diff --git a/linden/indra/newview/primbackup.cpp b/linden/indra/newview/primbackup.cpp
index f7f1345..a534cef 100644
--- a/linden/indra/newview/primbackup.cpp
+++ b/linden/indra/newview/primbackup.cpp
@@ -346,12 +346,32 @@ void primbackup::pre_export_object()
}
+// This is the central place where exporting permissions checks are done.
+
// static
bool primbackup::check_perms( LLSelectNode* node )
{
LLPermissions *perms = node->mPermissions;
+
+ // Exporting other content) from Second Life
+ // without checking creator is a violation of the Second Life
+ // Policy on Third-Party Viewers and Terms of Service.
+ // Coz LL are paranoid about other grids getting useful content.
+ // This is probably illegal with respect to open source content,
+ // it usually has licenses designed to prevent third parties (LL)
+ // from restricting copying.
+ // This is the meta-impy viewer, we don't care about LL's broken policies
+ // and we really don't care for LL imposing their own restrictions
+ // on content that the content author did not want.
+ if(gHippoGridManager->getConnectedGrid()->isSecondLife())
+ {
+ return (gAgent.getID() == perms->getOwner() &&
+ gAgent.getID() == perms->getCreator() &&
+ (PERM_ITEM_UNRESTRICTED &
+ perms->getMaskOwner()) == PERM_ITEM_UNRESTRICTED);
+ }
+
return (gAgent.getID() == perms->getOwner() &&
- gAgent.getID() == perms->getCreator() &&
(PERM_ITEM_UNRESTRICTED &
perms->getMaskOwner()) == PERM_ITEM_UNRESTRICTED);
}
@@ -377,10 +397,6 @@ void primbackup::exportworker(void *userdata)
if(LLSelectMgr::getInstance()->getSelection()->applyToNodes(&func,false))
{
- if(gHippoGridManager->getConnectedGrid()->isSecondLife())
- {
- LLNotifications::instance().add("NoTextureExportSL");
- }
primbackup::getInstance()->export_state=EXPORT_STRUCTURE;
}
else
@@ -420,22 +436,6 @@ void primbackup::exportworker(void *userdata)
}
case EXPORT_TEXTURES: {
- // Exporting object textures (or other content) from Second Life
- // without checking creator is a violation of the Second Life
- // Policy on Third-Party Viewers and Terms of Service.
- // Coz LL are paranoid about other grids getting useful content.
- // This is probably illegal with respect to open source content,
- // it usually has licenses designed to prevent third parties (LL)
- // from restricting copying.
- // This is the meta-impy viewer, we don't care about LL's broken policies
- // and we really don't care for LL imposing their own restrictions
- // on content that the content author did not want.
-// if(gHippoGridManager->getConnectedGrid()->isSecondLife())
-// {
-// primbackup::getInstance()->export_state=EXPORT_DONE;
-// return;
-// }
-
if(primbackup::getInstance()->m_nexttextureready==false)
return;
diff --git a/linden/indra/newview/skins/default/xui/en-us/notifications.xml b/linden/indra/newview/skins/default/xui/en-us/notifications.xml
index 9ff00a4..5132050 100644
--- a/linden/indra/newview/skins/default/xui/en-us/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/notifications.xml
@@ -7280,13 +7280,6 @@ Shadows cannot be enabled due to your graphics settings being set too low. Make
-Note: To comply with the Second Life Terms of Service, Imprudence did not download any texture files for the exported object(s).
-
-
-
--
cgit v1.1