summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-08-05Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2013-08-05CHOP-951, IQA-1477: Validate args for numeric command-line switches.Nat Goodspeed
The logic in llcommandlineparser.cpp's setControlValueCB() callback function for converting command-line switch argument values from string to the actual type of the map-to settings variable had a couple special cases for boolean and LLSD array. But for S32, U32 and F32, it simply used default LLSD string-to-numeric conversion. LLSD's string-to-numeric conversion is a bit lame: for non-numeric strings, it shrugs and returns 0. Introduce onevalue() and badvalue() helper functions that, like certain errors during command-line parsing, throw LLCLPError. Use them to streamline certain redundancies in setControlValueCB(). Introduce convertTo<T>() helper function that uses boost::lexical_cast() for slightly more stringent conversions. Add cases for U32, S32 and F32 targets. setControlValueCB() is actually called only by LLControlGroupCLP::notify(), not during actual command-line parsing. Make LLControlGroupCLP::notify() return bool. Make it catch LLCLPError, set the error for getErrorMessage() and return false on that exception. Package LLAppViewer::initConfiguration()'s response to initParseCommandLine() returning false as a new handleCommandLineError() function; invoke it both there and when LLControlGroupCLP::notify() returns false.
2013-08-05increment viewer version to 3.6.3Oz Linden
2013-08-05Added tag 3.6.2-release for changeset f6741d5fe8d6Oz Linden
2013-08-02CHOP-959: merge --graphicslevel fix up to tipNat Goodspeed
2013-08-02CHOP-959: Honor --graphicslevel switch even on first viewer run.Nat Goodspeed
Previous CHOP-959 logic set a flag to remember that settings variable RenderQualityPerformance was set (by --graphicslevel), so it could be applied once LLViewerWindow is constructed. But on first viewer run, LLViewerWindow constructor calls LLFeatureManager::applyRecommendedSettings(), which resets that settings variable! So don't just set a flag, actually capture the requested RenderQualityPerformance value for later.
2013-07-29Slowest debug in the west.Aura Linden
2013-07-29I love issues that only reproduce via teamcityAura Linden
2013-07-26CHOP-955: merge viewer_manifest.py file_list fixNat Goodspeed
2013-07-26CHOP-955: Include app_settings/settings_install.xml in file_list.Nat Goodspeed
viewer_manifest.py uses its base-class llmanifest.LLManifest.put_in_file() method to create several different files in the install image being marshalled. I based the logic to create settings_install.xml on that example. Unfortunately I failed to notice that after every existing call, the script also explicitly appended the newly-created file to self.file_list... which only matters on Windows. file_list is fed to the NSIS installer. Change put_in_file() method to implicitly append to self.file_list. Change every existing viewer_manifest.py call to pass new put_in_file(src=) param instead of explicitly appending to self.file_list.
2013-07-26Automated merge with ssh://hg.lindenlab.com/nat/viewer-chop-951Nat Goodspeed
2013-07-26CHOP-962: merge code-review fixes with viewer-releaseNat Goodspeed
2013-07-26CHOP-962: per code review, comment that other code relies on "Global".Nat Goodspeed
The comment advises grepping for "Global" rather than specifically pointing to llcontrol.cpp because that's NOT the only place that relies on the name "Global"! Besides, by the time someone does want to change the name, still other such dependencies could've crept in.
2013-07-25CHOP-962: Make LLControlVariable::setPersist() accept only enum.Nat Goodspeed
Initial change made LLControlVariable::mPersist an enum, but retained bool/BOOL public API. setPersist(true) set one value, setPersist(false) set another, forcePersist() set the third. Per code review, expose enum to public, make setPersist() (and LLControlVariable constructor, and LLControlGroup:: declareControl(), and all the LLControlGroup::declareMumble() methods, and all the unit-test dummy declareMumble() method bodies) accept that enum. Remove forcePersist(). Fix calls to LLControlGroup::declareMumble() accordingly. Also rename PERSIST_YES to PERSIST_NONDFT, also per code review.
2013-07-25Kill all the vivox logsAura Linden
2013-07-24added default sourceid and check that sourceid is not blank, hoping to get ↵JJ Linden
the windows builds to recognize the value
2013-07-22Automated merge with http://hg.secondlife.com/viewer-releaseNat Goodspeed
2013-07-22CHOP-962: tag before merging in viewer-releaseNat Goodspeed
2013-07-22Removed tag CHOP-962-aNat Goodspeed
2013-07-22CHOP-962: tag before merging in viewer-releaseNat Goodspeed
2013-07-22CHOP-962: Emit unrecognized-var log message only for Global settings.Nat Goodspeed
LLControlGroup::loadFromFile() can of course detect which LLControlGroup instance it's loading. We only want to log unrecognized settings variables in LLControlGroup "Global". Settings for "Don't show me this again" notifications are in group "Warnings".
2013-07-22Turn off logging.Aura Linden
2013-07-17CHOP-962: Preserve unrecognized user settings variables.Nat Goodspeed
Change LLControlVariable::mPersist from bool to tri-state enum. Its 'true' value used to mean "persist only if changed from default;" third state now means "persist regardless of value." Add forcePersist() method to set that. Replace isSaveValueDefault() method -- used only by logic to determine whether to save the variable -- with shouldSave() method to encapsulate ALL that logic rather than only part of it. shouldSave() recognizes PERSIST_ALWAYS state. When loading an unrecognized control variable from a user settings file, use forcePersist() to ensure that we later save that variable again. Tweak one of the unit tests to adjust for new semantics.
2013-07-17CHOP-962: Make LLControlGroup::declare* return LLControlVariable*Nat Goodspeed
LLControlGroup::declareControl(), declareString() etc. etc. all used to return BOOL -- which no one ever examines because it unconditionally returned TRUE. Make it return the (possibly new) LLControlVariable* instead.
2013-07-16CHOP-960: Validate cmd_line.xml for map-to real settings.xml vars.Nat Goodspeed
A small, fixed set of cmd_line.xml switches can't reasonably be mapped to settings variables, mostly because they affect the settings machinery itself. Other than those, every new cmd_line.xml switch should map-to a settings variable. Validate that only the known set does not have map-to; validate that map-to variable actually exists.
2013-07-11Merged in viewer-releaseAura Linden
2013-07-11CHOP-959: Merge About-box changes with tipNat Goodspeed
2013-07-11CHOP-959: Re-add global coordinates, plus SLURL, to About box.Nat Goodspeed
2013-07-02CHOP-959: Merge region-local location change with tip.Nat Goodspeed
2013-07-02CHOP-959: Introduce CmdLineChannel settings var, map --channel to it.Nat Goodspeed
2013-07-02CHOP-959: Introduce CmdLineLoginLocation var for --url and --slurl.Nat Goodspeed
Route --url and --slurl command-line switches through a common settings variable. Treat them uniformly now. (Previously, passing --url would notice a grid-specific SLURL and preselect that grid; --slurl wouldn't. Now both do.)
2013-07-02CHOP-959: Report region-local position in Help -> About box.Nat Goodspeed
I've never really understood the usefulness of displaying world-global coordinates in the Help -> About box. It seems to me far more useful to know where you are within the current region. If that proves problematic, we can display both sets of coordinates -- but let's try it this way first.
2013-07-02CHOP-959: add POSITION_LOCAL to LLFloaterAbout::getInfo() blob.Nat Goodspeed
The existing POSITION variable gives "global" position: that is, your region- local coordinates plus the (somewhat arbitrary) global coordinates of the region's corner within the whole world. That may be meaningful to people on the mainland, hard to say, but it correlates with nothing else available from the viewer. POSITION_LOCAL gives you region-local coordinates, which could be used (for instance) to construct a SLURL.
2013-07-01CHOP-959: Introduce and use settings vars for some cmd_line switches.Nat Goodspeed
The cmd_line.xml entries: analyzeperformance crashonstartup debugsession disablecrashlogger logmetrics logperformance noquicktime replaysession all specify map-to settings.xml variables -- none of which existed! Introduce such variables. Instead of detecting the presence of a particular switch in the command-line parser, use the value of its corresponding settings variable.
2013-06-28CHOP-959: Streamline processing for --graphicslevel switch.Nat Goodspeed
Use map-to in cmd_line.xml to inform the command-line processor that the target variable for --graphicslevel is RenderQualityPerformance. That lets us eliminate clunky llappviewer.cpp switch from '0' to 0, etc. Moreover, previous switch statement only accepted 0 - 3, whereas LLFeatureManager::setGraphicsLevel() actually accepts 0 - 6. Introduce LLFeatureManager::isValidGraphicsLevel() and use that to validate. Replace switch statement in setGraphicsLevel() mapping int constants to string literals with static vector of level names, using same data for mapping as for validating level numbers.
2013-06-27increment viewer version to 3.6.2Oz Linden
2013-06-27CHOP-959: Make settings.xml actually valid XML LLSD.Nat Goodspeed
UserLoginInfo block had <key>Value</key> without the required subsequent element to provide any actual value. This confused at least the Python LLSD reader.
2013-06-27CHOP-955, CHOP-957: Prioritize indra.util.llmanifest in same source repo.Nat Goodspeed
It seems that certain build hosts have an (obsolete? broken?) install of indra.util.llmanifest under the system Python. If we append the local repo indra/lib/python to sys.path, viewer_manifest.py pulls in the broken llmanifest. Prepend to sys.path instead to ensure we get the right one.
2013-06-27CHOP-956: Add settings_install.xml to settings_files.xml.Nat Goodspeed
Also clarify comment for ELLPath in lldir.h: ELLPath int values are read from settings_files.xml.
2013-06-26Added tag 3.6.1-release for changeset 75cf8e855ae1Oz Linden
2013-06-25CHOP-957: Stop looking for, or parsing, Mac arguments.txt file.Nat Goodspeed
2013-06-25CHOP-957: Stop reading gridargs.dat in 'secondlife' wrapper script.Nat Goodspeed
However, for backwards compatibility, continue to recognize and discard --skip-gridargs switch.
2013-06-25merge changes for NORSPEC-280Oz Linden
2013-06-24CHOP-955, CHOP-957: Platform-specific switches files => settings_install.xml.Nat Goodspeed
Instead of generating viewer command-line switch overrides into the Windows shortcut, an arguments.txt file on Mac, or a gridargs.dat file on Linux, generate a platform-independent settings_install.xml file containing 'sourceid' key (if 'sourceid' found in TeamCity environment variables). All command-line override switches previously found in the aforementioned files have happily become moot.
2013-06-21NORSPEC-280 Fix for shader compilation error on OpenGL 3.3Dave Parks
2013-06-19merge changes for DRTVWR-326Oz Linden
2013-06-19NORSPEC-272 make sure the tex filtering fix stays putGraham Linden
2013-06-19Automated merge with http://hg.secondlife.com/viewer-releaseNat Goodspeed
2013-06-19Automated merge with ↵Dave Parks
https://bitbucket.org/lindenlab/viewer-development-materials
2013-06-19Point light color (de)correction.Dave Parks