Commit Graph

1286 Commits (e6f53dedb704c92af45ede2d97c559cb6639358f)

Author SHA1 Message Date
Brad Payne (Vir Linden) de5cbddf79 merge 2017-04-19 16:02:48 -04:00
Mnikolenko Productengine f1e00870df MAINT-6980 FIXED Ctrl + Alt + Shift + B does not force a crash on mac 2017-03-28 11:42:17 +03:00
Brad Payne (Vir Linden) ca74323ee8 SL-409 - added version field = 2 to asset stats, made viewer-side metrics files exactly match the payload sent to simulator. 2017-03-21 08:56:30 -04:00
Brad Payne (Vir Linden) e9c786ec60 SL-409 - fixes for viewer asset metrics. Copy and/or assignment of Recording objects is failing, changed to create LLSD blob earlier and just copy that. 2017-03-10 11:29:48 -05:00
AndreyL ProductEngine 3c249e5d5f MAINT-7051 Release Notes url shouldn't include the EDU parameter 2017-02-15 14:52:33 +02:00
Rider Linden a65e3385f1 Merge 2017-01-27 09:26:42 -08:00
Rider Linden cb73d43bf6 MAINT-7082: Clean up, remove log spam. 2017-01-26 15:50:26 -08:00
Rider Linden bab0ee6a3a MAINT-7082: max_idle_time unused. 2017-01-26 10:19:54 -08:00
Rider Linden 56f9cce8a1 MAINT-7082: Remove waiting loop in frame when textures queued for download in alternate thread. With debug spam for observation. 2017-01-25 15:58:38 -08:00
andreykproductengine f08e6b873c MAINT-7024 Release notes page was requested prior to proxy initialization. 2016-12-22 17:34:40 +02:00
AndreyL ProductEngine 2abd0eef41 Merged in lindenlab/viewer-release
DRTVWR-412 Bento (avatar skeleton extensions)
2016-12-05 21:51:29 +02:00
AndreyL ProductEngine fb0355fdba Merged in Ansariel/storm-2141 2016-11-21 21:18:13 +02:00
Brad Payne (Vir Linden) d31596db6a merge 2016-11-16 08:39:41 -05:00
Ansariel 420b1c9429 STORM-2141: Fix various inventory floater related issues:
* Opening new inventory via Control-Shift-I shortcut uses legacy and potentinally dangerous code path
* Closing new inventory windows don't release memory
* During shutdown legacy and inoperable code for inventory window cleanup is called
* Remove old and unused inventory legacy code
2016-11-14 14:45:53 +01:00
AndreyL ProductEngine c24b95e483 Backed out changeset: 2a56972b1571
Reverting MAINT-6259
2016-11-08 04:45:47 +02:00
AndreyL ProductEngine 0e6e04317b Backed out changeset: 27782e83386b
Reverting MAINT-6793
2016-11-08 04:44:46 +02:00
andreykproductengine cfbc2028ef MAINT-6920 More information in About Second Life floater 2016-11-14 20:13:18 +02:00
AndreyL ProductEngine 7fceb3a63f Merged in lindenlab/viewer-cleanup 2016-11-14 22:04:37 +02:00
Brad Payne (Vir Linden) 0200135224 merge 2016-10-18 16:59:15 -04:00
andreykproductengine 6b1f96187d MAINT-6793 Rigged mesh sometimes full of holes 2016-10-18 15:32:01 +03:00
Nat Goodspeed 704c53b3c5 MAINT-5232: Merge up to VLC viewer from viewer-release 2016-10-11 10:59:17 -04:00
AndreyL ProductEngine 4617e07b37 Merged in lindenlab/viewer-release 2016-10-10 23:26:58 +03:00
Brad Payne (Vir Linden) 2be27c26e8 merge 2016-09-20 08:12:56 -04:00
Rider Linden 100aa4b79e Merge 2016-09-16 14:59:52 -07:00
Rider Linden 884b03e877 Merge 2016-09-16 14:43:35 -07:00
Nat Goodspeed 099e3b4166 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2016-09-16 11:04:12 -04:00
Nat Goodspeed d2c3c2f9fe MAINT-5232: Normalize LLSingleton subclasses.
A shocking number of LLSingleton subclasses had public constructors -- and in
several instances, were being explicitly instantiated independently of the
LLSingleton machinery. This breaks the new LLSingleton dependency-tracking
machinery. It seems only fair that if you say you want an LLSingleton, there
should only be ONE INSTANCE!

