summaryrefslogtreecommitdiff
path: root/indra/llmessage
AgeCommit message (Collapse)Author
2016-09-15MAINT-5232: Normalize LLSingleton subclasses.Nat Goodspeed
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-08-30Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2016-06-13Merge MAINT-6486Rider Linden
2016-06-10MAINT-6486: Be sure that all the script queue functions hit all objects and ↵Rider Linden
scripts in those objects. Convert from responders and callbacks to coroutines.
2016-05-19Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2016-05-06merge 4.0.4-release and MAINT-5974Oz Linden
2016-05-04MAINT-6220 enable searching of the friend list with the classic username of ↵Mnikolenko Productengine
the avatar.
2016-04-25MAINT-6338: Add methods for getting and setting boolean properties from ↵Rider Linden
gSavedSettings in the HTTPCore. Use those methods to access new key HTTPLogBodyOnError. Dump body of HTTP message to log in case of error if this key is true.
2016-04-13MAINT-6305: Serialize the AIS calls by reducing the queue size to 1, move ↵Rider Linden
the bake request out of the AIS queue.
2016-04-04merge with 4.0.3-releaseOz Linden
2016-03-17MergeRider Linden
2016-03-16merge changes for DRTVWR-417Oz Linden
2016-03-07merge DRTVWR-398 build cleanup fixesOz Linden
2016-02-10MAINT-6066 crash in LLTransferSource::getID()andreykproductengine
2016-01-20MAINT-6066 crash in LLTransferSource::getID()andreykproductengine
2016-01-15merge changes for 4.0.1-releaseOz Linden
2015-12-18More rt libRider Linden
2015-12-18Adding RT to another cmake file for LinuxRider Linden
2015-12-04Initial changes for Vivox/Azumarill merge. Lots of temporary code and ↵Rider Linden
conditional compile switches. Begin switch from statemachine to coroutine.
2016-02-12Suppress some overly verbose loggingOz Linden
2016-02-12MAINT-1945: correct total bytes sent in log statsOz Linden
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-11-03MAINT-5820: Add a success/failure result to HTTP body parse method and react ↵Rider Linden
to that rather than an "undefined" LLSD
2015-11-02Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2015-10-20silly typo that builds on windows - this fixes mac/linux buildscallum_linden
2015-10-20MAINT-5711 FIX2 auto login for profiles - final part retrieves the URL to ↵callum_linden
set cookie for from the message sent over by login.cgi
2015-10-14MAINT-5732: Change to the way event polling handles error conditions and ↵Rider Linden
cancel calls. Refactor any remaining LLCore::HTTPHandlers to use boost::shared_ptr Started minor refactor in the materials manager into coroutines (unfinished)
2015-10-07MAINT-5691: Browser was using deprecated outbox display type AND not ↵Rider Linden
correctly returning error body to application. LLCore:HTTP now will provide and LLSD translation of the message body when possible in the case of an error HTTP result VMM alert boxes now use type="alertmodal" rather than "outbox"
2015-10-06MAINT-5693: Consolidated the avatar appearance request into a coroutine. If ↵Rider Linden
the request fails because of a stale COF, then rerequest with the corrected one.
2015-09-23Remove ares dependency from build.Rider Linden
2015-09-21MAINT-5629: Remove llares and llareslistener. Login now does not attempt to ↵Rider Linden
do a lookup on the server names and rewrite the URL. MAINT-5614: Bad password status correctly detected.
2015-09-18Pref instance() over getInstance()Rider Linden
2015-09-18Set consistent terminology for yield/wait -> suspend for coroutines.Rider Linden
2015-09-15MAINT-5507: Remove llcurl, move constant values and untilities to llcorehttp libRider Linden
2015-09-14MAINT-5507: Removed some no longer used static variables fro llcurl.cppRider Linden
2015-09-14MAINT-5507: Removal of sdrpc client/serverRider Linden
MAINT-5507: removal of LLCurl::Easy, LLCurl::Multi LLCurl::Responder
2015-09-14MAINT-5507: Test checkin with RPC code and URL request disabled. Make sure ↵Rider Linden
it does not break non windows builds.
2015-09-14MAINT-5507: Remove HTTPClient and related cruft.Rider Linden
2015-09-11Bit of cleanup around Translation and remove httpassetstorageRider Linden
2015-09-10MAINT-5575: Finished converting experience cache to singletonRider Linden
MAINT-4952: Coverted VMM to coroutines
2015-09-04Experience Profile to coroutines and Experience cache.Rider Linden
2015-09-03LL_ERRS_IF only seems to work on Microsoft...Rider Linden
2015-09-03Changes from code review with NatRider Linden
2015-09-03Region experience allow/disallow.Rider Linden
2015-09-03Moved group experiences into experience cache. Use coros and new HTTP libs.Rider Linden
2015-09-02Moved find experience into experience cache (moved cache recording into ↵Rider Linden
cache and out of UI) changed from responder to coroutine.
2015-09-02Use boost assign to initialize default pool sizes.Rider Linden
2015-09-02Move associated experience fetching into the ExperienceCache as a coro ↵Rider Linden
remove the responder.
2015-09-01MAINT-5575: Convert the Experience cache into a coro based singleton.Rider Linden
--HG-- branch : MAINT-5575
2015-08-31Some initial changes to convert the experience cache to a singletonRider Linden
--HG-- branch : MAINT-5575