diff options
Diffstat (limited to 'linden/indra/newview/llviewermessage.cpp')
-rw-r--r-- | linden/indra/newview/llviewermessage.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp index eb11acb..6dfd9fb 100644 --- a/linden/indra/newview/llviewermessage.cpp +++ b/linden/indra/newview/llviewermessage.cpp | |||
@@ -138,6 +138,8 @@ | |||
138 | #include "llviewerdisplay.h" | 138 | #include "llviewerdisplay.h" |
139 | #include "llkeythrottle.h" | 139 | #include "llkeythrottle.h" |
140 | 140 | ||
141 | #include "hippoLimits.h" | ||
142 | |||
141 | #include <boost/tokenizer.hpp> | 143 | #include <boost/tokenizer.hpp> |
142 | #include <boost/regex.hpp> // Boost Reg Expresions | 144 | #include <boost/regex.hpp> // Boost Reg Expresions |
143 | 145 | ||
@@ -654,7 +656,7 @@ bool join_group_response(const LLSD& notification, const LLSD& response) | |||
654 | if(option == 0 && !group_id.isNull()) | 656 | if(option == 0 && !group_id.isNull()) |
655 | { | 657 | { |
656 | // check for promotion or demotion. | 658 | // check for promotion or demotion. |
657 | S32 max_groups = MAX_AGENT_GROUPS; | 659 | S32 max_groups = gHippoLimits->getMaxAgentGroups(); |
658 | if(gAgent.isInGroup(group_id)) ++max_groups; | 660 | if(gAgent.isInGroup(group_id)) ++max_groups; |
659 | 661 | ||
660 | if(gAgent.mGroups.count() < max_groups) | 662 | if(gAgent.mGroups.count() < max_groups) |
@@ -3313,10 +3315,6 @@ void process_agent_movement_complete(LLMessageSystem* msg, void**) | |||
3313 | // appropriate. | 3315 | // appropriate. |
3314 | LLVector3 shift_vector = regionp->getPosRegionFromGlobal( | 3316 | LLVector3 shift_vector = regionp->getPosRegionFromGlobal( |
3315 | gAgent.getRegion()->getOriginGlobal()); | 3317 | gAgent.getRegion()->getOriginGlobal()); |
3316 | // don't shift objects, if teleporting more than about 1000 sims, as | ||
3317 | // for long teleports shifting objects garbles the view at the target region | ||
3318 | if (shift_vector.lengthSquared() > 6.5e10f) | ||
3319 | shift_vector = LLVector3::zero; | ||
3320 | gAgent.setRegion(regionp); | 3318 | gAgent.setRegion(regionp); |
3321 | gObjectList.shiftObjects(shift_vector); | 3319 | gObjectList.shiftObjects(shift_vector); |
3322 | gAssetStorage->setUpstream(msg->getSender()); | 3320 | gAssetStorage->setUpstream(msg->getSender()); |
@@ -3442,15 +3440,7 @@ void process_agent_movement_complete(LLMessageSystem* msg, void**) | |||
3442 | LLSD payload; | 3440 | LLSD payload; |
3443 | payload["message"] = version_channel; | 3441 | payload["message"] = version_channel; |
3444 | LLNotifications::instance().add("ServerVersionChanged", LLSD(), payload); | 3442 | LLNotifications::instance().add("ServerVersionChanged", LLSD(), payload); |
3445 | } | 3443 | gHippoLimits->setLimits(); |
3446 | |||
3447 | if (version_channel.find("OpenSim") != std::string::npos) | ||
3448 | { | ||
3449 | gSavedSettings.setBOOL("LoggedIntoOpenSim", TRUE); | ||
3450 | } | ||
3451 | else | ||
3452 | { | ||
3453 | gSavedSettings.setBOOL("LoggedIntoOpenSim", FALSE); | ||
3454 | } | 3444 | } |
3455 | 3445 | ||
3456 | gLastVersionChannel = version_channel; | 3446 | gLastVersionChannel = version_channel; |