summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-06-29MAINT-4952: Use IntrusivePtr for BufferArray,HttpHeaders,HttpOptions.Nat Goodspeed
Specifically, change the ptr_t typedefs for these LLCore classes to use IntrusivePtr rather than directly using boost::intrusive_ptr. This allows us to use a simple ptr_t(raw ptr) constructor rather than having to remember to code ptr_t(raw ptr, false) everywhere. In fact, the latter form is now invalid: remove the now-extraneous 'false' constructor parameters.
2015-06-29MAINT-4952: Add IntrusivePtr wrapper for boost::intrusive_ptr.Nat Goodspeed
For a RefCounted subclass T, boost::intrusive_ptr<T> must be instantiated as boost::intrusive_ptr<T>(raw ptr, false) to avoid immortal instances. Forgetting that final bool parameter is both easy and extremely hard to spot with desk checking or code review. IntrusivePtr<T> provides constructors that Do The Right Thing, so we can typedef a subclass T's ptr_t to IntrusivePtr<T> rather than directly to boost::intrusive_ptr<T>.
2015-06-29MAINT-4952: Fix misplaced comments on intrusive_ptr_etc() overloads.Nat Goodspeed
2015-06-29MAINT-5200: Add DebugSlshareLogTag temp setting for developers.Nat Goodspeed
This allows engaging slshare-service debug logging for a particular viewer session without having to twiddle the slshare-service hosts. Also fix leaky LLCore::HttpHeaders::ptr_t construction.
2015-06-29Automated merge with ssh://bitbucket.org/nat_linden/maint-4952-v-t-uNat Goodspeed
2015-06-29Remove extraneous class qualification from method declaration.Nat Goodspeed
clang doesn't like finding HttpCoroutineAdapter::postFileAndYield(...) inside the class definition for HttpCoroutineAdapter. It's much happier with plain postFileAndYield(...).
2015-06-29Automated merge with ssh://bitbucket.org/rider_linden/MAINT-4952-v-t-uNat Goodspeed
2015-06-26MAINT-5232: Use LLError::Log::demangle() to log LLSingleton classes.Nat Goodspeed
2015-06-26MAINT-5232: merge LLError::Log::demangle() to tipNat Goodspeed
2015-06-26MAINT-5232: Publish class name demangler as LLError::Log::demangle().Nat Goodspeed
We've had this functionality buried in llerror.cpp for years. Make it available for callers outside llerror.cpp too.
2015-06-26MAINT-5232: Loosen LLSingleton circularity constraints slightly.Nat Goodspeed
LLSingleton explicitly supports circular dependencies: initialization performed during an LLSingleton subclass's initSingleton() method may recursively call that same subclass's getInstance() method. On the other hand, circularity from a subclass constructor cannot be permitted, else getInstance() would have to return a partially-constructed object. Our dependency tracking circularity check initially forbade both. Loosen it to permit references from within initSingleton().
2015-06-26try to avoid cmake error CMP0046Oz Linden
2015-06-26MAINT-5300 FIXED Allow creating and editing new bodyparts.Mnikolenko ProductEngine
2015-06-25Added file upload interface to core HTTP utils.Rider Linden
2015-06-25MAINT-5232: Make LLHTTPClientAdapter not be an LLSingleton.Nat Goodspeed
llhttpclientadapter_test.cpp starts its every test by explicitly instantiating a local LLHTTPClientAdapter object. This is an abuse of LLSingleton, and if it had been properly defined (private constructor), it should never have compiled. Looked at the other way, though, every known reference to LLHTTPClientAdapter instantiates a local object. Why did someone think it should be an LLSingleton in the first place? Remove LLSingleton<> as a base class; remove llsingleton.h. This makes llhttpclientadapter_test.cpp work just fine. One might also question what value this class adds. It seems to do very little -- but more significantly, the ONLY references in the source tree are its declaration, definition and test. Nobody actually uses it anywhere.
2015-06-25MAINT-5232: Correct forward declaration of LLSingleton_manage_master.Nat Goodspeed
The forward declaration said it was a 'friend class', whereas the actual definition is a struct. MSVC dislikes that.
2015-06-25MAINT-5232: Try to avoid circularity between LLError and LLSingleton.Nat Goodspeed
Part of LLError's logging infrastructure is implemented with an LLSingleton. Therefore, attempts to log from within LLSingleton machinery could potentially go south if LLError's LLSingleton is not yet initialized. Introduce LLError::is_available() in llerrorcontrol.h and llerror.cpp. Make LLSingletonBase::logwarns() and logerrs() consult LLError::is_available() before attempting to use LL_WARNS or LL_ERRS, respectively. Moreover, make all LLSingleton internal logging use logwarns() and logerrs() instead of directly engaging LL_ERRS or LL_WARNS.
2015-06-25merge buildcleanupOz Linden
2015-06-24MAINT-5232: Introduce inter-LLSingleton dependency tracking.Nat Goodspeed
Introduce LLSingleton::cleanupSingleton() canonical method as the place to put any subclass cleanup logic that might take nontrivial realtime or throw an exception. Neither is appropriate in a destructor. Track all extant LLSingleton subclass instances on a master list, which permits adding LLSingletonBase::cleanupAll() and deleteAll() methods. Also notice when any LLSingleton subclass constructor (or initSingleton() method) calls instance() or getInstance() for another LLSingleton, and capture that other LLSingleton instance as a dependency of the first. This permits cleanupAll() and deleteAll() to perform a dependency sort on the master list, thus cleaning up (or deleting) leaf LLSingletons AFTER the LLSingletons that depend on them. Make C++ runtime's final static destructor call LLSingletonBase::deleteAll() instead of deleting individual LLSingleton instances in arbitrary order. Eliminate "llerror.h" from llsingleton.h, a longstanding TODO.
2015-06-24MAINT-5232: Finish 7724e79aaf62: remove LLGlobalEconomy::initSingleton()Nat Goodspeed
2015-06-24MAINT-5278 WIP - avoid updateAppearanceFromCOF when adding only attachments.Brad Payne (Vir Linden)
2015-06-24MAINT-5295 Remove POSTFIELDS from PUT operation.Rider Linden
2015-06-24MAINT-5026 FIXED 256 prim linksets made of smaller prims frequently link ↵andreykproductengine
only 254
2015-06-25MAINT-427 FIXED Show default (empty) texture if multiple faces with media ↵Mnikolenko ProductEngine
are selected.
2015-06-24MAINT-176 FIXED IM windows don't keep their minimized state after mouselookMnikolenko ProductEngine
2015-06-23Code review results with NatRider Linden
2015-06-23Start work on coprocedure manager.Rider Linden
2015-06-22Replace hand-rolled LLCefLib (Windows) package with one generated by third ↵callum_linden
party scripts
2015-06-22I can't believe I really added these lines - pretend you didn't see themcallum_linden
2015-06-22merge changes for MAINT-4734pavelkproductengine
2015-06-22MAINT-5274 Missing folder arrowandreykproductengine
2015-06-23MAINT-5001 FIXED Logging in and then quickly logging out removes stored ↵Mnikolenko ProductEngine
favorite login locations
2015-06-19workarounds to get this building again; note: review mute list caching ↵Oz Linden
change before promoting
2015-06-19MAINT-5274 missing inventory countandreykproductengine
2015-06-18Update llmanifest.LLManifest.copy_action() to handle symlinksNat Goodspeed
for directories as well as for files.
2015-06-18MAINT-5200: Add debug headers to Facebook slshare-service calls.Nat Goodspeed
2015-06-18Add code in viewer_manifest.py to create a symlink for second copy of CEF ↵Callum Prentice
framework vs copying in second version
2015-06-17Update version of LLCefLib we use - no functional changesin LLCefLib - just ↵Callum Prentice
improved build script for its third party library
2015-06-17Distressing. A variable got autocorrected to 'false' but the compiler ↵Rider Linden
didn't catch it.
2015-06-17https://jira.secondlife.com/browse/MAINT-5283Rider Linden
The default behavior in the HTTP layer changed to follow redirects automatically. This was causing a problem with connecting to the SL share service which was attempting to riderect to the login page at the CURL level. Connections to SL Share will no longer redirect, corrected for Facebook, Flickr and Twitter.
2015-06-17Coding policy fixesRider Linden
2015-06-17Point to *FIRST* Team City & autobuild generated version of LLCefLib for OSXCallum Prentice
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY
2015-06-17dummy merge to really get rid of extra head per hg trick at ↵Oz Linden
http://bit.ly/1R8WhaY