Introduce LLSINGLETON() and LLSINGLETON_EMPTY_CTOR() macros. These handle the
friend class LLSingleton<whatevah>;
and explicitly declare a private nullary constructor.

To try to enforce the LLSINGLETON() convention, introduce a new pure virtual
LLSingleton method you_must_use_LLSINGLETON_macro() which is, as you might
suspect, defined by the macro. If you declare an LLSingleton subclass without
using LLSINGLETON() or LLSINGLETON_EMPTY_CTOR() in the class body, you can't
instantiate the subclass for lack of a you_must_use_LLSINGLETON_macro()
implementation -- which will hopefully remind the coder.

Trawl through ALL LLSingleton subclass definitions, sprinkling in
LLSINGLETON() or LLSINGLETON_EMPTY_CTOR() as appropriate. Remove all explicit
constructor declarations, public or private, along with relevant 'friend class
LLSingleton<myself>' declarations. Where destructors are declared, move them
into private section as well. Where the constructor was inline but nontrivial,
move out of class body.

Fix several LLSingleton abuses revealed by making ctors/dtors private:

LLGlobalEconomy was both an LLSingleton and the base class for
LLRegionEconomy, a non-LLSingleton. (Therefore every LLRegionEconomy instance
contained another instance of the LLGlobalEconomy "singleton.") Extract
LLBaseEconomy; LLGlobalEconomy is now a trivial subclass of that.
LLRegionEconomy, as you might suspect, now derives from LLBaseEconomy.

LLToolGrab, an LLSingleton, was also explicitly instantiated by
LLToolCompGun's constructor. Extract LLToolGrabBase, explicitly instantiated,
with trivial subclass LLToolGrab, the LLSingleton instance.

(WARNING: LLToolGrabBase methods have an unnerving tendency to go after
LLToolGrab::getInstance(). I DO NOT KNOW what should be the relationship
between the instance in LLToolCompGun and the LLToolGrab singleton instance.)

LLGridManager declared a variant constructor accepting (const std::string&),
with the comment:
// initialize with an explicity grid file for testing.
As there is no evidence of this being called from anywhere, delete it.

LLChicletBar's constructor accepted an optional (const LLSD&). As the LLSD
parameter wasn't used, and as there is no evidence of it being passed from
anywhere, delete the parameter.

LLViewerWindow::shutdownViews() was checking LLNavigationBar::
instanceExists(), then deleting its getInstance() pointer -- leaving a
dangling LLSingleton instance pointer, a land mine if any subsequent code
should attempt to reference it. Use deleteSingleton() instead.

