summaryrefslogtreecommitdiff
path: root/indra/newview/lltexturefetch.cpp
AgeCommit message (Collapse)Author
2021-10-22mergeBrad Payne (Vir Linden)
2021-10-11SL-16099 Multi-threaded OpenGL usage on Windows, enable Core Profile and ↵Dave Parks
VAOs by default.
2021-09-28SL-15999 - noninteractive mode: create minimal objects,load no texturesBrad Payne (Vir Linden)
2020-05-25SL-12889 Failed to cache image crashesAndrey Kleshchev
2019-05-29SL-11309 Crash on attempt to costruct singletoneandreykproductengine
2019-05-06SL-11074 FIXED "Cache Hit Rate" in Statistics is brokenmaxim_productengine
2019-04-02Merged in lindenlab/viewer-bearAndreyL ProductEngine
2019-01-14SL-10291 Replace apr_mutex with standard C++11 functionalityandreykproductengine
2018-06-27MergeGraham Linden
2018-05-18Merge 5.1.5Graham Linden graham@lindenlab.com
2018-04-11Add stats for tex cache read / decode / fetch latency for comparison of old ↵Graham Linden graham@lindenlab.com
cache code with TCO.
2018-01-30MAINT-8091 Removed deprecated and unused private memory poolingAndrey Kleshchev
2017-12-05MAINT-2124 Texture allocation issuesandreykproductengine
2017-10-12MAINT-7081 [FIXED] Access (write) violation / buffer overrun in ↵Kitty Barnett
LLTextureFetchWorker::doWork() The trouble lines are: U8 * buffer = (U8 *) ALLOCATE_MEM(LLImageBase::getPrivatePool(), total_size); if (cur_size > 0) { memcpy(buffer, mFormattedImage->getData(), cur_size); } If 'cur_size > mHttpReplyOffset + append_size' then 'total_size -= src_offset' will cause total_size to be smaller than cur_size causing a write access violation on the memcpy. Since the response is invalid it seemed best to make it follow the other failed partial condition. (transplanted from 737e28ec6b4d74f3ff915a4effc13d7b615a6a9b)
2017-10-18MAINT-7779 Logging updateandreykproductengine
2017-09-20SL-683 Fixed Logging parameters not taking effect immediatelyandreykproductengine
2017-05-09MAINT-7343 - improved error case handling and checking for unlikely cornersBrad Payne (Vir Linden)
2017-04-26MAINT-7343 - added periodic logging of state of the asset store.Brad Payne (Vir Linden)
2017-03-29MAINT-7166 - diagnostics for movementBrad Payne (Vir Linden)
2017-03-21SL-409 - added version field = 2 to asset stats, made viewer-side metrics ↵Brad Payne (Vir Linden)
files exactly match the payload sent to simulator.
2017-03-10SL-409 - fixes for viewer asset metrics. Copy and/or assignment of Recording ↵Brad Payne (Vir Linden)
objects is failing, changed to create LLSD blob earlier and just copy that.
2017-03-07SL-409 - added size stats to metrics for texturesBrad Payne (Vir Linden)
2017-03-06SL-409 - consolidated user of ViewerAsset cap for mesh and texture fetching ↵Brad Payne (Vir Linden)
as well.
2016-05-06merge 4.0.4-release and MAINT-5974Oz Linden
2016-04-04merge with 4.0.3-releaseOz Linden
2016-04-01Merged in lindenlab/viewer-bearAndreyL ProductEngine
2016-03-29MAINT-6257 Textures loading issues.andreykproductengine
2016-03-17MergeRider Linden
2016-03-16merge changes for DRTVWR-417Oz Linden
2016-03-03MAINT-2199 reverted previous change, refixed missing cloud and ban lineandreykproductengine
2016-02-27MAINT-2199 restored original UI mechanics, removed icons from UI listandreykproductengine
2016-02-18MAINT-2199 In some rare cases priorities can change, it shouldn't affect ↵andreykproductengine
texture list.
2016-02-16MAINT-2199 separating UI elements from in-world textures.andreykproductengine
2016-01-15merge changes for 4.0.1-releaseOz Linden
2016-01-15Merge VRRider Linden
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-10-21MAINT-4360 FIXED (Setting LogTextureDownloadsToSimulator causes a viewer crash)ruslantproductengine
The fix in fllowing: LLTextureFetch has object LLTextureInfo which is has Recorder object. The recorder object activate (Recorder::handleStart()) self AccumulatorBufferGroup (Recorder::mBuffers into the current (LLTrace::get_thread_recorder()) ThreadRecorder object which created (as I understand) one per thread, and time to time send accumulated data to the master ThreadRecorder. The problem is that LLTextureFetch also can uses from the main thread. I decide add parameter to CTOR LLTextureInfo(bool postponeStartRecoreder) - if it false the recorder start immediatly in LLTextureInfo CTOR body, if true we need to start it manually. Also I add another one LLTextureInfo in LLTextureFetch::mTextureInfoMainThread which is intended for accumulate data from the main thread. The postponed Recorder started/stoped from LLTextureFetch::startThread()/endThread().
2015-10-15MAINT-5732: Issue in texture_load example and some comments regarding ↵Rider Linden
NoOpDeletor
2015-10-15MAINT-5732: Fixes for Mac buildrider
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)
2018-03-30MAINT-8468 Increase max bandwidth on the viewer to 6mbpsandreykproductengine
2015-08-24MAINT-4952: Removed a bit of debug code that got included accidentally and ↵Rider Linden
change host == LLHost() to host.isInvalid()
2015-08-18MAINT-5506: Fix ugly timing bug in llurlentry static initialization.Nat Goodspeed
The problem was that class-static LLUrlEntryParcel::sRegionHost was being initialized by copying class-static LLHost::invalid. Naturally, these two statics are initialized in different source files. Since C++ makes no promises about the relative order in which objects in different object files are initialized, it seems we hit a case in which we were trying to initialize sRegionHost by copying a completely uninitialized LLHost::invalid. In general we might attempt to address such cross-translation-unit issues by introducing an LLSingleton. But in this particular case, the punch line is that LLHost::invalid is explicitly constructed identically to a default-constructed LLHost! In other words, LLHost::invalid provides nothing we couldn't get from LLHost(). All it gives us is an opportunity for glitches such as the above. Remove LLHost::invalid and all references, replacing with LLHost().
2015-07-08Change HttpOptions::ptr_t to be shared_ptr<> rather than intrusive.Rider Linden
2015-07-08Convert LLCore::HttpHeaders to use shared_ptr<> rather than an ↵Rider Linden
intrusive_ptr<> for refrence counting.
2015-06-25merge buildcleanupOz Linden
2015-06-03Remove vestigial httpclient.h include from files that no longer need it.Rider Linden
2014-11-14Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2014-10-20Update to build on Xcode 6.0: Large (and final) collection of fixes for ↵callum_linden
unused variables, unused const-variables, unused member variables & functions etc. Also removed flags from CMake
2014-09-19Cleanup work. Use http constants for content-type andMonty Brandenberg
accept headers in mesh and textures. For texture metrics reporting, use the AP_INVENTORY policy class which is non-pipelined and pointing (usually) in the right direction. Use a do-while(false) structure to manage common exit path code in onCompleted() methods. Identical to a 'goto' but might amuse the pedantic. Tuning on background fetch to have it cycle faster. This is experimental. I suspect with HTTP balancing in llcorehttp, we can do away with the timers here.