Commit Graph

196 Commits (c75d443c8359f0bceee2df2adc0a67b2890922ea)

Author SHA1 Message Date
andreykproductengine a6595dfa9b SL-10344 Fix boost priority 2019-04-16 19:50:29 +03:00
Andrey Kleshchev 4156fb832c MAINT-6363 Normal and specular maps should not be downloaded if ALM is off 2018-03-06 12:59:32 +00:00
AndreyL ProductEngine 57a99273ed Merged in lindenlab/viewer-release 2018-01-17 03:20:12 +02:00
Andrey Kleshchev 062be76dd5 MAINT-4354 Render stalls in object heavy regions 2017-12-15 12:43:54 +00:00
Nat Goodspeed 52899ed62a DRTVWR-418, MAINT-6996: Rationalize LLMemory wrt 64-bit support.
There were two distinct LLMemory methods getCurrentRSS() and
getWorkingSetSize(). It was pointless to have both: on Windows they were
completely redundant; on other platforms getWorkingSetSize() always returned
0. (Amusingly, though the Windows implementations both made exactly the same
GetProcessMemoryInfo() call and used exactly the same logic, the code was
different in the two -- as though the second was implemented without awareness
of the first, even though they were adjacent in the source file.)

One of the actual MAINT-6996 problems was due to the fact that
getWorkingSetSize() returned U32, where getCurrentRSS() returns U64. In other
words, getWorkingSetSize() was both useless *and* wrong. Remove it, and change
its one call to getCurrentRSS() instead.

The other culprit was that in several places, the 64-bit WorkingSetSize
returned by the Windows GetProcessMemoryInfo() call (and by getCurrentRSS())
was explicitly cast to a 32-bit data type. That works only when explicitly or
implicitly (using LLUnits type conversion) scaling the value to kilobytes or
megabytes. When the size in bytes is desired, use 64-bit types instead.

In addition to the symptoms, LLMemory was overdue for a bit of cleanup.

There was a 16K block of memory called reserveMem, the comment on which read:
"reserve 16K for out of memory error handling." Yet *nothing* was ever done
with that block! If it were going to be useful, one would think someone would
at some point explicitly free the block. In fact there was a method
freeReserve(), apparently for just that purpose -- which was never called. As
things stood, reserveMem served only to *prevent* the viewer from ever using
that chunk of memory. Remove reserveMem and the unused freeReserve().

The only function of initClass() and cleanupClass() was to allocate and free
reserveMem. Remove initClass(), cleanupClass() and the LLCommon calls to them.