~LLAppViewer() was calling LLViewerEventRecorder::instance() and then
explicitly calling ~LLViewerEventRecorder() on that instance -- leaving the
LLSingleton instance pointer pointing to an allocated-but-destroyed instance.
Use deleteSingleton() instead.
2016-09-15 20:18:12 -04:00
AndreyL ProductEngine c2b6620572 Merged in lindenlab/viewer-release 2016-09-15 23:21:15 +03:00
Rider Linden 51236b7c9c Merge 2016-09-14 09:55:18 -07:00
Nat Goodspeed 959edebeca MAINT-5232: Add LLSingletonBase::cleanupAll() and deleteAll() calls
near the end of LLAppViewer::cleanup() so every LLSingleton class that hasn't
already been explicitly cleaned up gets a chance to perform its own cleanup.
2016-08-31 16:20:10 -04:00
Nat Goodspeed 3e1589709f MAINT-5232: LLMetricPerformanceTesterBasic::cleanClass->cleanupClass
for consistency with everything else, so we can use SUBSYSTEM_CLEANUP() macro
to call it.
2016-08-31 14:46:03 -04:00
Nat Goodspeed 57ecedb469 MAINT-5232: Change getIfExists() call to instanceExists().
LLSingleton::getIfExists() has been eliminated. The only remaining way to
detect whether a given LLSingleton has been instantiated is to call
instanceExists(). But the relevant cleanup code should be refactored to
cleanupSingleton() anyway, which would make this specific call moot.
2016-08-30 14:12:52 -04:00
Nat Goodspeed c92eb7e591 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2016-08-30 11:36:06 -04:00
Nat Goodspeed 6b24122857 Automated merge with ssh://bitbucket.org/lindenlab/viewer-vlc 2016-08-29 17:06:12 -04:00
Nat Goodspeed 4c41b1d8ac MAINT-5011: Add top-level exception handlers in LLAppViewer::frame(). 2016-08-26 15:56:47 -04:00
AndreyL ProductEngine 6c280f9d2b MAINT-6662 Don't show release notes on first login 2016-08-20 14:36:04 +03:00
AndreyL ProductEngine 3d9c39c77c MAINT-6663 [Win LibVLC] test video buttons still appearing in search 2016-08-20 12:53:03 +03:00
Nat Goodspeed e72bdc9bc5 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2016-08-17 11:41:12 -04:00
Nat Goodspeed 5e9d2f57c8 MAINT-5011: Use LLTHROW() instead of plain BOOST_THROW_EXCEPTION().
A level of preprocessor indirection lets us later change the implementation if
desired.
2016-08-17 11:36:24 -04:00
pavelkproductengine 05e77c5f26 Merge VOB with 4.0.8-release 2016-08-16 20:40:57 +03:00
Brad Payne (Vir Linden) 57da9bcd1b merge from viewer-release 2016-08-15 09:52:06 -04:00
Oz Linden 6ff420d705 merge changes for 4.0.7-release 2016-08-11 15:36:09 -04:00
andreykproductengine 5b94ed9f4e MAINT-6634 fixed string 2016-08-15 20:01:56 +03:00
andreykproductengine 5297782193 MAINT-6634 "My graphics driver is out of date" was listed 3 times in Alerts 2016-08-15 17:05:23 +03:00
Nat Goodspeed 9c49a6c91d MAINT-5011: Introduce LLException base class for viewer exceptions.
This also introduces LLContinueError for exceptions which should interrupt
some part of viewer processing (e.g. the current coroutine) but should attempt
to let the viewer session proceed.

Derive all existing viewer exception classes from LLException rather than from
std::runtime_error or std::logic_error.

Use BOOST_THROW_EXCEPTION() rather than plain 'throw' to enrich the thrown
exception with source file, line number and containing function.
2016-07-19 16:25:25 -04:00
andreykproductengine ee51eee627 MAINT-6259 rigged items' LOD should be size dependent, not only avatar dependent 2016-07-19 19:33:50 +03:00
Nat Goodspeed 2f003fd5a9 MAINT-5011: Throw an actual exception in Force Software Exception.
http://en.cppreference.com/w/cpp/language/throw says of the plain throw syntax:

"This form is only allowed when an exception is presently being handled (it
calls std::terminate if used otherwise)."

On advice from Oz, replace plain 'throw;' with throwing a std::runtime_error.
2016-07-13 14:58:12 -04:00
pavelkproductengine 070116f212 MAINT-6493 SL Viewer does not respect the Windows 10 display setting size slider 2016-07-13 20:28:29 +03:00
andreykproductengine b652774324 Backed out changeset: a1a0a055e892 2016-07-18 17:28:02 +03:00
andreykproductengine 60c0c0e0e4 MAINT-6259 rigged items' LOD should be size dependent, not only avatar dependent 2016-07-04 19:55:54 +03:00