diff --git a/indra/newview/llappcorehttp.cpp b/indra/newview/llappcorehttp.cpp index 7dee309a62..a2f7f45fdc 100755 --- a/indra/newview/llappcorehttp.cpp +++ b/indra/newview/llappcorehttp.cpp @@ -36,6 +36,10 @@ #include "llsecapi.h" #include +#ifdef OPENSIM +#include "llviewernetwork.h" +#endif + // Here is where we begin to get our connection usage under control. // This establishes llcorehttp policy classes that, among other // things, limit the maximum number of connections to outside @@ -357,6 +361,20 @@ void LLAppCoreHttp::refreshSettings(bool initial) // Global pipelining setting bool pipeline_changed(false); static const std::string http_pipelining("HttpPipelining"); +// FIRE-17287: Force HttpPipelining off on OpenSim +#ifdef OPENSIM + if (LLGridManager::instance().isInOpenSim()) + { + if (mPipelined) + { + mPipelined = false; + pipeline_changed = true; + } + LL_INFOS() << "HTTP Pipelining is not supported on OpenSim - setting to disabled." << LL_ENDL; + } + else +#endif +// if (gSavedSettings.controlExists(http_pipelining)) { // Default to true (in ctor) if absent. diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index 4b2649bb56..d632923091 100755 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -1431,6 +1431,9 @@ bool idle_startup() progress += 0.02f; display_startup(); + // FIRE-17287: Force HttpPipelining off on OpenSim + LLAppViewer::instance()->getAppCoreHttp().refreshSettings(false); + // eLastExecEvent last_exec_event = gLastExecEvent; const std::string current_grid = LLGridManager::getInstance()->getGrid();