summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llcommon/indra_constants.cpp1
-rw-r--r--indra/llcommon/indra_constants.h2
-rw-r--r--indra/llcommon/llapp.cpp6
-rw-r--r--indra/llcrashlogger/llcrashlogger.cpp157
-rw-r--r--indra/newview/llappviewer.cpp18
-rw-r--r--indra/newview/llappviewer.h1
-rw-r--r--indra/newview/lldrawpoolavatar.cpp12
-rw-r--r--indra/newview/llviewertexture.cpp1
-rw-r--r--indra/newview/llviewertexture.h6
-rw-r--r--indra/newview/llviewertexturelist.cpp8
-rw-r--r--indra/newview/skins/default/xui/da/floater_about.xml6
-rw-r--r--indra/newview/skins/default/xui/de/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/en/menu_viewer.xml7
-rw-r--r--indra/newview/skins/default/xui/es/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/fr/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/it/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/ja/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/pl/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/pt/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/ru/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/tr/strings.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/strings.xml6
22 files changed, 171 insertions, 114 deletions
diff --git a/indra/llcommon/indra_constants.cpp b/indra/llcommon/indra_constants.cpp
index 1d094cd4f4..60721977cd 100644
--- a/indra/llcommon/indra_constants.cpp
+++ b/indra/llcommon/indra_constants.cpp
@@ -68,4 +68,3 @@ const LLUUID TERRAIN_ROCK_DETAIL ("53a2f406-4895-1d13-d541-d2e3b86bc19c"); // V
const LLUUID DEFAULT_WATER_NORMAL ("822ded49-9a6c-f61c-cb89-6df54f42cdf4"); // VIEWER
-const LLUUID IMG_BLACK_SQUARE ("3b39cc01-c2d1-e194-1181-e4404978b20c"); // On dataserver
diff --git a/indra/llcommon/indra_constants.h b/indra/llcommon/indra_constants.h
index 6d39aef32e..02f063f5e8 100644
--- a/indra/llcommon/indra_constants.h
+++ b/indra/llcommon/indra_constants.h
@@ -205,8 +205,6 @@ LL_COMMON_API extern const LLUUID TERRAIN_ROCK_DETAIL;
LL_COMMON_API extern const LLUUID DEFAULT_WATER_NORMAL;
-LL_COMMON_API extern const LLUUID IMG_BLACK_SQUARE;
-
// radius within which a chat message is fully audible
const F32 CHAT_NORMAL_RADIUS = 20.f;
diff --git a/indra/llcommon/llapp.cpp b/indra/llcommon/llapp.cpp
index 5a40845e7d..eb0699ad41 100644
--- a/indra/llcommon/llapp.cpp
+++ b/indra/llcommon/llapp.cpp
@@ -929,7 +929,7 @@ bool unix_minidump_callback(const google_breakpad::MinidumpDescriptor& minidump_
strncpy(path, minidump_desc.path(), remaining);
- LL_INFOS() << "generated minidump: " << LLApp::instance()->getMiniDumpFilename() << LL_ENDL;
+ LL_INFOS("CRASHREPORT") << "generated minidump: " << LLApp::instance()->getMiniDumpFilename() << LL_ENDL;
LLApp::runErrorHandler();
#ifndef LL_RELEASE_FOR_DOWNLOAD
@@ -975,7 +975,7 @@ bool unix_post_minidump_callback(const char *dump_dir,
strncpy(path, ".dmp", remaining);
}
- LL_INFOS() << "generated minidump: " << LLApp::instance()->getMiniDumpFilename() << LL_ENDL;
+ LL_INFOS("CRASHREPORT") << "generated minidump: " << LLApp::instance()->getMiniDumpFilename() << LL_ENDL;
LLApp::runErrorHandler();
#ifndef LL_RELEASE_FOR_DOWNLOAD
@@ -1019,7 +1019,7 @@ bool windows_post_minidump_callback(const wchar_t* dump_path,
strncpy(path, ".dmp", remaining);
}
- LL_INFOS() << "generated minidump: " << LLApp::instance()->getMiniDumpFilename() << LL_ENDL;
+ LL_INFOS("CRASHREPORT") << "generated minidump: " << LLApp::instance()->getMiniDumpFilename() << LL_ENDL;
// *NOTE:Mani - this code is stolen from LLApp, where its never actually used.
//OSMessageBox("Attach Debugger Now", "Error", OSMB_OK);
// *TODO: Translate the signals/exceptions into cross-platform stuff
diff --git a/indra/llcrashlogger/llcrashlogger.cpp b/indra/llcrashlogger/llcrashlogger.cpp
index 8e0a725954..fb47cf30da 100644
--- a/indra/llcrashlogger/llcrashlogger.cpp
+++ b/indra/llcrashlogger/llcrashlogger.cpp
@@ -56,6 +56,9 @@ BOOL gSent = false;
int LLCrashLogger::ssl_mutex_count = 0;
LLCoreInt::HttpMutex ** LLCrashLogger::ssl_mutex_list = NULL;
+#define CRASH_UPLOAD_RETRIES 3 /* seconds */
+#define CRASH_UPLOAD_TIMEOUT 180 /* seconds */
+
class LLCrashLoggerHandler : public LLHttpSDHandler
{
LOG_CLASS(LLCrashLoggerHandler);
@@ -162,6 +165,10 @@ bool LLCrashLogger::readFromXML(LLSD& dest, const std::string& filename )
log_file.close();
return true;
}
+ else
+ {
+ LL_WARNS("CRASHREPORT") << "Failed to open " << db_file_name << LL_ENDL;
+ }
return false;
}
@@ -194,6 +201,11 @@ bool LLCrashLogger::readMinidump(std::string minidump_path)
mCrashInfo["Minidump"] = data;
}
+ else
+ {
+ LL_WARNS("CRASHREPORT") << "failed to open minidump "<<minidump_path<<LL_ENDL;
+ }
+
return (length>0?true:false);
}
@@ -270,27 +282,36 @@ void LLCrashLogger::gatherFiles()
for(std::map<std::string, std::string>::iterator itr = mFileMap.begin(); itr != mFileMap.end(); ++itr)
{
- std::ifstream f((*itr).second.c_str());
- if(f.is_open())
+ std::string file = (*itr).second;
+ if (!file.empty())
{
- std::stringstream s;
- s << f.rdbuf();
-
- std::string crash_info = s.str();
- if(itr->first == "SecondLifeLog")
+ LL_DEBUGS("CRASHREPORT") << "trying to read " << itr->first << ": " << file << LL_ENDL;
+ std::ifstream f(file.c_str());
+ if(f.is_open())
{
- if(!mCrashInfo["DebugLog"].has("StartupState"))
+ std::stringstream s;
+ s << f.rdbuf();
+
+ std::string crash_info = s.str();
+ if(itr->first == "SecondLifeLog")
{
- mCrashInfo["DebugLog"]["StartupState"] = getStartupStateFromLog(crash_info);
+ if(!mCrashInfo["DebugLog"].has("StartupState"))
+ {
+ mCrashInfo["DebugLog"]["StartupState"] = getStartupStateFromLog(crash_info);
+ }
+ trimSLLog(crash_info);
}
- trimSLLog(crash_info);
- }
- mCrashInfo[(*itr).first] = LLStringFn::strip_invalid_xml(rawstr_to_utf8(crash_info));
+ mCrashInfo[(*itr).first] = LLStringFn::strip_invalid_xml(rawstr_to_utf8(crash_info));
+ }
+ else
+ {
+ LL_WARNS("CRASHREPORT") << "Failed to open file " << file << LL_ENDL;
+ }
}
else
{
- LL_WARNS("CRASHREPORT") << "Can't find file " << (*itr).second << LL_ENDL;
+ LL_DEBUGS("CRASHREPORT") << "empty file in list for " << itr->first << LL_ENDL;
}
}
@@ -301,20 +322,21 @@ void LLCrashLogger::gatherFiles()
if (has_minidump)
{
minidump_path = mDebugLog["MinidumpPath"].asString();
- }
-
- if (has_minidump)
- {
has_minidump = readMinidump(minidump_path);
}
+ else
+ {
+ LL_WARNS("CRASHREPORT") << "DebugLog does not have MinidumpPath" << LL_ENDL;
+ }
if (!has_minidump) //Viewer was probably so hosed it couldn't write remaining data. Try brute force.
{
- //Look for a filename at least 30 characters long in the dump dir which contains the characters MDMP as the first 4 characters in the file.
+ //Look for a filename at least 30 characters long in the dump dir which contains the characters MDMP as the first 4 characters in the file.
typedef std::vector<std::string> vec;
std::string pathname = gDirUtilp->getExpandedFilename(LL_PATH_DUMP,"");
+ LL_WARNS("CRASHREPORT") << "Searching for minidump in " << pathname << LL_ENDL;
vec file_vec = gDirUtilp->getFilesInDir(pathname);
- for(vec::const_iterator iter=file_vec.begin(); iter!=file_vec.end(); ++iter)
+ for(vec::const_iterator iter=file_vec.begin(); !has_minidump && iter!=file_vec.end(); ++iter)
{
if ( ( iter->length() > 30 ) && (iter->rfind(".dmp") == (iter->length()-4) ) )
{
@@ -330,15 +352,27 @@ void LLCrashLogger::gatherFiles()
minidump_path = *iter;
has_minidump = readMinidump(fullname);
mDebugLog["MinidumpPath"] = fullname;
- if (has_minidump)
- {
- break;
- }
}
+ else
+ {
+ LL_DEBUGS("CRASHREPORT") << "MDMP not found in " << fullname << LL_ENDL;
+ }
+ }
+ else
+ {
+ LL_DEBUGS("CRASHREPORT") << "failed to open " << fullname << LL_ENDL;
}
}
+ else
+ {
+ LL_DEBUGS("CRASHREPORT") << "Name does not match minidump name pattern " << *iter << LL_ENDL;
+ }
}
}
+ else
+ {
+ LL_WARNS("CRASHREPORT") << "readMinidump returned no minidump" << LL_ENDL;
+ }
}
LLSD LLCrashLogger::constructPostData()
@@ -442,13 +476,13 @@ bool LLCrashLogger::sendCrashLog(std::string dump_dir)
msg = msg+mCrashHost.c_str();
updateApplication(msg.c_str());
- sent = runCrashLogPost(mCrashHost, post_data, std::string("Sending to server"), 3, 5);
+ sent = runCrashLogPost(mCrashHost, post_data, std::string("Sending to server"), CRASH_UPLOAD_RETRIES, CRASH_UPLOAD_TIMEOUT);
}
if(!sent)
{
updateApplication("Using default server...");
- sent = runCrashLogPost(mAltCrashHost, post_data, std::string("Sending to default server"), 3, 5);
+ sent = runCrashLogPost(mAltCrashHost, post_data, std::string("Sending to default server"), CRASH_UPLOAD_RETRIES, CRASH_UPLOAD_TIMEOUT);
}
mSentCrashLogs = sent;
@@ -458,22 +492,63 @@ bool LLCrashLogger::sendCrashLog(std::string dump_dir)
bool LLCrashLogger::sendCrashLogs()
{
-
+ LLSD locks = mKeyMaster.getProcessList();
+ LLSD newlocks = LLSD::emptyArray();
+
LLSD opts = getOptionData(PRIORITY_COMMAND_LINE);
LLSD rec;
- if ( opts.has("dumpdir") )
+ if ( opts.has("pid") && opts.has("dumpdir") && opts.has("procname") )
{
rec["pid"]=opts["pid"];
rec["dumpdir"]=opts["dumpdir"];
rec["procname"]=opts["procname"];
}
- else
+
+ if (locks.isArray())
{
- return false;
- }
+ for (LLSD::array_iterator lock=locks.beginArray();
+ lock !=locks.endArray();
+ ++lock)
+ {
+ if ( (*lock).has("pid") && (*lock).has("dumpdir") && (*lock).has("procname") )
+ {
+ if ( mKeyMaster.isProcessAlive( (*lock)["pid"].asInteger(), (*lock)["procname"].asString() ) )
+ {
+ newlocks.append(*lock);
+ }
+ else
+ {
+ //TODO: This is a hack but I didn't want to include boost in another file or retest everything related to lldir
+ if (LLCrashLock::fileExists((*lock)["dumpdir"].asString()))
+ {
+ //the viewer cleans up the log directory on clean shutdown
+ //but is ignorant of the locking table.
+ if (!sendCrashLog((*lock)["dumpdir"].asString()))
+ {
+ newlocks.append(*lock); //Failed to send log so don't delete it.
+ }
+ else
+ {
+ mKeyMaster.cleanupProcess((*lock)["dumpdir"].asString());
+ }
+ }
+ }
+ }
+ else
+ {
+ LL_INFOS() << "Discarding corrupted entry from lock table." << LL_ENDL;
+ }
+ }
+ }
- return sendCrashLog(rec["dumpdir"].asString());
+ if (rec)
+ {
+ newlocks.append(rec);
+ }
+
+ mKeyMaster.putProcessList(newlocks);
+ return true;
}
void LLCrashLogger::updateApplication(const std::string& message)
@@ -510,6 +585,26 @@ bool LLCrashLogger::init()
LL_INFOS("CRASHREPORT") << "Crash reporter file rotation complete." << LL_ENDL;
+ // Handle locking
+ bool locked = mKeyMaster.requestMaster(); //Request master locking file. wait time is defaulted to 300S
+
+ while (!locked && mKeyMaster.isWaiting())
+ {
+ LL_INFOS("CRASHREPORT") << "Waiting for lock." << LL_ENDL;
+#if LL_WINDOWS
+ Sleep(1000);
+#else
+ sleep(1);
+#endif
+ locked = mKeyMaster.checkMaster();
+ }
+
+ if (!locked)
+ {
+ LL_WARNS("CRASHREPORT") << "Unable to get master lock. Another crash reporter may be hung." << LL_ENDL;
+ return false;
+ }
+
mCrashSettings.declareS32("CrashSubmitBehavior", CRASH_BEHAVIOR_ALWAYS_SEND,
"Controls behavior when viewer crashes "
"(0 = ask before sending crash report, "
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index aa152ffdd6..e7d2b19186 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -3613,9 +3613,9 @@ void getFileList()
void LLAppViewer::handleViewerCrash()
{
- LL_INFOS() << "Handle viewer crash entry." << LL_ENDL;
+ LL_INFOS("CRASHREPORT") << "Handle viewer crash entry." << LL_ENDL;
- LL_INFOS() << "Last render pool type: " << LLPipeline::sCurRenderPoolType << LL_ENDL ;
+ LL_INFOS("CRASHREPORT") << "Last render pool type: " << LLPipeline::sCurRenderPoolType << LL_ENDL ;
LLMemory::logMemoryInfo(true) ;
@@ -3723,30 +3723,36 @@ void LLAppViewer::handleViewerCrash()
#endif
char *minidump_file = pApp->getMiniDumpFilename();
-
+ LL_DEBUGS("CRASHREPORT") << "minidump file name " << minidump_file << LL_ENDL;
if(minidump_file && minidump_file[0] != 0)
{
gDebugInfo["Dynamic"]["MinidumpPath"] = minidump_file;
}
-#ifdef LL_WINDOWS
else
{
+#ifdef LL_WINDOWS
getFileList();
+#else
+ LL_WARNS("CRASHREPORT") << "no minidump file?" << LL_ENDL;
+#endif
}
-#endif
gDebugInfo["Dynamic"]["CrashType"]="crash";
if (gMessageSystem && gDirUtilp)
{
std::string filename;
filename = gDirUtilp->getExpandedFilename(LL_PATH_DUMP, "stats.log");
+ LL_DEBUGS("CRASHREPORT") << "recording stats " << filename << LL_ENDL;
llofstream file(filename.c_str(), std::ios_base::binary);
if(file.good())
{
- LL_INFOS() << "Handle viewer crash generating stats log." << LL_ENDL;
gMessageSystem->summarizeLogs(file);
file.close();
}
+ else
+ {
+ LL_WARNS("CRASHREPORT") << "problem recording stats" << LL_ENDL;
+ }
}
if (gMessageSystem)
diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h
index 539881c80e..b5e674bd7b 100644
--- a/indra/newview/llappviewer.h
+++ b/indra/newview/llappviewer.h
@@ -410,6 +410,7 @@ extern BOOL gPrintMessagesThisFrame;
extern LLUUID gSunTextureID;
extern LLUUID gMoonTextureID;
+extern LLUUID gBlackSquareID;
extern BOOL gRandomizeFramerate;
extern BOOL gPeriodicSlowFrame;
diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp
index d4f37e51ef..d1944856cb 100644
--- a/indra/newview/lldrawpoolavatar.cpp
+++ b/indra/newview/lldrawpoolavatar.cpp
@@ -50,6 +50,7 @@
#include "llrendersphere.h"
#include "llviewerpartsim.h"
#include "llviewercontrol.h" // for gSavedSettings
+#include "llviewertexturelist.h"
static U32 sDataMask = LLDrawPoolAvatar::VERTEX_DATA_MASK;
static U32 sBufferUsage = GL_STREAM_DRAW_ARB;
@@ -63,6 +64,7 @@ BOOL LLDrawPoolAvatar::sSkipTransparent = FALSE;
S32 LLDrawPoolAvatar::sDiffuseChannel = 0;
F32 LLDrawPoolAvatar::sMinimumAlpha = 0.2f;
+LLUUID gBlackSquareID;
static bool is_deferred_render = false;
static bool is_post_deferred_render = false;
@@ -1280,7 +1282,7 @@ void LLDrawPoolAvatar::renderAvatars(LLVOAvatar* single_avatar, S32 pass)
avatarp->mImpostor.bindTexture(1, specular_channel);
}
}
- avatarp->renderImpostor(LLColor4U(255,255,255,255), sDiffuseChannel);
+ avatarp->renderImpostor(avatarp->getMutedAVColor(), sDiffuseChannel);
}
return;
}
@@ -1811,12 +1813,8 @@ void LLDrawPoolAvatar::renderRigged(LLVOAvatar* avatar, U32 type, bool glow)
LLViewerTexture* specular = NULL;
if (LLPipeline::sImpostorRender)
{
- std::vector<LLViewerFetchedTexture*> found;
- LLViewerTextureManager::findFetchedTextures(IMG_BLACK_SQUARE, found);
- if (1 <= found.size())
- {
- specular = found[0];
- }
+ specular = LLViewerTextureManager::findFetchedTexture(gBlackSquareID, TEX_LIST_DISCARD);
+ llassert(NULL != specular);
}
else
{
diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp
index e2b8ff8e80..5a38ab5c9d 100644
--- a/indra/newview/llviewertexture.cpp
+++ b/indra/newview/llviewertexture.cpp
@@ -1117,6 +1117,7 @@ void LLViewerFetchedTexture::init(bool firstinit)
mLastCallBackActiveTime = 0.f;
mForceCallbackFetch = FALSE;
mInDebug = FALSE;
+ mUnremovable = FALSE;
mFTType = FTT_UNKNOWN;
}
diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h
index a3f8db6907..8017d82604 100644
--- a/indra/newview/llviewertexture.h
+++ b/indra/newview/llviewertexture.h
@@ -346,7 +346,10 @@ public:
bool updateFetch();
bool setDebugFetching(S32 debug_level);
- bool isInDebug() {return mInDebug;}
+ bool isInDebug() const { return mInDebug; }
+
+ void setUnremovable(BOOL value) { mUnremovable = value; }
+ bool isUnremovable() const { return mUnremovable; }
void clearFetchedResults(); //clear all fetched results, for debug use.
@@ -435,6 +438,7 @@ private:
private:
BOOL mFullyLoaded;
BOOL mInDebug;
+ BOOL mUnremovable;
BOOL mInFastCacheList;
BOOL mForceCallbackFetch;
diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp
index 9ee5ed758f..be80fab8d2 100644
--- a/indra/newview/llviewertexturelist.cpp
+++ b/indra/newview/llviewertexturelist.cpp
@@ -184,6 +184,12 @@ void LLViewerTextureList::doPreloadImages()
mImagePreloads.insert(image);
}
+ LLPointer<LLImageRaw> img_blak_square_tex(new LLImageRaw(2, 2, 3));
+ memset(img_blak_square_tex->getData(), 0, img_blak_square_tex->getDataSize());
+ LLPointer<LLViewerFetchedTexture> img_blak_square(new LLViewerFetchedTexture(img_blak_square_tex, FTT_DEFAULT, FALSE));
+ gBlackSquareID = img_blak_square->getID();
+ img_blak_square->setUnremovable(TRUE);
+ addImage(img_blak_square, TEX_LIST_DISCARD);
}
static std::string get_texture_list_name()
@@ -854,7 +860,7 @@ void LLViewerTextureList::updateImagesDecodePriorities()
LLPointer<LLViewerFetchedTexture> imagep = iter->second;
++iter; // safe to increment now
- if(imagep->isInDebug())
+ if(imagep->isInDebug() || imagep->isUnremovable())
{
update_counter--;
continue; //is in debug, ignore.
diff --git a/indra/newview/skins/default/xui/da/floater_about.xml b/indra/newview/skins/default/xui/da/floater_about.xml
index 8ed0b629e4..8c0b5748de 100644
--- a/indra/newview/skins/default/xui/da/floater_about.xml
+++ b/indra/newview/skins/default/xui/da/floater_about.xml
@@ -4,9 +4,6 @@
[APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</floater.string>
- <floater.string name="AboutCompiler">
- Bygget med [COMPILER] version [COMPILER_VERSION]
- </floater.string>
<floater.string name="AboutPosition">
Du er ved [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] i regionen [REGION] lokaliseret ved &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
[SERVER_VERSION]
@@ -25,10 +22,9 @@ Grafik kort: [GRAPHICS_CARD]
<floater.string name="AboutLibs">
OpenGL Version: [OPENGL_VERSION]
-libcurl Version: [LIBCURL_VERSION]
J2C Decoder Version: [J2C_VERSION]
Audio Driver Version: [AUDIO_DRIVER_VERSION]
-Qt Webkit Version: [QT_WEBKIT_VERSION]
+LLCEFLib/CEF Version: [LLCEFLIB_VERSION]
Voice Server Version: [VOICE_VERSION]
</floater.string>
<floater.string name="none">
diff --git a/indra/newview/skins/default/xui/de/strings.xml b/indra/newview/skins/default/xui/de/strings.xml
index 60226087ac..810022525a 100644
--- a/indra/newview/skins/default/xui/de/strings.xml
+++ b/indra/newview/skins/default/xui/de/strings.xml
@@ -38,12 +38,9 @@
Grafikinitialisierung fehlgeschlagen. Bitte aktualisieren Sie Ihren Grafiktreiber.
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</string>
- <string name="AboutCompiler">
- Kompiliert mit [COMPILER], Version [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Sie befinden sich an [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] in [REGION] auf &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -64,7 +61,6 @@ Grafikkarte: [GRAPHICS_CARD]
<string name="AboutLibs">
OpenGL-Version: [OPENGL_VERSION]
-libcurl-Version: [LIBCURL_VERSION]
J2C-Decoderversion: [J2C_VERSION]
Audiotreiberversion: [AUDIO_DRIVER_VERSION]
LLCEFLib/CEF-Version: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml
index dd39be344a..0a492fb37b 100644
--- a/indra/newview/skins/default/xui/en/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/en/menu_viewer.xml
@@ -180,13 +180,6 @@
function="Floater.ToggleOrBringToFront"
parameter="marketplace_listings" />
</menu_item_call>
- <menu_item_call
- label="Marketplace listings..."
- name="MarketplaceListings">
- <menu_item_call.on_click
- function="Floater.ToggleOrBringToFront"
- parameter="marketplace_listings" />
- </menu_item_call>
<menu_item_call
label="Account dashboard..."
name="Manage My Account">
diff --git a/indra/newview/skins/default/xui/es/strings.xml b/indra/newview/skins/default/xui/es/strings.xml
index a9c0a12262..ea6cea060b 100644
--- a/indra/newview/skins/default/xui/es/strings.xml
+++ b/indra/newview/skins/default/xui/es/strings.xml
@@ -29,12 +29,9 @@
Error de inicialización de gráficos. Actualiza tu controlador de gráficos.
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</string>
- <string name="AboutCompiler">
- Compilado con [COMPILER], versión [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Estás en la posición [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1], de [REGION], alojada en &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -55,7 +52,6 @@ Tarjeta gráfica: [GRAPHICS_CARD]
<string name="AboutLibs">
Versión de OpenGL: [OPENGL_VERSION]
-Versión de libcurl: [LIBCURL_VERSION]
Versión de J2C Decoder: [J2C_VERSION]
Versión de Audio Driver: [AUDIO_DRIVER_VERSION]
Versión de LLCEFLib/CEF: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/fr/strings.xml b/indra/newview/skins/default/xui/fr/strings.xml
index c23fad5e7f..ae091aba39 100644
--- a/indra/newview/skins/default/xui/fr/strings.xml
+++ b/indra/newview/skins/default/xui/fr/strings.xml
@@ -38,12 +38,9 @@
Échec d&apos;initialisation des graphiques. Veuillez mettre votre pilote graphique à jour.
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [Notes de version]]
</string>
- <string name="AboutCompiler">
- Compilé avec [COMPILER] version [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Vous êtes à [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] dans [REGION], se trouvant à &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL : &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -64,7 +61,6 @@ Carte graphique : [GRAPHICS_CARD]
<string name="AboutLibs">
Version OpenGL : [OPENGL_VERSION]
-Version libcurl : [LIBCURL_VERSION]
Version J2C Decoder : [J2C_VERSION]
Version Audio Driver : [AUDIO_DRIVER_VERSION]
Version LLCEFLib/CEF : [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/it/strings.xml b/indra/newview/skins/default/xui/it/strings.xml
index 5047ca326d..effd6f5040 100644
--- a/indra/newview/skins/default/xui/it/strings.xml
+++ b/indra/newview/skins/default/xui/it/strings.xml
@@ -35,12 +35,9 @@
Inizializzazione grafica non riuscita. Aggiorna il driver della scheda grafica!
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</string>
- <string name="AboutCompiler">
- Generato con [COMPILER] versione [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Tu sei a [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] in [REGION] che si trova a &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -61,7 +58,6 @@ Scheda grafica: [GRAPHICS_CARD]
<string name="AboutLibs">
Versione OpenGL: [OPENGL_VERSION]
-Versione libcurl: [LIBCURL_VERSION]
Versione J2C Decoder: [J2C_VERSION]
Versione Driver audio: [AUDIO_DRIVER_VERSION]
Versione LLCEFLib/CEF: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/ja/strings.xml b/indra/newview/skins/default/xui/ja/strings.xml
index 2fd6f6f03b..1ad977fe88 100644
--- a/indra/newview/skins/default/xui/ja/strings.xml
+++ b/indra/newview/skins/default/xui/ja/strings.xml
@@ -38,10 +38,7 @@
グラフィックを初期化できませんでした。グラフィックドライバを更新してください。
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
- </string>
- <string name="AboutCompiler">
- コンパイラー [COMPILER] [COMPILER_VERSION] バージョン
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</string>
<string name="AboutPosition">
あなたの現在地は、[POSITION_LOCAL_0,number,1]、[POSITION_LOCAL_1,number,1]、[POSITION_LOCAL_2,number,1] の [REGION] です。位置は &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; です。([HOSTIP])
@@ -63,7 +60,6 @@ OS バージョン:[OS_VERSION]
<string name="AboutLibs">
OpenGL バージョン:[OPENGL_VERSION]
-libcurl バージョン:[LIBCURL_VERSION]
J2C デコーダバージョン:[J2C_VERSION]
オーディオドライババージョン:[AUDIO_DRIVER_VERSION]
LLCEFLib/CEF バージョン: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/pl/strings.xml b/indra/newview/skins/default/xui/pl/strings.xml
index 7dfb3ccc2b..dd85f1eb9b 100644
--- a/indra/newview/skins/default/xui/pl/strings.xml
+++ b/indra/newview/skins/default/xui/pl/strings.xml
@@ -21,9 +21,6 @@
<string name="StartupRequireDriverUpdate">
Nie można zainicjować grafiki. Zaktualizuj sterowniki!
</string>
- <string name="AboutCompiler">
- Zbudowane za pomocą [COMPILER] w wersji [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Położenie [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] w [REGION] zlokalizowanym w &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -44,10 +41,9 @@ Karta graficzna (Graphics Card): [GRAPHICS_CARD]
<string name="AboutLibs">
Wersja OpenGL: [OPENGL_VERSION]
-Wersja libcurl: [LIBCURL_VERSION]
Wersja dekodera J2C: [J2C_VERSION]
Wersja sterownika dźwięku (Audio Driver): [AUDIO_DRIVER_VERSION]
-Wersja Qt Webkit: [QT_WEBKIT_VERSION]
+Wersja LLCEFLib/CEF: [LLCEFLIB_VERSION]
Wersja serwera głosu (Voice Server): [VOICE_VERSION]
</string>
<string name="AboutTraffic">
diff --git a/indra/newview/skins/default/xui/pt/strings.xml b/indra/newview/skins/default/xui/pt/strings.xml
index 6fa475e145..50bb9b7e66 100644
--- a/indra/newview/skins/default/xui/pt/strings.xml
+++ b/indra/newview/skins/default/xui/pt/strings.xml
@@ -29,12 +29,9 @@
Falha na inicialização dos gráficos. Atualize seu driver gráfico!
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [Notas da versão]]
</string>
- <string name="AboutCompiler">
- Construído com [COMPILER] versão [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Você está em [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] em [REGION] localizado em &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -55,7 +52,6 @@ Placa gráfica: [GRAPHICS_CARD]
<string name="AboutLibs">
Versão do OpenGL: [OPENGL_VERSION]
-Versão do libcurl: [LIBCURL_VERSION]
Versão do J2C Decoder: [J2C_VERSION]
Versão do driver de áudio: [AUDIO_DRIVER_VERSION]
Versão de LLCEFLib/CEF: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/ru/strings.xml b/indra/newview/skins/default/xui/ru/strings.xml
index 4cd6fac2e1..191d99bb21 100644
--- a/indra/newview/skins/default/xui/ru/strings.xml
+++ b/indra/newview/skins/default/xui/ru/strings.xml
@@ -38,12 +38,9 @@
Ошибка инициализации графики. Обновите графический драйвер!
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</string>
- <string name="AboutCompiler">
- Использован компилятор [COMPILER], версия [COMPILER_VERSION]
- </string>
<string name="AboutPosition">
Вы в точке [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] в регионе «[REGION]», расположенном на &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -64,7 +61,6 @@ SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
<string name="AboutLibs">
Версия OpenGL: [OPENGL_VERSION]
-Версия libcurl: [LIBCURL_VERSION]
Версия декодера J2C: [J2C_VERSION]
Версия драйвера звука: [AUDIO_DRIVER_VERSION]
Версия LLCEFLib/CEF: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/tr/strings.xml b/indra/newview/skins/default/xui/tr/strings.xml
index 49c0bcf02b..67c9197907 100644
--- a/indra/newview/skins/default/xui/tr/strings.xml
+++ b/indra/newview/skins/default/xui/tr/strings.xml
@@ -38,12 +38,9 @@
Grafik başlatma başarılamadı. Lütfen grafik sürücünüzü güncelleştirin!
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [Sürüm Notları]]
</string>
- <string name="AboutCompiler">
- [COMPILER] [COMPILER_VERSION] sürümü ile oluşturuldu
- </string>
<string name="AboutPosition">
&lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP]) üzerinde bulunan [REGION] içerisinde [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1] konumundasınız
SLURL: &lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -64,7 +61,6 @@ Grafik Kartı: [GRAPHICS_CARD]
<string name="AboutLibs">
OpenGL Sürümü: [OPENGL_VERSION]
-libcurl Sürümü: [LIBCURL_VERSION]
J2C Kod Çözücü Sürümü: [J2C_VERSION]
Ses Sürücüsü Sürümü: [AUDIO_DRIVER_VERSION]
LLCEFLib/CEF Sürümü: [LLCEFLIB_VERSION]
diff --git a/indra/newview/skins/default/xui/zh/strings.xml b/indra/newview/skins/default/xui/zh/strings.xml
index 4f16eaf82b..2ce310b224 100644
--- a/indra/newview/skins/default/xui/zh/strings.xml
+++ b/indra/newview/skins/default/xui/zh/strings.xml
@@ -38,12 +38,9 @@
顯像初始化失敗。 請更新你的顯像卡驅動程式!
</string>
<string name="AboutHeader">
- [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] [BUILD_DATE] [BUILD_TIME] ([CHANNEL])
+ [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2].[VIEWER_VERSION_3] ([CHANNEL])
[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]]
</string>
- <string name="AboutCompiler">
- 以 [COMPILER_VERSION] 版本 [COMPILER] 建置
- </string>
<string name="AboutPosition">
你的方位是 [POSITION_LOCAL_0,number,1], [POSITION_LOCAL_1,number,1], [POSITION_LOCAL_2,number,1],地區名:[REGION],主機:&lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
第二人生URL:&lt;nolink&gt;[SLURL]&lt;/nolink&gt;
@@ -64,7 +61,6 @@
<string name="AboutLibs">
OpenGL 版本:[OPENGL_VERSION]
-libcurl 版本: [LIBCURL_VERSION]
J2C 解碼器版本: [J2C_VERSION]
音效驅動程式版本: [AUDIO_DRIVER_VERSION]
LLCEFLib/CEF版本:[LLCEFLIB_VERSION]