Merge downstream code

master
simon 2013-05-20 11:31:04 -07:00
commit ee3efc01e4
4 changed files with 39 additions and 29 deletions

View File

@ -456,3 +456,5 @@ b6a4ac8f1916ede76e8a023e1cf35c045d0ac707 3.5.2-beta3
a314f1c94374ab1f6633dd2983f7090a68663eb2 3.5.2-beta4
1cfa86d604909dfdb8b372069ff61f9afaa2aac1 MAINT-2647
895628bb5e162410cfdf4bca58f0a57d22ccfcde 3.5.2-beta5
9013c07bfe1c51107233f1924dccdcc5057dd909 3.5.2-beta6
9b1b6f33aa5394b27bb652b31b5cb81ef6060370 3.5.2-release

View File

@ -1 +1 @@
3.5.2
3.5.3

View File

@ -3444,11 +3444,10 @@ void LLAppViewer::handleViewerCrash()
//we're already in a crash situation
if (gDirUtilp)
{
std::string crash_file_name = ( gLLErrorActivated )
? gDirUtilp->getExpandedFilename(LL_PATH_LOGS,LLERROR_MARKER_FILE_NAME)
: gDirUtilp->getExpandedFilename(LL_PATH_LOGS,ERROR_MARKER_FILE_NAME);
LL_INFOS("MarkerFile") << "Creating crash marker file " << crash_file_name << LL_ENDL;
std::string crash_file_name = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,
gLLErrorActivated
? LLERROR_MARKER_FILE_NAME
: ERROR_MARKER_FILE_NAME);
LLAPRFile crash_file ;
crash_file.open(crash_file_name, LL_APR_W);
if (crash_file.getFileHandle())
@ -3548,7 +3547,10 @@ void LLAppViewer::recordMarkerVersion(LLAPRFile& marker_file)
std::string marker_version(LLVersionInfo::getChannelAndVersion());
if ( marker_version.length() > MAX_MARKER_LENGTH )
{
LL_WARNS_ONCE("MarkerFile") << "Version length ("<< marker_version.length()<< ") greater than maximum: marker matching may be incorrect" << LL_ENDL;
LL_WARNS_ONCE("MarkerFile") << "Version length ("<< marker_version.length()<< ")"
<< " greater than maximum (" << MAX_MARKER_LENGTH << ")"
<< ": marker matching may be incorrect"
<< LL_ENDL;
}
// record the viewer version in the marker file
@ -3568,15 +3570,16 @@ bool LLAppViewer::markerIsSameVersion(const std::string& marker_name) const
if (marker_file.getFileHandle())
{
marker_version_length = marker_file.read(marker_version, sizeof(marker_version));
LL_DEBUGS("MarkerFile") << "Compare markers: ";
std::string marker_string(marker_version, marker_version_length);
LL_CONT << "\n mine '" << my_version << "'"
<< "\n marker '" << marker_string << "'"
<< LL_ENDL;
if ( 0 == my_version.compare( 0, my_version.length(), marker_version, 0, marker_version_length ) )
{
sameVersion = true;
}
LL_DEBUGS("MarkerFile") << "Compare markers for '" << marker_name << "': "
<< "\n mine '" << my_version << "'"
<< "\n marker '" << marker_string << "'"
<< "\n " << ( sameVersion ? "same" : "different" ) << " version"
<< LL_ENDL;
marker_file.close();
}
return sameVersion;
@ -3687,7 +3690,7 @@ void LLAppViewer::initMarkerFile()
void LLAppViewer::removeMarkerFile(bool leave_logout_marker)
{
LL_DEBUGS("MarkerFile") << "removeMarkerFile("<<leave_logout_marker<<")" << LL_ENDL;
LL_DEBUGS("MarkerFile") << "removeMarkerFile("<<(leave_logout_marker?"leave":"remove") <<" logout)" << LL_ENDL;
if (mMarkerFile.getFileHandle())
{
LL_DEBUGS("MarkerFile") << "removeMarkerFile marker '"<<mMarkerFileName<<"'"<< LL_ENDL;
@ -3702,12 +3705,12 @@ void LLAppViewer::removeMarkerFile(bool leave_logout_marker)
{
if (mLogoutMarkerFile.getFileHandle())
{
LL_DEBUGS("MarkerFile") << "removeMarkerFile marker '"<<mLogoutMarkerFileName<<"'"<< LL_ENDL;
LL_DEBUGS("MarkerFile") << "removeMarkerFile logout marker '"<<mLogoutMarkerFileName<<"'"<< LL_ENDL;
mLogoutMarkerFile.close();
}
else
{
LL_WARNS("MarkerFile") << "removeMarkerFile marker '"<<mLogoutMarkerFileName<<"' not open"<< LL_ENDL;
LL_WARNS("MarkerFile") << "removeMarkerFile logout marker '"<<mLogoutMarkerFileName<<"' not open"<< LL_ENDL;
}
LLAPRFile::remove( mLogoutMarkerFileName );
}

View File

@ -108,25 +108,30 @@ void LLUpdateChecker::Implementation::checkVersion(std::string const & hostUrl,
unsigned char uniqueid[MD5HEX_STR_SIZE],
bool willing_to_test)
{
llassert(!mInProgress);
mInProgress = true;
if (!mInProgress)
{
mInProgress = true;
mHostUrl = hostUrl;
mServicePath = servicePath;
mChannel = channel;
mVersion = version;
mPlatform = platform;
mPlatformVersion = platform_version;
memcpy(mUniqueId, uniqueid, MD5HEX_STR_SIZE);
mWillingToTest = willing_to_test;
mHostUrl = hostUrl;
mServicePath = servicePath;
mChannel = channel;
mVersion = version;
mPlatform = platform;
mPlatformVersion = platform_version;
memcpy(mUniqueId, uniqueid, MD5HEX_STR_SIZE);
mWillingToTest = willing_to_test;
mProtocol = sProtocolVersion;
mProtocol = sProtocolVersion;
std::string checkUrl = buildUrl(hostUrl, servicePath, channel, version, platform, platform_version, uniqueid, willing_to_test);
LL_INFOS("UpdaterService") << "checking for updates at " << checkUrl << LL_ENDL;
std::string checkUrl = buildUrl(hostUrl, servicePath, channel, version, platform, platform_version, uniqueid, willing_to_test);
LL_INFOS("UpdaterService") << "checking for updates at " << checkUrl << LL_ENDL;
mHttpClient.get(checkUrl, this);
mHttpClient.get(checkUrl, this);
}
else
{
LL_WARNS("UpdaterService") << "attempting to restart a check when one is in progress; ignored" << LL_ENDL;
}
}
void LLUpdateChecker::Implementation::completed(U32 status,