In a similar vein, there was an LLMemoryInfo::getPhysicalMemoryClamped()
method that returned U32Bytes. Its job was simply to return a size in bytes
that could fit into a U32 data type, returning U32_MAX if the 64-bit value
exceeded 4GB. Eliminate that; change all its calls to getPhysicalMemoryKB()
(which getPhysicalMemoryClamped() used internally anyway). We no longer care
about any platform that cannot handle 64-bit data types.
2017-05-02 10:51:18 -04:00
AndreyL ProductEngine 602c9bc04a MAINT-6317 Restored the fix after a conflict resolution 2016-05-20 02:12:26 +03:00
AndreyL ProductEngine c50f96b492 Merged in lindenlab/viewer-lynx 2016-05-20 02:06:08 +03:00
andreykproductengine d3de134da0 MAINT-6409 invisiprims should be preloaded 2016-05-18 17:17:32 +03:00
andreykproductengine e795fee864 MAINT-6409 texture_list xml file should be in cache. 2016-05-17 17:05:59 +03:00
Oz Linden 950c41d184 merge 4.0.4-release and MAINT-5974 2016-05-06 10:28:42 -04:00
ruslantproductengine 503dc6ee65 MAINT-6317 [QuickGraphics-RC] Some rigged mesh attachments render fully on jellybaby avatars when ALM is enabled
FIXED
- remove global identifier for the black texture
- add black texture 2x2x3 localy on apllication startup
- add special flag to LLViewerFetchedTexture for protect from removing
2016-04-21 12:47:49 +03:00
Oz Linden 9be58e915a merge with 4.0.3-release 2016-04-04 15:53:09 -04:00
AndreyL ProductEngine 0ff6fa576a Merged in lindenlab/viewer-bear 2016-04-01 06:18:49 +03:00
AndreyL ProductEngine eb413ec41e Merged in lindenlab/viewer-release 2016-04-01 03:56:20 +03:00
andreykproductengine 0e155c51a9 MAINT-6257 Textures loading issues. 2016-03-29 18:52:54 +03:00
andreykproductengine 783cc9756a Backed out changeset: ca5d40144cc2 2016-03-29 15:17:15 +03:00
andreykproductengine d9545003ed MAINT-6257 Particle textures loading issues. 2016-03-25 17:24:06 +02:00
Rider Linden b8c1976460 Merge 2016-03-17 13:14:21 -07:00
Oz Linden 31f3db0291 merge changes for DRTVWR-417 2016-03-16 13:08:06 -04:00
andreykproductengine 30f9287645 MAINT-2199 reverted previous change, refixed missing cloud and ban line 2016-03-03 00:15:33 +02:00
andreykproductengine b3e7fff9ae MAINT-2199 restored original UI mechanics, removed icons from UI list 2016-02-27 16:06:54 +02:00
AndreyL ProductEngine 37809faefa Merged in lindenlab/viewer-lynx 2016-03-07 18:45:12 +02:00
andreykproductengine 6a37e654ef Merge from viewer-lynx and conflict resolution 2016-02-29 19:23:47 +02:00
andreykproductengine 09cb792aa7 MAINT-5297 - icons were not removed from memory 2016-02-24 16:22:38 +02:00
andreykproductengine 10e2bd56c1 MAINT-2199 In some rare cases priorities can change, it shouldn't affect texture list. 2016-02-18 17:35:43 +02:00
andreykproductengine a0e9ee4757 MAINT-2199 separating UI elements from in-world textures. 2016-02-16 20:44:53 +02:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Rider Linden 7c61728b4b MAINT-4952: Removed a bit of debug code that got included accidentally and change host == LLHost() to host.isInvalid() 2015-08-24 14:19:30 -07:00
Nat Goodspeed 62527e6f18 MAINT-5506: Fix ugly timing bug in llurlentry static initialization.
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-08-18 17:05:29 -04:00
Oz Linden a8ef252571 merge changes for 3.7.27-release 2015-04-13 16:23:36 -04:00
Oz Linden 5c6cf3e7fb restore the ll[io]fstream because we need them as wrappers on Windows for wide char paths; on other platforms they are now just typedefs to the std classes 2015-04-10 11:02:37 -04:00
Oz Linden 8b42c7898e replace llifstream and llofstream with std::ifstream and std::ofstream respectively 2015-04-07 17:59:28 -04:00
Oz Linden 3a57b18896 convert llifstream and llofstream to std::ifstream and std::ofstream respectively 2015-04-07 17:28:05 -04:00
Oz Linden 66bc510786 detect xml errors in parsing xml files and remove those files 2015-04-02 21:43:34 -04:00
ruslantproductengine 16d0b87b3c MAINT-4092 FIXED Prim faces with opaque diffuse maps, with material set to ALPHA MODE BLEND, do not render
Pathset #3. Fix problem with not existing UUID's and if have a "conflict" when
material can't have DIFFUSE_ALPHA_MODE_BLEND and DIFFUSE_ALPHA_MODE_NONE simultaneously.
2014-11-21 00:37:15 +02:00
callum_linden 577a3973ea Update to build on Xcode 6.0: Large (and final) collection of fixes for unused variables, unused const-variables, unused member variables & functions etc. Also removed flags from CMake 2014-10-20 14:00:39 -07:00
Richard Linden 391ac367d6 SH-4634 FIX Interesting: Viewer crashes when receiving teleport offer
renamed fast timers to have unique names, changes instance tracker to never allow duplicates
2013-11-19 17:40:44 -08:00
Richard Linden 17e9c872ad Automated merge with http://bitbucket.org/lindenlab/viewer-release 2013-11-11 19:17:49 -08:00
Richard Linden c35801ef1c fixed focus issue on inventory 2013-11-05 19:26:23 -08:00
Richard Linden 697d2e720b renamed TimeBlock to BlockTimerStatHandle 2013-10-15 20:24:42 -07:00
Richard Linden 80dfbbaacd merge from viewer-release 2013-10-08 11:59:24 -07:00
Richard Linden 59628d6f85 Automated merge with http://bitbucket.org/lindenlab/viewer-release 2013-10-01 14:28:39 -07:00
Graham Linden 95e34d86b9 The unbearable lightness of being norspec 2013-09-18 18:24:16 -07:00
Richard Linden 52da9f5f49 merge with viewer-release 2013-09-09 18:58:41 -07:00
Graham Linden e8bd9afbe6 Merge viewer-release 3.6.5 Cocoa 2013-09-09 13:10:45 -07:00
Richard Linden cbe397ad13 changed fast timer over to using macro
another attempt to move mem stat into base class
2013-09-05 14:04:13 -07:00
Graham Linden d8f700d6ac NORSPEC-355 NORSPEC-356 replaced llerrs with asserts to avoid crashes from false alarms in release 2013-08-28 09:14:29 -07:00
Richard Linden 08eb52c10c merge 2013-08-19 10:20:55 -07:00
Richard Linden 612892b45a SH-4433 WIP: Interesting: Statistics > Ping Sim is always 0 ms
continued conversion to units system
made units perform type promotion correctly and preserve type in arithmetic
e.g. can now do LLVector3 in units
added typedefs for remaining common unit types, including implicits
2013-08-18 22:30:27 -07:00
Xiaohong Bao 4290365ebb Automated merge with http://bitbucket.org/lindenlab/viewer-interesting 2013-08-16 17:59:24 -06:00