summaryrefslogtreecommitdiff
path: root/indra/newview/llcommandhandler.cpp
diff options
context:
space:
mode:
authorRichard Linden <none@none>2011-03-30 14:24:36 -0700
committerRichard Linden <none@none>2011-03-30 14:24:36 -0700
commit5f4a85be9111793f25261b0551460e09e1656f18 (patch)
tree3a85977c765291c93710ecc59abd5ae717d72b91 /indra/newview/llcommandhandler.cpp
parent2f190297f0ff37452b3e966c0878e14a6aacc41b (diff)
parent84b179b0bf254ae039dfdba330d25ac2df1c0a67 (diff)
Automated merge with bundle:F:\code\viewer-social+c:\users\richard\appdata\local\temp\thg.l2uc4d\http__bitbucket.org_merov_linden_viewer-autobuild2010_j2aqwu.hg
Diffstat (limited to 'indra/newview/llcommandhandler.cpp')
-rwxr-xr-xindra/newview/llcommandhandler.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/indra/newview/llcommandhandler.cpp b/indra/newview/llcommandhandler.cpp
index 1b6ba02aac..bb1fb41fae 100755
--- a/indra/newview/llcommandhandler.cpp
+++ b/indra/newview/llcommandhandler.cpp
@@ -35,7 +35,7 @@
// system includes
#include <boost/tokenizer.hpp>
-#define THROTTLE_PERIOD 5 // required secs between throttled commands
+#define THROTTLE_PERIOD 20 // required secs between throttled commands
static LLCommandDispatcherListener sCommandDispatcherListener;
@@ -59,6 +59,7 @@ public:
const LLSD& params,
const LLSD& query_map,
LLMediaCtrl* web,
+ const std::string& nav_type,
bool trusted_browser);
private:
@@ -91,6 +92,7 @@ bool LLCommandHandlerRegistry::dispatch(const std::string& cmd,
const LLSD& params,
const LLSD& query_map,
LLMediaCtrl* web,
+ const std::string& nav_type,
bool trusted_browser)
{
static bool slurl_blocked = false;
@@ -120,6 +122,14 @@ bool LLCommandHandlerRegistry::dispatch(const std::string& cmd,
return true;
case LLCommandHandler::UNTRUSTED_THROTTLE:
+ // if users actually click on a link, we don't need to throttle it
+ // (throttling mechanism is used to prevent an avalanche of clicks via
+ // javascript
+ if ( nav_type == "clicked" )
+ {
+ break;
+ }
+
cur_time = LLTimer::getElapsedSeconds();
if (cur_time < last_throttle_time + THROTTLE_PERIOD)
{
@@ -166,10 +176,11 @@ bool LLCommandDispatcher::dispatch(const std::string& cmd,
const LLSD& params,
const LLSD& query_map,
LLMediaCtrl* web,
+ const std::string& nav_type,
bool trusted_browser)
{
return LLCommandHandlerRegistry::instance().dispatch(
- cmd, params, query_map, web, trusted_browser);
+ cmd, params, query_map, web, nav_type, trusted_browser);
}
static std::string lookup(LLCommandHandler::EUntrustedAccess value);