But be more careful with CPU clock count on linux, so the fasttimer values are much more accurate than they were the last time we were with RDTSC, in absolute terms - back in the right order of magnitude anyway.
Also change many instances of Mhz to MHz.
Also some minor comment fixes.
EXT-6692: crash at LLTextureCache::readEntryFromHeaderImmediately [secondlife-bin lltexturecache.cpp:1145]
EXT-6691: crash at LLTextureCache::writeEntryToHeaderImmediately [secondlife-bin lltexturecache.cpp:1126]
possible fix for EXT-6567: crash at LLImageBase::allocateData [secondlife-bin llimage.cpp:170]
Added LLPluginCookieStore, which manages the central list of cookies.
New Mac and Windows versions of llqtwebkit, built from the tip of the cookie-api branch on http://bitbucket.org/lindenlab/llqtwebkit/ (currently revision f35a5eab8c2f).
Added "set_cookies" and "cookie_set" messages to the media_browser message class in the plugin API, and made the webkit plugin use them appropriately.
Added methods to LLViewerMedia to read/write the cookie file and add/remove individual cookies.
Added hooks to read/write the cookie file (plugin_cookies.txt) in the same places as the location history (idle_startup() in llstartup.cpp and LLAppViewer::cleanup(), respectively).
Reviewed by Richard at http://codereview.lindenlab.com/1006003
EXT-6692: crash at LLTextureCache::readEntryFromHeaderImmediately [secondlife-bin lltexturecache.cpp:1145]
EXT-6691: crash at LLTextureCache::writeEntryToHeaderImmediately [secondlife-bin lltexturecache.cpp:1126]
possible fix for EXT-6567: crash at LLImageBase::allocateData [secondlife-bin llimage.cpp:170]
Previously any login attempt, even a failed one, would cause the Start
Up pulldown to appear. Now only a successful login will cause this to
happen. Also renamed the setting FirstRunThisInstall to the more accurate
HadFirstSuccessfulLogin (and inverted its logic).
Reviewed by Mani.
-- Further instrumentation of idle update
-- Removed mActiveQ from LLPipeline, instead making calm objects static during LLVOVolume::idleUpdate
-- Further instrumentation of flexible object update
-- Converted LLDynamicArray and LLMap members of LLViewerObjectList to stl counterparts
-- Increased number of update bins in LLViewerObjectList from 16 to 128 (objects will be processed every 128 frames instead of every 16, or ~ 90% fewer objects processed per frame)
-- Removed unused "renderObjectsForSelect" code.
-- Reenabled LOD updates for objects further than 24m from camera
Next step is to actually implement the OS-specific calls to do so.
Until then, behavior is the same; the status bar will mute/unmute
the "master" audio for the viewer *only*
Introduce static LLCurl SSL verification flag, default 'true', accessed by
LLCurl::setSSLVerify() and getSSLVerify().
Make LLCurl::Easy::prepRequest() check LLCurl::getSSLVerify() instead of
unconditionally setting CURLOPT_SSL_VERIFYPEER 'true'. Also set
CURLOPT_SSL_VERIFYHOST to match.
Make LLXMLRPCTransaction::Impl::init() examine LLCurl::getSSLVerify(), instead
of directly examining gSavedSettings.getBOOL("NoVerifySSLCert").
Make LLURLRequest::checkRootCertificate() set CURLOPT_SSL_VERIFYHOST as well
as CURLOPT_SSL_VERIFYPEER.
Make request() in llhttpclient.cpp (used by LLHTTPClient::getByteRange(),
head(), get(), getHeaderOnly(), put(), post(), postRaw(), postFile(), del(),
move()) pass LLCurl::getSSLVerify() to checkRootCertificate(), rather than
constant 'true'.
Make LLAppViewer::mainLoop() call
LLCurl::setSSLVerify(! gSavedSettings.getBOOL("NoVerifySSLCert"))
at the same time it calls LLCurl::setCAFile(), a comparable bit of static
setup.
Of the four options suggested in the jira, this is a modified version of #2. Since the mime_types.xml file actually gets localized (it contains a bunch of user-visible text in addition to the mappings), I don't think renaming it in viewer_manifest.py will work.
Instead, I've created additional files (mime_types_linux.xml and mime_types_mac.xml) in the same location, and changed the code that loads the file in LLAppViewer::init() to look for different names per-platform.
I'm sure there are cleverer solutions (such as abusing the translation xml overlay system to create files that have deltas per platform), but those don't fit in the time-box allocated to this issue.
Renamed llviewerversion to llversioninfo, to avoid confusion with
llversionviewer in llcommon (llversion is already used by llwindow).
Created new LLVersionInfo class with the following methods:
static S32 getMajor();
static S32 getMinor();
static S32 getPatch();
static S32 getBuild();
static const std::string &getVersion();
static const std::string &getShortVersion();
static const std::string &getChannel();
All viewer code has been updated to use this API. Viewer code no
longer directly includes llversionviewer.h from llcommon.
This module now contains general viewer version routines, not just
access to the viewer build number, so I've renamed it from
llviewerbuild to llviewerversion.