Commit Graph

281 Commits (8a13530ce4eeb481ee467fd3ec54f1ed7e9f632a)

Author SHA1 Message Date
Andrey Kleshchev 6e445e82e2 MAINT-8091 Removed deprecated and unused private memory pooling 2018-01-30 14:03:26 +00:00
AndreyL ProductEngine 57a99273ed Merged in lindenlab/viewer-release 2018-01-17 03:20:12 +02:00
andreykproductengine 6ac2b2bb4f MAINT-8167 Fixed uploading JPEG image from Unicode directory fails 2018-01-10 18:51:20 +02:00
andreykproductengine 34d3b49d1f MAINT-2124 Texture allocation issues 2017-12-05 17:54:17 +02:00
Nat Goodspeed e3a2c5e321 DRTVWR-418: Merge from latest viewer-release 2017-11-29 14:47:09 -05:00
andreykproductengine e5ef898728 MAINT-8028 Fixed memory leak in allocateDataSize() 2017-11-27 15:02:33 +02:00
andreykproductengine d7732280a9 Merged from viewer-lynx 2017-10-27 21:00:18 +03:00
Nat Goodspeed 0c7bc67814 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-10-11 14:35:49 -04:00
Oz Linden 01e0b78c59 merge changes for DRTVWR-439 2017-08-16 15:43:58 -04:00
andreykproductengine 3d8dc8cd6d Fixed line endings for llpngwrapper.cpp 2017-06-12 15:26:10 +03:00
ruslantproductengine 6dcde6469d [SL-711] - Eliminate some overheads in texturecache.
- Eliminate memory overhead when need duplicated scaled image.
- Small improvement in LLImageBase::getCodecFromExtension()
2017-06-06 15:30:03 +03:00
pavelkproductengine 5205be0c65 STORM-2148 Crash on trying to save texture file(s) to computer from inventory 2017-05-31 19:28:46 +03:00
Nat Goodspeed ae0b3149ba DRTVWR-418: Fix a round of compile errors surfaced by -std=c++11.
These are mostly things that were in fact erroneous, but accepted by older
compilers.

This changeset has not yet been built with Visual Studio 2013 or Linux gcc,
even with -std=c++11.

This changeset has not been built *without* -std=c++11. It should be used in
conjunction with a corresponding change to LL_BUILD_DARWIN_BASE_SWITCHES in
viewer-build-variables/variables.

This is a work in progress. We do not assert that this changeset completes the
work needed to turn on -std=c++11, even on the Mac.
2017-02-23 16:49:49 -05:00
Nat Goodspeed 434f0e161a Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-02-03 09:54:52 -05:00
AndreyL ProductEngine a65b586b18 MAINT-6729 Additional fix for crash in LLImageGL::analyzeAlpha() 2016-12-08 17:21:05 +02:00
AndreyL ProductEngine f75ea457c8 MAINT-6818 Fix for LLImageBase::allocateData crash 2016-10-19 01:12:52 +03:00
Rider Linden 100aa4b79e Merge 2016-09-16 14:59:52 -07:00
Oz Linden 5edd4cecfc merge changes for exception handling 2016-09-06 11:07:39 -04:00
Oz Linden 8c86c594be paren fix 2016-09-06 11:01:02 -04:00
Oz Linden 53f9fbcfb7 add run time error checking to LLImageRaw::scale 2016-09-06 09:11:10 -04:00
AndreyL ProductEngine 7d77b82f37 Merged in andreyl_productengine/viewer-427 2016-08-29 05:22:45 +03:00
pavelkproductengine b22fc7f470 MAINT-6476 VOB - User can add any size image to an Outfit Gallery outfit folders 2016-08-25 17:48:27 +03:00
Nat Goodspeed 83eb960063 MAINT-5011: Derive image-load exceptions from LLContinueError.
Failure to load an image shouldn't crash the whole viewer.
2016-08-17 15:47:08 -04: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
AndreyL ProductEngine 5e02d304f0 MAINT-6618 More checks 2016-08-09 19:26:30 +03:00
AndreyL ProductEngine d4b1db277c MAINT-6618 Fixed the crash in LLImageRaw::scale() + some additional checks 2016-08-09 05:07:39 +03:00
AndreyL ProductEngine f459c67fae Buildfix: brought back LINDEN_J2C_COMMENT_PREFIX 2016-08-05 00:58:09 +03:00
AndreyL ProductEngine 2339e759fc MAINT-4327/MAINT-6584 Supress the crash on memory allocation error when decoding J2C images 2016-07-27 05:49:07 +03:00
Nat Goodspeed acdb050ce5 MAINT-6584: Convert LLImage class hierarchy to standard 'bool'
instead of legacy BOOL.
2016-07-22 11:35:23 -04:00
Nat Goodspeed 71b593e88b MAINT-6584: Streamline static LLImageJ2C implementation API.
Specifically, remove unused function pointer types CreateLLImageJ2CFunction,
DestroyLLImageJ2CFunction and EngineInfoLLImageJ2CFunction.

