aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--linden/indra/newview/app_settings/settings.xml2
-rw-r--r--linden/indra/newview/llappviewer.cpp3
-rw-r--r--linden/indra/newview/llselectmgr.cpp29
-rw-r--r--linden/indra/newview/llviewermenufile.cpp5
4 files changed, 36 insertions, 3 deletions
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml
index aeb5c0b..b38bf9a 100644
--- a/linden/indra/newview/app_settings/settings.xml
+++ b/linden/indra/newview/app_settings/settings.xml
@@ -6683,7 +6683,7 @@
6683 <key>Comment</key> 6683 <key>Comment</key>
6684 <string>Double resolution of snapshot from current window resolution</string> 6684 <string>Double resolution of snapshot from current window resolution</string>
6685 <key>Persist</key> 6685 <key>Persist</key>
6686 <integer>1</integer> 6686 <integer>0</integer>
6687 <key>Type</key> 6687 <key>Type</key>
6688 <string>Boolean</string> 6688 <string>Boolean</string>
6689 <key>Value</key> 6689 <key>Value</key>
diff --git a/linden/indra/newview/llappviewer.cpp b/linden/indra/newview/llappviewer.cpp
index 2496d13..96fc451 100644
--- a/linden/indra/newview/llappviewer.cpp
+++ b/linden/indra/newview/llappviewer.cpp
@@ -1189,6 +1189,9 @@ bool LLAppViewer::cleanup()
1189 { //*might* crash imprudence TODO: fix the voiceclient instead 1189 { //*might* crash imprudence TODO: fix the voiceclient instead
1190 //this deletes all your buddies 1190 //this deletes all your buddies
1191 LLAvatarTracker::instance().reset(); 1191 LLAvatarTracker::instance().reset();
1192 // reset group data. Blame LL for the need to clear a member variable through a global
1193 LLGroupMgr::getInstance()->clearGroups();
1194 gAgent.mGroups.clear();
1192 } 1195 }
1193 1196
1194 //reset balance for not playing the UI-Sound 1197 //reset balance for not playing the UI-Sound
diff --git a/linden/indra/newview/llselectmgr.cpp b/linden/indra/newview/llselectmgr.cpp
index 83abcf4..1634950 100644
--- a/linden/indra/newview/llselectmgr.cpp
+++ b/linden/indra/newview/llselectmgr.cpp
@@ -64,6 +64,7 @@
64#include "llinventorymodel.h" 64#include "llinventorymodel.h"
65#include "llmenugl.h" 65#include "llmenugl.h"
66#include "llmutelist.h" 66#include "llmutelist.h"
67#include "llparcel.h" // RezWithLandGroup
67#include "llstatusbar.h" 68#include "llstatusbar.h"
68#include "llsurface.h" 69#include "llsurface.h"
69#include "lltool.h" 70#include "lltool.h"
@@ -77,6 +78,7 @@
77#include "llviewermenu.h" 78#include "llviewermenu.h"
78#include "llviewerobject.h" 79#include "llviewerobject.h"
79#include "llviewerobjectlist.h" 80#include "llviewerobjectlist.h"
81#include "llviewerparcelmgr.h" // RezWithLandGroup
80#include "llviewerregion.h" 82#include "llviewerregion.h"
81#include "llviewerstats.h" 83#include "llviewerstats.h"
82#include "llvoavatar.h" 84#include "llvoavatar.h"
@@ -3135,7 +3137,20 @@ void LLSelectMgr::packDuplicateOnRayHead(void *user_data)
3135 msg->nextBlockFast(_PREHASH_AgentData); 3137 msg->nextBlockFast(_PREHASH_AgentData);
3136 msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID() ); 3138 msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID() );
3137 msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID() ); 3139 msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID() );
3138 msg->addUUIDFast(_PREHASH_GroupID, gAgent.getGroupID() ); 3140 LLUUID group_id = gAgent.getGroupID();
3141 if (gSavedSettings.getBOOL("RezWithLandGroup"))
3142 {
3143 LLParcel *parcel = LLViewerParcelMgr::getInstance()->getAgentParcel();
3144 if (gAgent.isInGroup(parcel->getGroupID()))
3145 {
3146 group_id = parcel->getGroupID();
3147 }
3148 else if (gAgent.isInGroup(parcel->getOwnerID()))
3149 {
3150 group_id = parcel->getOwnerID();
3151 }
3152 }
3153 msg->addUUIDFast(_PREHASH_GroupID, group_id);
3139 msg->addVector3Fast(_PREHASH_RayStart, data->mRayStartRegion ); 3154 msg->addVector3Fast(_PREHASH_RayStart, data->mRayStartRegion );
3140 msg->addVector3Fast(_PREHASH_RayEnd, data->mRayEndRegion ); 3155 msg->addVector3Fast(_PREHASH_RayEnd, data->mRayEndRegion );
3141 msg->addBOOLFast(_PREHASH_BypassRaycast, data->mBypassRaycast ); 3156 msg->addBOOLFast(_PREHASH_BypassRaycast, data->mBypassRaycast );
@@ -3907,6 +3922,18 @@ void LLSelectMgr::packAgentAndSessionAndGroupID(void* user_data)
3907void LLSelectMgr::packDuplicateHeader(void* data) 3922void LLSelectMgr::packDuplicateHeader(void* data)
3908{ 3923{
3909 LLUUID group_id(gAgent.getGroupID()); 3924 LLUUID group_id(gAgent.getGroupID());
3925 if (gSavedSettings.getBOOL("RezWithLandGroup"))
3926 {
3927 LLParcel *parcel = LLViewerParcelMgr::getInstance()->getAgentParcel();
3928 if (gAgent.isInGroup(parcel->getGroupID()))
3929 {
3930 group_id = parcel->getGroupID();
3931 }
3932 else if (gAgent.isInGroup(parcel->getOwnerID()))
3933 {
3934 group_id = parcel->getOwnerID();
3935 }
3936 }
3910 packAgentAndSessionAndGroupID(&group_id); 3937 packAgentAndSessionAndGroupID(&group_id);
3911 3938
3912 LLDuplicateData* dup_data = (LLDuplicateData*) data; 3939 LLDuplicateData* dup_data = (LLDuplicateData*) data;
diff --git a/linden/indra/newview/llviewermenufile.cpp b/linden/indra/newview/llviewermenufile.cpp
index 364dcfd..432fcc5 100644
--- a/linden/indra/newview/llviewermenufile.cpp
+++ b/linden/indra/newview/llviewermenufile.cpp
@@ -43,6 +43,7 @@
43#include "llfloaternamedesc.h" 43#include "llfloaternamedesc.h"
44#include "llfloatersnapshot.h" 44#include "llfloatersnapshot.h"
45#include "llinventorymodel.h" // gInventory 45#include "llinventorymodel.h" // gInventory
46#include "llinventoryview.h" // open_texture()
46#include "llresourcedata.h" 47#include "llresourcedata.h"
47#include "llfloaterperms.h" 48#include "llfloaterperms.h"
48#include "llstatusbar.h" 49#include "llstatusbar.h"
@@ -875,7 +876,9 @@ void temp_upload_done_callback(const LLUUID& uuid, void* user_data, S32 result,
875 item->updateServer(TRUE); 876 item->updateServer(TRUE);
876 gInventory.updateItem(item); 877 gInventory.updateItem(item);
877 gInventory.notifyObservers(); 878 gInventory.notifyObservers();
878 }else // if(result >= 0) 879 open_texture(item_id, std::string("Texture: ") + item->getName(), TRUE, LLUUID::null, FALSE);
880 }
881 else // if(result >= 0)
879 { 882 {
880 LLSD args; 883 LLSD args;
881 args["FILE"] = LLInventoryType::lookupHumanReadable(data->mInventoryType); 884 args["FILE"] = LLInventoryType::lookupHumanReadable(data->mInventoryType);