summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Knop <prospero@lindenlab.com>2009-01-08 16:56:35 +0000
committerRobert Knop <prospero@lindenlab.com>2009-01-08 16:56:35 +0000
commitcc2f19ebd084c309be77ff1e4c8ed4b001cbdb36 (patch)
tree7e06494710a706bc8706d604413acca46aa5e758
parent3a5dd71ad60275d0567ceef5ef5f3405c57ba722 (diff)
svn merge -r104838:107352 svn+ssh://svn.lindenlab.com/svn/linden/branches/server/server-1.25
NOTE : also ran scripts/update_version_files.py --verbose --server --server_channel="Second Life Server" to update server version information before doing a compile test. Committed with the results of this version file update. Conflicts resolved by prospero: scripts/maintenance/update-groups.py : kept the trunk version (was merged from Rad Chillies) scripts/make_deploy_group.py : merge by hand (I'm the one to do this, anyway) indra/llcommon/llversionserver.h : kept trunk version indra/newsim/llgettaskstats.cpp : kept trunk version. (svn revert)This was imported late into 1.25, after the branch merged into trunk, and no changes were made in the 1.25 branch after the import. indra/newsim/llparcelstats.cpp : same as llgettaskstats.cpp indra/newsim/llscriptcounter.h : same as llgettaskstats.cpp indra/newsim/llagentinfo.cpp : like llgettaskstats.cpp, but more complicated as some of soft's God-logging that came from 1.24->1.25 was in here. Fortunately, the conflict was trivial (missing include) idnra/newsim/simulator.cpp : one small conflict. Kept the 1.25 version of SKU/product stuff, as it was likely part of the homestead stuff that was recently put into 1.25. However, there was some code after that in the merge conflict that had been removed from trunk that I also removed in the resolution. This code is 27 lines starting at the comment "Asset cache service", as can be found in the server-1.25 branch. indra/newsim/tests/fakeobjects.h : kept the trunk version. No changes to 1.25 after parcel stats merge, except for a compile error fixed by andrew about which he warned there would be merge issues... indra/newsim/tests/llgettaskstats_test.cpp : same as llgettaskstats.cpp indra/newsim/tests/lllslmanager_tests.cpp : same as llgettaskstats.cpp indra/newsim/tests/llparcelstats_test.cpp : same as llgettaskstats.cpp indra/newsim/llgettaskstats.h : same as llgettaskstats.cpp indra/newsim/llparcelstats.h : same as llgettaskstats.cpp indra/newsim/llscriptdata.cpp : same as llgettaskstats.cpp, except for a fix that josh made both to trunk and 1.25 indra/newsim/llscriptdata.h : same as llscriptdata.cpp indra/newsim/llscriptcounter.cpp : same as llgettaskstats.cpp indra/newsim/CMakeLists.txt : similar to llgettaskstats.cpp, except that there was an additional change to trunk (so doing "svn revert" to keep trunk is still the right thing) indra/backbone/multiagentchat.py : where there were conflicts, kept the server-1.25 version. Phoenix had put in some fixes for dealing with omissions of the accept header in the 1.25 branch. indra/backbone/group_linden_dollar.py : similar to multiagentchat.py. All but one or two conflicts were utterly trivial (missing blank line) indra/backbone/agent_linden_dollar.py : all merge conflicts were utterly trivial (missing blank line); I'm surprised svn got all fussy about them. indra/lib/python : conflict was because the externals had been futzed with in 1.25 during debugging of backbone memory bloat. Kept the externals as in trunk.
-rw-r--r--indra/llcommon/llversionserver.h2
-rw-r--r--indra/llmessage/llcachename.cpp224
-rw-r--r--indra/llmessage/llcachename.h14
-rw-r--r--indra/newview/English.lproj/InfoPlist.strings4
-rw-r--r--indra/newview/Info-SecondLife.plist2
-rw-r--r--indra/newview/res/viewerRes.rc8
6 files changed, 18 insertions, 236 deletions
diff --git a/indra/llcommon/llversionserver.h b/indra/llcommon/llversionserver.h
index 381e73a7e2..473751fd96 100644
--- a/indra/llcommon/llversionserver.h
+++ b/indra/llcommon/llversionserver.h
@@ -36,7 +36,7 @@
const S32 LL_VERSION_MAJOR = 1;
const S32 LL_VERSION_MINOR = 26;
const S32 LL_VERSION_PATCH = 0;
-const S32 LL_VERSION_BUILD = 103578;
+const S32 LL_VERSION_BUILD = 107351;
const char * const LL_CHANNEL = "Second Life Server";
diff --git a/indra/llmessage/llcachename.cpp b/indra/llmessage/llcachename.cpp
index 3d4f24abc7..21c0e579ac 100644
--- a/indra/llmessage/llcachename.cpp
+++ b/indra/llmessage/llcachename.cpp
@@ -42,8 +42,7 @@
#include "llsdserialize.h"
#include "lluuid.h"
#include "message.h"
-#include "llservicebuilder.h"
-#include "llframetimer.h"
+
// Constants
static const std::string CN_WAITING("(Loading...)"); // *TODO: translate
static const std::string CN_NOBODY("(nobody)"); // *TODO: translate
@@ -198,8 +197,6 @@ class LLCacheName::Impl
public:
LLMessageSystem* mMsg;
LLHost mUpstreamHost;
- std::string mGroupNameURL;
- std::string mAgentNameURL;
Cache mCache;
// the map of UUIDs to names
@@ -225,8 +222,6 @@ public:
void processPendingReplies();
void sendRequest(const char* msg_name, const AskQueue& queue);
bool isRequestPending(const LLUUID& id);
- void getAgentName(const AskQueue&);
- void getGroupName(const AskQueue&);
// Message system callbacks.
void processUUIDRequest(LLMessageSystem* msg, bool isGroup);
@@ -240,35 +235,6 @@ public:
void notifyObservers(const LLUUID& id, const std::string& first, const std::string& last, BOOL group);
};
-class LLHTTPAgentNamesResponse : public LLHTTPClient::Responder
-{
-public:
- LLHTTPAgentNamesResponse(const LLSD& agent_ids)
- : mAgentIDs(agent_ids)
- { }
- void result(const LLSD& content);
-private:
- LLHost mSender;
- LLSD mAgentIDs;
-
-};
-
-class LLHTTPGroupNamesResponse : public LLHTTPClient::Responder
-{
-public:
- LLHTTPGroupNamesResponse(const LLSD& group_ids)
- : mGroupIDs(group_ids)
- { };
-
- void result(const LLSD& content);
-private:
- LLHost mSender;
- LLSD mGroupIDs;
-
-};
-
-
-
/// --------------------------------------------------------------------------
/// class LLCacheName
@@ -354,57 +320,6 @@ void LLCacheName::cancelCallback(const LLUUID& id, LLCacheNameCallback callback,
}
}
-void LLCacheName::sendAgentNames(const LLUUID& id, std::string& first, std::string& last)
-{
-
- LLCacheNameEntry* entry = get_ptr_in_map(impl.mCache, id);
- if (!entry)
- {
- entry = new LLCacheNameEntry;
- impl.mCache[id] = entry;
-
- }
- entry->mIsGroup = false;
- entry->mCreateTime = (U32)LLFrameTimer::getTotalSeconds();
- //entry->mFirstName = first;
- //entry->mLastName = last;
- //LLStringUtil::truncate(entry->mFirstName, DB_FIRST_NAME_BUF_SIZE);
- //LLStringUtil::truncate(entry->mLastName, DB_LAST_NAME_BUF_SIZE);
- entry->mFirstName = std::string(first, DB_FIRST_NAME_BUF_SIZE);
- entry->mLastName = std::string(last, DB_LAST_NAME_BUF_SIZE);
-
- impl.mPendingQueue.erase(id);
- impl.notifyObservers(id,
- entry->mFirstName, entry->mLastName,
- FALSE);
-
-}
-
-void LLCacheName::sendGroupNames(const LLUUID& id, std::string& name)
-{
-
- LLCacheNameEntry* entry = get_ptr_in_map(impl.mCache, id);
- if (!entry)
- {
- entry = new LLCacheNameEntry;
- impl.mCache[id] = entry;
-
- }
-
- entry->mIsGroup = true;
- entry->mCreateTime = (U32)time(NULL);
-
- entry->mGroupName = std::string(name, DB_GROUP_NAME_BUF_SIZE);
-
- impl.mPendingQueue.erase(id);
-
- impl.notifyObservers(id,
- entry->mFirstName, entry->mLastName,
- FALSE);
-
-
-}
-
void LLCacheName::importFile(LLFILE* fp)
{
S32 count = 0;
@@ -610,16 +525,6 @@ BOOL LLCacheName::getFullName(const LLUUID& id, std::string& fullname)
return res;
}
-void LLCacheName::setGroupURL(const std::string& group_url)
-{
- impl.mGroupNameURL = group_url;
-}
-
-void LLCacheName::setAgentURL(const std::string& agent_url)
-{
- impl.mAgentNameURL = agent_url;
-}
-
BOOL LLCacheName::getGroupName(const LLUUID& id, std::string& group)
{
if(id.isNull())
@@ -654,111 +559,6 @@ BOOL LLCacheName::getGroupName(const LLUUID& id, std::string& group)
}
}
-void LLCacheName::Impl::getAgentName(const AskQueue &queue)
-{
-
- // get the names from backbone module
- if(queue.empty())
- {
- return;
- }
-
- LLSD request;
- request["action"] = "GET";
- LLSD id_block = LLSD::emptyArray();
- AskQueue::const_iterator it = queue.begin();
- AskQueue::const_iterator end = queue.end();
- for(;it!=end;++it)
- {
- id_block.append(*it);
- }
- lldebugs<<LLSDOStreamer<LLSDNotationFormatter>(id_block) <<llendl;
-
- request["agents"] = id_block;
-
- LLHTTPClient::post(
- mAgentNameURL,
- request,
- new LLHTTPAgentNamesResponse(id_block));
-
-
- lldebugs<<"Service builder call to agent-name "<<mAgentNameURL<<llendl;
-
-}
-
-void LLHTTPAgentNamesResponse::result(const LLSD& content)
-{
- LLUUID id;
- lldebugs<<LLSDOStreamer<LLSDNotationFormatter>(content) <<llendl;
-
- LLSD::map_const_iterator iter = content.beginMap();
- for ( ; iter != content.endMap(); ++iter)
- {
- id.set((*iter).first);
- LLSD name = (*iter).second;
- LLCacheNameEntry* entry = new LLCacheNameEntry;
- entry->mIsGroup = FALSE;
- entry->mCreateTime = (U32)LLFrameTimer::getTotalSeconds();
- std::string first = name["first"];
- std::string last = name["last"];
- entry->mFirstName = std::string(first, DB_FIRST_NAME_BUF_SIZE);
- entry->mLastName = std::string(last, DB_LAST_NAME_BUF_SIZE);
-
- gCacheName->sendAgentNames(id,first,last);
- }
-}
-
-
-void LLCacheName::Impl::getGroupName(const AskQueue &queue)
-{
- // get the group names from backbone module
- if(queue.empty())
- {
- return;
- }
-
- LLSD request;
- request["action"] = "GET";
- LLSD id_block = LLSD::emptyArray();
- AskQueue::const_iterator it = queue.begin();
- AskQueue::const_iterator end = queue.end();
- for(;it!=end;++it)
- {
- id_block.append(*it);
- }
-
- request["groups"] = id_block;
-
- if(!mGroupNameURL.empty())
- {
- LLHTTPClient::post(
- mGroupNameURL,
- request,
- new LLHTTPGroupNamesResponse(id_block));
- }
- lldebugs<<"Service builder call to group-name "<< mGroupNameURL<<llendl;
-}
-
-void LLHTTPGroupNamesResponse::result(const LLSD& content)
-{
- lldebugs<<"Result"<<LLSDOStreamer<LLSDNotationFormatter>(content) << llendl;
- LLUUID id;
-
- LLSD::map_const_iterator iter = content.beginMap();
- for ( ; iter != content.endMap(); ++iter)
- {
-
- id.set((*iter).first);
- std::string name = (*iter).second.asString();
- LLCacheNameEntry* entry = new LLCacheNameEntry;
- entry->mIsGroup = TRUE;
- entry->mCreateTime = (U32)time(NULL);
- entry->mGroupName = std::string(name, DB_GROUP_NAME_BUF_SIZE);
- lldebugs<<"Group Name"<<name<<llendl;
- gCacheName->sendGroupNames(id,name);
- }
-}
-
// TODO: Make the cache name callback take a SINGLE std::string,
// not a separate first and last name.
void LLCacheName::get(const LLUUID& id, BOOL is_group, LLCacheNameCallback callback, void* user_data)
@@ -807,14 +607,12 @@ void LLCacheName::processPending()
return;
}
- /*
if(!impl.mUpstreamHost.isOk())
{
lldebugs << "LLCacheName::processPending() - bad upstream host."
<< llendl;
return;
}
- */
impl.processPendingAsks();
impl.processPendingReplies();
@@ -896,16 +694,8 @@ std::string LLCacheName::getDefaultName()
void LLCacheName::Impl::processPendingAsks()
{
- if (mUpstreamHost.isOk()) //its the vuewer asking for names send request to simulator
- {
- sendRequest(_PREHASH_UUIDNameRequest, mAskNameQueue);
- sendRequest(_PREHASH_UUIDGroupNameRequest, mAskGroupQueue);
- }
- else //its simulator asking for names ask the backbone
- {
- getAgentName(mAskNameQueue);
- getGroupName(mAskGroupQueue);
- }
+ sendRequest(_PREHASH_UUIDNameRequest, mAskNameQueue);
+ sendRequest(_PREHASH_UUIDGroupNameRequest, mAskGroupQueue);
mAskNameQueue.clear();
mAskGroupQueue.clear();
}
@@ -1026,15 +816,12 @@ void LLCacheName::Impl::processUUIDRequest(LLMessageSystem* msg, bool isGroup)
{
// You should only get this message if the cache is at the simulator
// level, hence having an upstream provider.
- // 03/31/2008 Simulator is talking to backbone and not dataserver
- // This check was for dataserver
- /*
if (!mUpstreamHost.isOk())
{
llwarns << "LLCacheName - got UUID name/group request, but no upstream provider!" << llendl;
return;
}
- */
+
LLHost fromHost = msg->getSender();
ReplySender sender(msg);
@@ -1105,8 +892,9 @@ void LLCacheName::Impl::processUUIDReply(LLMessageSystem* msg, bool isGroup)
msg->getStringFast(_PREHASH_UUIDNameBlock, _PREHASH_LastName, entry->mLastName, i);
}
else
- {
+ { // is group
msg->getStringFast(_PREHASH_UUIDNameBlock, _PREHASH_GroupName, entry->mGroupName, i);
+ LLStringFn::replace_nonprintable(entry->mGroupName, LL_UNKNOWN_CHAR);
}
if (!isGroup)
diff --git a/indra/llmessage/llcachename.h b/indra/llmessage/llcachename.h
index 31af5e6240..2757b86a7c 100644
--- a/indra/llmessage/llcachename.h
+++ b/indra/llmessage/llcachename.h
@@ -32,9 +32,7 @@
#ifndef LL_LLCACHENAME_H
#define LL_LLCACHENAME_H
-#include "llhttpclient.h"
-#include "llhost.h"
-#include "lluri.h"
+
class LLMessageSystem;
class LLHost;
class LLUUID;
@@ -100,15 +98,10 @@ public:
// This method needs to be called from time to time to send out
// requests.
void processPending();
- void setAgentURL(const std::string& url);
- void setGroupURL(const std::string& url);
-
+
// Expire entries created more than "secs" seconds ago.
void deleteEntriesOlderThan(S32 secs);
- //send the information retrived from backbone
- void sendAgentNames(const LLUUID& id, std::string& first, std::string& last);
- void sendGroupNames(const LLUUID& id, std::string& name);
// Debugging
void dump(); // Dumps the contents of the cache
void dumpStats(); // Dumps the sizes of the cache and associated queues.
@@ -119,9 +112,10 @@ private:
class Impl;
Impl& impl;
-
};
+
+
extern LLCacheName* gCacheName;
#endif
diff --git a/indra/newview/English.lproj/InfoPlist.strings b/indra/newview/English.lproj/InfoPlist.strings
index 2b72819653..85b64a8788 100644
--- a/indra/newview/English.lproj/InfoPlist.strings
+++ b/indra/newview/English.lproj/InfoPlist.strings
@@ -1,6 +1,6 @@
/* Localized versions of Info.plist keys */
CFBundleName = "Second Life";
-CFBundleShortVersionString = "Second Life version 1.21.6.100000";
-CFBundleGetInfoString = "Second Life version 1.21.6.100000, Copyright 2004-2008 Linden Research, Inc.";
+CFBundleShortVersionString = "Second Life version 1.23.0.0";
+CFBundleGetInfoString = "Second Life version 1.23.0.0, Copyright 2004-2008 Linden Research, Inc.";
diff --git a/indra/newview/Info-SecondLife.plist b/indra/newview/Info-SecondLife.plist
index 0a81611711..62082fe773 100644
--- a/indra/newview/Info-SecondLife.plist
+++ b/indra/newview/Info-SecondLife.plist
@@ -32,7 +32,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
- <string>1.21.6.100000</string>
+ <string>1.23.0.0</string>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
diff --git a/indra/newview/res/viewerRes.rc b/indra/newview/res/viewerRes.rc
index 152ff15d5d..b360871f20 100644
--- a/indra/newview/res/viewerRes.rc
+++ b/indra/newview/res/viewerRes.rc
@@ -231,8 +231,8 @@ TOOLMEDIAOPEN CURSOR "toolmediaopen.cur"
//
VS_VERSION_INFO VERSIONINFO
- FILEVERSION 1,21,6,100000
- PRODUCTVERSION 1,21,6,100000
+ FILEVERSION 1,23,0,0
+ PRODUCTVERSION 1,23,0,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@@ -249,12 +249,12 @@ BEGIN
BEGIN
VALUE "CompanyName", "Linden Lab"
VALUE "FileDescription", "Second Life"
- VALUE "FileVersion", "1.21.6.100000"
+ VALUE "FileVersion", "1.23.0.0"
VALUE "InternalName", "Second Life"
VALUE "LegalCopyright", "Copyright © 2001-2008, Linden Research, Inc."
VALUE "OriginalFilename", "SecondLife.exe"
VALUE "ProductName", "Second Life"
- VALUE "ProductVersion", "1.21.6.100000"
+ VALUE "ProductVersion", "1.23.0.0"
END
END
BLOCK "VarFileInfo"