Also eliminate static fallbackDestroyLLImageJ2CImpl() and
fallbackEngineInfoLLImageJ2CImpl(), leaving only static
fallbackCreateLLImageJ2CImpl().

We do need a factory function to instantiate the appropriate LLImageJ2CImpl
subclass, so leave the fallbackCreateLLImageJ2CImpl() link seam in place.

However, given that every known LLImageJ2CImpl subclass is cheap to
instantiate, make getEngineInfo() a pure virtual method on that subclass: the
static LLImageJ2C::getEngineInfo() method can temporarily construct an
instance to query. While we're at it, make getEngineInfo() return std::string
like LLImageJ2C::getEngineInfo(). It's ridiculous that
fallbackEngineInfoLLImageJ2CImpl() implementations constructed a static
std::string and returned its c_str(), only to have LLImageJ2C::getEngineInfo()
construct ANOTHER std::string from the returned const char*.

fallbackDestroyLLImageJ2CImpl() never did anything useful: it merely deleted
the passed LLImageJ2CImpl subclass pointer as the specific subclass type. But
since LLImageJ2CImpl's destructor is virtual, LLImageJ2C's destructor could
simply delete the stored LLImageJ2CImpl*. In fact, make mImpl a
boost::scoped_ptr<LLImageJ2CImpl> so we don't even have to delete it manually.
2016-07-21 16:49:02 -04: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
Nat Goodspeed 636ce117bb MAINT-5011: Per NickyD, put PngError in anonymous namespace. 2016-07-14 10:35:56 -04:00
Nat Goodspeed 75149be061 MAINT-5011: Wrap thrown png_const_charp in new PngError class
derived from std::runtime_error.
2016-07-13 14:19:26 -04:00
Nicky e8aa2dd71f x64: Do not use a union of LLColor4U. Especially having the two pointer in there will blow up the struct to at least 8 byte, which will break VBO packing as this class needs to be 4 byte in size.
(transplanted from 847df86d6b5daa69dcfc428df18876a9c1e8bef6)
2016-04-22 14:58:25 +02:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
ruslantproductengine ff3e1ae7d6 MAINT-5343 (Viewer sometimes crashes when updating a local tga texture when RLE or BMP compression is disabled - LLImageTGA::decodeTruecolorNonRle) 2015-08-04 17:51:58 +03:00
ruslantproductengine c3affc4d6b Hotfix for build on OSX with -Werror,-Wtautological-compare 2015-05-05 21:05:13 +03:00
Mnikolenko ProductEngine bb87365c37 Merge viewer-release, become version 3.7.29 2015-04-28 13:36:35 +03: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 905431cf60 merge changes for 3.7.25-release 2015-02-24 15:48:28 -05:00
ruslantproductengine a7530cb3fa MAINT-4329 FIXED LLImageRaw::scale() scales each image *twice* for no apparent reason
Linux & OS X compile error fix
2015-02-23 14:06:42 +02:00
ruslantproductengine ef67802a19 Backed out changeset: 81b8de17a195 2015-02-23 14:03:07 +02:00
ruslantproductengine 6926a6977d MAINT-4329 FIXED LLImageRaw::scale() scales each image *twice* for no apparent reason
Linux & OS X compile error fix
2015-02-23 13:14:25 +02:00
ruslantproductengine 32bb73eff4 Backed out changeset: 4c24cfce033a 2015-02-23 13:11:34 +02:00
ruslantproductengine 59fb68799c MAINT-4329 FIXED LLImageRaw::scale() scales each image *twice* for no apparent reason
Linux & OS X compile error fix
2015-02-23 12:45:28 +02:00
ruslantproductengine 8c819b6980 MAINT-4329 FIXED LLImageRaw::scale() scales each image *twice* for no apparent reason 2015-02-20 01:32:24 +02:00