summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/English.lproj/InfoPlist.strings4
-rw-r--r--indra/newview/Info-SecondLife.plist2
-rw-r--r--indra/newview/linux_tools/client-readme.txt30
-rwxr-xr-xindra/newview/linux_tools/wrapper.sh12
-rw-r--r--indra/newview/llappviewer.cpp44
5 files changed, 34 insertions, 58 deletions
diff --git a/indra/newview/English.lproj/InfoPlist.strings b/indra/newview/English.lproj/InfoPlist.strings
index 76c69153c9..7ecd693ba4 100644
--- a/indra/newview/English.lproj/InfoPlist.strings
+++ b/indra/newview/English.lproj/InfoPlist.strings
@@ -1,5 +1,5 @@
/* Localized versions of Info.plist keys */
CFBundleName = "Second Life";
-CFBundleShortVersionString = "Second Life version 1.19.0.2";
-CFBundleGetInfoString = "Second Life version 1.19.0.2, Copyright 2004-2007 Linden Research, Inc.";
+CFBundleShortVersionString = "Second Life version 1.19.0.4";
+CFBundleGetInfoString = "Second Life version 1.19.0.4, Copyright 2004-2007 Linden Research, Inc.";
diff --git a/indra/newview/Info-SecondLife.plist b/indra/newview/Info-SecondLife.plist
index c93fbe0986..50226d84aa 100644
--- a/indra/newview/Info-SecondLife.plist
+++ b/indra/newview/Info-SecondLife.plist
@@ -32,7 +32,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
- <string>1.19.0.2</string>
+ <string>1.19.0.4</string>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
diff --git a/indra/newview/linux_tools/client-readme.txt b/indra/newview/linux_tools/client-readme.txt
index 89454e2ade..ff607b778a 100644
--- a/indra/newview/linux_tools/client-readme.txt
+++ b/indra/newview/linux_tools/client-readme.txt
@@ -1,5 +1,5 @@
-Second Life - Linux Alpha README
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
+Second Life - Linux Beta README
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
This document contains information about the Second Life Linux
client, and isn't meant to serve as an introduction to Second
@@ -26,16 +26,14 @@ Life itself - please see <http://www.secondlife.com/whatis/>.
1. INTRODUCTION
-=-=-=-=-=-=-=-
-Hi! This is an ALPHA release of the Second Life client for Linux.
-The 'alpha' status means that not everything is implemented yet and
-we're still hard at work on this version of the client, but many
-residents find that it already works well 'out of the box' for accessing
-Second Life.
+Hi! This is a BETA release of the Second Life client for Linux.
+The 'beta' status means that although we're still smoothing-out a few rough
+edges, this version of the client is functionally complete and should
+work quite well 'out of the box' for accessing Second Life.
We encourage you to try it out and let us know of its compatibility
-with your system. Be aware that although the client itself is provided
-for testing purposes, any changes you make within the Second Life world
-are permanent.
+with your system. Be aware that although this is a 'beta' client, it connects
+to the main Second Life world and changes you make there are permanent.
You will have either obtained this client from secondlife.com (the official
site) or from a third-party packager; if you encounter any problems then
@@ -98,7 +96,7 @@ you wish.
-=-=-=-=-=-=-=-
These are the most commonly-encountered known issues which are specific to
-the Alpha release of the Linux client.
+the Beta release of the Linux client.
* VISUAL EFFECTS AND PERFORMANCE - many Linux graphics drivers are not as
robust as their counterparts for other operating systems, so some advanced
@@ -106,9 +104,9 @@ the Alpha release of the Linux client.
stability. See PROBLEM 3 in the TROUBLESHOOTING section if you wish to
turn these on to possibly enhance your experience.
-* MISC - The following features are not currently fully implemented on the
- Linux client and are therefore known not to work properly:
- * Movie recording
+* MISC - The following features are known to not yet be fully operational on
+ the Linux client:
+ * Movie recording (soon to be deprecated)
* Full Unicode font rendering
* UPLOAD / SAVE / COLOR-PICKER DIALOGS - These only appear when the client
@@ -214,7 +212,7 @@ configuration options for advanced troubleshooters.
you disable specific GL extensions, each of which is represented by a
letter ("a"-"o"). If you can narrow down a stability problem on your system
to just one or two GL extensions then please post details of your hardware
- (and drivers) to the Linux Client Alpha Testers forum (see link below) along
+ (and drivers) to the Linux Client Testers forum (see link below) along
with the minimal LL_GL_BLACKLIST which solves your problems. This will help
us to improve stability for your hardware while minimally impacting
performance.
@@ -256,7 +254,7 @@ bugs in all Second Life releases if you find that the Troubleshooting
section in this file hasn't helped (please note, however, that this is
not a support forum).
-Linux Client Alpha Testers forum:
+Linux Client Testers forum:
<http://forums.secondlife.com/forumdisplay.php?forumid=263>
This is a forum where Linux Client users can help each other out and
discuss the latest updates.
diff --git a/indra/newview/linux_tools/wrapper.sh b/indra/newview/linux_tools/wrapper.sh
index e7c47cbba6..070d45a5bb 100755
--- a/indra/newview/linux_tools/wrapper.sh
+++ b/indra/newview/linux_tools/wrapper.sh
@@ -1,7 +1,7 @@
#!/bin/bash
-## Here are some configuration options for Linux Client Alpha Testers.
-## These options are for self-assisted troubleshooting during this alpha
+## Here are some configuration options for Linux Client Testers.
+## These options are for self-assisted troubleshooting during this beta
## testing phase; you should not usually need to touch them.
## - Avoids using the ESD audio driver.
@@ -23,14 +23,14 @@
## - Avoids *all* optional OpenGL extensions. This is the safest and least-
## exciting option. Enable this if you experience stability issues, and
-## report whether it helps in the Linux Client Alpha Testers forum.
+## report whether it helps in the Linux Client Testers forum.
#export LL_GL_NOEXT=x
## - For advanced troubleshooters, this lets you disable specific GL
## extensions, each of which is represented by a letter a-o. If you can
## narrow down a stability problem on your system to just one or two
## extensions then please post details of your hardware (and drivers) to
-## the Linux Client Alpha Testers forum along with the minimal
+## the Linux Client Testers forum along with the minimal
## LL_GL_BLACKLIST which solves your problems.
#export LL_GL_BLACKLIST=abcdefghijklmno
@@ -122,8 +122,8 @@ fi
echo
-echo '*********************************************************'
-echo 'This is an ALPHA release of the Second Life linux client.'
+echo '*******************************************************'
+echo 'This is a BETA release of the Second Life linux client.'
echo 'Thank you for testing!'
echo 'Please see README-linux.txt before reporting problems.'
echo
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 106b2b1517..666fcd1301 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -2599,43 +2599,36 @@ void LLAppViewer::setCrashBehavior(S32 cb)
bool LLAppViewer::anotherInstanceRunning()
{
- // We create a marker file when the program starts and remove the file when it finishes.
+ // We create a marker file when the program starts and remove the file when it finishes.
// If the file is currently locked, that means another process is already running.
std::string marker_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, MARKER_FILE_NAME);
llinfos << "Checking marker file for lock..." << llendl;
- // If file doesn't exist, we create it
- // If file does exist, try to get writing privileges
- FILE* fMarker = LLFile::fopen(marker_file.c_str(), "rb"); // Flawfinder: ignore
+ //Freeze case checks
+ apr_file_t* fMarker = ll_apr_file_open(marker_file, LL_APR_RB);
if (fMarker != NULL)
{
// File exists, try opening with write permissions
- fclose(fMarker);
- fMarker = LLFile::fopen(marker_file.c_str(), "wb"); // Flawfinder: ignore
+ apr_file_close(fMarker);
+ fMarker = ll_apr_file_open(marker_file, LL_APR_WB);
if (fMarker == NULL)
{
+ // Another instance is running. Skip the rest of these operations.
llinfos << "Marker file is locked." << llendl;
return TRUE;
}
-
- // *FIX:Mani - rather than have this exception here,
- // LLFile::fopen() have consistent behavior across platforms?
-#if LL_DARWIN || LL_LINUX || LL_SOLARIS
- // Try to lock it. On Mac, this is the only way to test if it's actually locked.
- if (flock(fileno(fMarker), LOCK_EX | LOCK_NB) == -1)
+ if (apr_file_lock(fMarker, APR_FLOCK_NONBLOCK | APR_FLOCK_EXCLUSIVE) != APR_SUCCESS) //flock(fileno(fMarker), LOCK_EX | LOCK_NB) == -1)
{
- // Lock failed - somebody else has it.
- fclose(fMarker);
+ apr_file_close(fMarker);
llinfos << "Marker file is locked." << llendl;
return TRUE;
}
-#endif
- fclose(fMarker);
+ // No other instances; we'll lock this file now & delete on quit.
+ apr_file_close(fMarker);
}
llinfos << "Marker file isn't locked." << llendl;
return FALSE;
-
}
void LLAppViewer::initMarkerFile()
@@ -2677,25 +2670,10 @@ void LLAppViewer::initMarkerFile()
ll_apr_file_remove(error_marker_file);
//Freeze case checks
+ if(anotherInstanceRunning()) return;
fMarker = ll_apr_file_open(mMarkerFileName, LL_APR_RB);
if (fMarker != NULL)
{
- // File exists, try opening with write permissions
- apr_file_close(fMarker);
- fMarker = ll_apr_file_open(mMarkerFileName, LL_APR_WB);
- if (fMarker == NULL)
- {
- // Another instance is running. Skip the rest of these operations.
- llinfos << "Marker file is locked." << llendl;
- return;
- }
- if (apr_file_lock(fMarker, APR_FLOCK_NONBLOCK | APR_FLOCK_EXCLUSIVE) != APR_SUCCESS) //flock(fileno(fMarker), LOCK_EX | LOCK_NB) == -1)
- {
- apr_file_close(fMarker);
- llinfos << "Marker file is locked." << llendl;
- return;
- }
- // No other instances; we'll lock this file now & delete on quit.
apr_file_close(fMarker);
gLastExecEvent = LAST_EXEC_FROZE;
llinfos << "Exec marker found: program froze on previous execution" << llendl;