summaryrefslogtreecommitdiff
path: root/indra/llcommon
diff options
context:
space:
mode:
authorRobert Knop <prospero@lindenlab.com>2008-12-04 22:36:34 +0000
committerRobert Knop <prospero@lindenlab.com>2008-12-04 22:36:34 +0000
commit189599b6ff0c4e6b81e761fbc990c057189359f2 (patch)
tree1e9e0e91bae9bb1ee53e57ac91cdbbfc9f6dba95 /indra/llcommon
parentfd46865a502036b9e4414e7ec4950faf551b1f14 (diff)
Merging from server/server-1.25 back to trunk.
svn merge -r99446:104838 svn+ssh://svn.lindenlab.com/svn/linden/branches/server/server-1.25 Conflicts resolved by Prospero, except for one scary conflict in SendConfirmationEmail.php which was resolved by jarv.
Diffstat (limited to 'indra/llcommon')
-rw-r--r--indra/llcommon/indra_constants.h13
-rw-r--r--indra/llcommon/llapp.cpp26
-rw-r--r--indra/llcommon/llapp.h8
-rw-r--r--indra/llcommon/llversionserver.h4
4 files changed, 41 insertions, 10 deletions
diff --git a/indra/llcommon/indra_constants.h b/indra/llcommon/indra_constants.h
index a3e3aec360..c13113a9f2 100644
--- a/indra/llcommon/indra_constants.h
+++ b/indra/llcommon/indra_constants.h
@@ -4,7 +4,7 @@
*
* $LicenseInfo:firstyear=2001&license=viewergpl$
*
- * Copyright (c) 2001-2007, Linden Research, Inc.
+ * Copyright (c) 2001-2008, Linden Research, Inc.
*
* Second Life Viewer Source Code
* The source code in this file ("Source Code") is provided by Linden Lab
@@ -77,6 +77,14 @@ enum LAND_STAT_REPORT_TYPE
const U32 STAT_FILTER_MASK = 0x1FFFFFFF;
+// Region absolute limits
+static const S32 REGION_AGENT_COUNT_MIN = 1;
+static const S32 REGION_AGENT_COUNT_MAX = 200; // Must fit in U8 for the moment (RegionInfo msg)
+static const S32 REGION_PRIM_COUNT_MIN = 0;
+static const S32 REGION_PRIM_COUNT_MAX = 40000;
+static const F32 REGION_PRIM_BONUS_MIN = 1.0;
+static const F32 REGION_PRIM_BONUS_MAX = 10.0;
+
// Default maximum number of tasks/prims per region.
const U32 DEFAULT_MAX_REGION_WIDE_PRIM_COUNT = 15000;
@@ -229,10 +237,11 @@ const S32 KEY_COUNT = 256;
const F32 DEFAULT_WATER_HEIGHT = 20.0f;
// Maturity ratings for simulators
-const U8 SIM_ACCESS_MIN = 0;
+const U8 SIM_ACCESS_MIN = 0; // Treated as 'unknown', usually ends up being SIM_ACCESS_PG
const U8 SIM_ACCESS_TRIAL = 7;
const U8 SIM_ACCESS_PG = 13;
const U8 SIM_ACCESS_MATURE = 21;
+const U8 SIM_ACCESS_ADULT = 42; // Seriously Adult Only
const U8 SIM_ACCESS_DOWN = 254;
const U8 SIM_ACCESS_MAX = SIM_ACCESS_MATURE;
diff --git a/indra/llcommon/llapp.cpp b/indra/llcommon/llapp.cpp
index 8826251617..c2f93b51ac 100644
--- a/indra/llcommon/llapp.cpp
+++ b/indra/llcommon/llapp.cpp
@@ -89,6 +89,12 @@ LLAppChildCallback LLApp::sDefaultChildCallback = NULL;
LLApp::LLApp() : mThreadErrorp(NULL)
{
+ commonCtor();
+ startErrorThread();
+}
+
+void LLApp::commonCtor()
+{
// Set our status to running
setStatus(APP_STATUS_RUNNING);
@@ -96,9 +102,9 @@ LLApp::LLApp() : mThreadErrorp(NULL)
#if !LL_WINDOWS
// This must be initialized before the error handler.
- sSigChildCount = new LLAtomicU32(0);
+ sSigChildCount = new LLAtomicU32(0);
#endif
-
+
// Setup error handling
setupErrorHandling();
@@ -118,6 +124,13 @@ LLApp::LLApp() : mThreadErrorp(NULL)
// Set the application to this instance.
sApplication = this;
+
+}
+
+LLApp::LLApp(LLErrorThread *error_thread) :
+ mThreadErrorp(error_thread)
+{
+ commonCtor();
}
@@ -261,17 +274,20 @@ void LLApp::setupErrorHandling()
#endif
+}
+
+void LLApp::startErrorThread()
+{
//
// Start the error handling thread, which is responsible for taking action
// when the app goes into the APP_STATUS_ERROR state
//
- llinfos << "LLApp::setupErrorHandling - Starting error thread" << llendl;
+ llinfos << "Starting error thread" << llendl;
mThreadErrorp = new LLErrorThread();
mThreadErrorp->setUserData((void *) this);
- mThreadErrorp->start();
+ mThreadErrorp->start();
}
-
void LLApp::setErrorHandler(LLAppErrorHandler handler)
{
LLApp::sErrorHandler = handler;
diff --git a/indra/llcommon/llapp.h b/indra/llcommon/llapp.h
index c5a1546883..4142f8ece2 100644
--- a/indra/llcommon/llapp.h
+++ b/indra/llcommon/llapp.h
@@ -77,6 +77,11 @@ public:
LLApp();
virtual ~LLApp();
+protected:
+ LLApp(LLErrorThread* error_thread);
+ void commonCtor();
+public:
+
/**
* @brief Return the static app instance if one was created.
*/
@@ -245,8 +250,9 @@ protected:
void stepFrame();
private:
+ void startErrorThread();
+
void setupErrorHandling(); // Do platform-specific error-handling setup (signals, structured exceptions)
-
static void runErrorHandler(); // run shortly after we detect an error, ran in the relatively robust context of the LLErrorThread - preferred.
static void runSyncErrorHandler(); // run IMMEDIATELY when we get an error, ran in the context of the faulting thread.
diff --git a/indra/llcommon/llversionserver.h b/indra/llcommon/llversionserver.h
index aa3d580dc1..2b5c48fd15 100644
--- a/indra/llcommon/llversionserver.h
+++ b/indra/llcommon/llversionserver.h
@@ -33,9 +33,9 @@
#define LL_LLVERSIONSERVER_H
const S32 LL_VERSION_MAJOR = 1;
-const S32 LL_VERSION_MINOR = 25;
+const S32 LL_VERSION_MINOR = 26;
const S32 LL_VERSION_PATCH = 0;
-const S32 LL_VERSION_BUILD = 104413;
+const S32 LL_VERSION_BUILD = 103578;
const char * const LL_CHANNEL = "Second Life Server";