summaryrefslogtreecommitdiff
path: root/indra/llimage
AgeCommit message (Collapse)Author
2012-04-13merge changes for drtvwr-135Oz Linden
2012-04-06STORM-1837: check for valid png header before attempting to decodeOz Linden
2012-02-01converted a bunch of narrowing implicit conversions to explicitRichard Linden
2011-12-05SH-2652 WIP -- Add timers to relevant areas, pause render pipeline while ↵Dave Parks
occlusion queries from previous frame are still pending and perform texture decode work.
2011-11-30trivial: change a log info for memory failure for LLImageBaseXiaohong Bao
2011-10-14b782a75c99e6 backout cleanupDave Parks
2011-10-14Merge backout of b782a75c99e6Dave Parks
2011-10-14Backed out changeset b782a75c99e6Dave Parks
2011-07-15Merge from viewer-developmentXiaohong Bao
2011-05-10add debug mode to track the memory allocation/deallocation.Xiaohong Bao
2011-05-07Merge with viewer-experienceMerov Linden
2011-05-04EXP-664 : Make encoding parameters more resilient to bad entries, add levels ↵Merov Linden
as encoding parameters, update test applet to support this
2011-04-22merge changes for storm-1187Oz Linden
2011-04-13EXP-663 : Allow creation of j2c images with precincts and blocks, limited to ↵Merov Linden
llimage_libtest, no viewer change
2011-04-13EXP-669 : Refactor code to use correct LLImageFormatted methods to load ↵Merov Linden
images of all formats, reviewed by richard
2011-04-08STORM-1118 FIXED STORM-1118 Viewer crashes when user tries to upload image ↵Vadim ProductEngine
without JFIF header. * Added checks for image file contents not matching the file extension (e.g. a bitmap named file.jpg). * Added checks for abnormally short files to avoid crashes when parsing them.
2011-04-04STORM-746 : add precincts and blocks arguments taken into account in j2c outputMerov Linden
2011-04-04STORM-746 : add new arguments for precincts and blocks on output, region and ↵Merov Linden
level on input, add code for input loading restriction
2011-03-10STORM-987 : Took Vadim's comment into account: check arguments consistency, ↵Merov Linden
make sure remaining perf data are flushed on exit.
2011-03-09STORM-987 : Add the --image-stats argument, make argument passing more ↵Merov Linden
consistent, fix typos in comments in llimage header
2011-02-24fix the compiling error: "free" is defined and in use globally.Xiaohong Bao
2011-02-23add types to LLPrivateMemoryPoolXiaohong Bao
2011-02-23MergeXiaohong Bao
2011-02-23Automated merge with ssh://hg.lindenlab.com/bao/private-memory-poolXiaohong Bao
2011-02-23Merge from viewer-developmentXiaohong Bao
2011-02-05Introduces a LLThreadLocalData class that can beAleric Inglewood
accessed through the static LLThread::tldata(). Currently this object contains two (public) thread-local objects: a LLAPRRootPool and a LLVolatileAPRPool. The first is the general memory pool used by this thread (and this thread alone), while the second is intended for short lived memory allocations (needed for APR). The advantages of not mixing those two is that the latter is used most frequently, and as a result of it's nature can be destroyed and reconstructed on a "regular" basis. This patch adds LLAPRPool (completely replacing the old one), which is a wrapper around apr_pool_t* and has complete thread-safity checking. Whenever an apr call requires memory for some resource, a memory pool in the form of an LLAPRPool object can be created with the same life-time as this resource; assuring clean up of the memory no sooner, but also not much later than the life-time of the resource that needs the memory. Many, many function calls and constructors had the pool parameter simply removed (it is no longer the concern of the developer, if you don't write code that actually does an libapr call then you are no longer bothered with memory pools at all). However, I kept the notion of short-lived and long-lived allocations alive (see my remark in the jira here: https://jira.secondlife.com/browse/STORM-864?focusedCommentId=235356&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-235356 which requires that the LLAPRFile API needs to allow the user to specify how long they think a file will stay open. By choosing 'short_lived' as default for the constructor that immediately opens a file, the number of instances where this needs to be specified is drastically reduced however (obviously, any automatic LLAPRFile is short lived). *** Addressed Boroondas remarks in https://codereview.secondlife.com/r/99/ regarding (doxygen) comments. This patch effectively only changes comments. Includes some 'merge' stuff that ended up in llvocache.cpp (while starting as a bug fix, now only resulting in a cleanup). *** Added comment 'The use of apr_pool_t is OK here'. Added this comment on every line where apr_pool_t is correctly being used. This should make it easier to spot (future) errors where someone started to use apr_pool_t; you can just grep all sources for 'apr_pool_t' and immediately see where it's being used while LLAPRPool should have been used. Note that merging this patch is very easy: If there are no other uses of apr_pool_t in the code (one grep) and it compiles, then it will work. *** Second Merge (needed to remove 'delete mCreationMutex' from LLImageDecodeThread::~LLImageDecodeThread). *** Added back #include <apr_pools.h>. Apparently that is needed on libapr version 1.2.8., the version used by Linden Lab, for calls to apr_queue_*. This is a bug in libapr (we also include <apr_queue.h>, that is fixed in (at least) 1.3.7. Note that 1.2.8 is VERY old. Even 1.3.x is old. *** License fixes (GPL -> LGPL). And typo in comments. Addresses merov's comments on the review board. *** Added Merov's compile fixes for windows.
2011-02-01fix a minor memory leaking flaw for SH-895: some mild memory leaking (partially)Xiaohong Bao
2011-01-21Merge viewer-development-shining up to REV 3bf724ecb7c6 (fix for SH-829: ↵Xiaohong Bao
Viewer attempting to load precached images in file types that are not being used.)
2011-01-20fix for SH-829: Viewer attempting to load precached images in file types ↵Xiaohong Bao
that are not being used.
2011-01-12trivial: fix some mac compiling errorsXiaohong Bao
2011-01-09FIX VWR-24420 Keep alpha channel in PNG images with background color.Thickbrick Sleaford
Remove code that composites RGBA PNG images that specify a background color down to RGB.
2011-01-06use the private pool in the texture pipelineXiaohong Bao
2010-12-17STORM-744 : Turn llimage/tests/ on againMerov Linden
2010-11-10merge with STORM-105 and viewer-developmentMerov Linden
2010-11-08STORM-105 : takes Vadim's comments into account, clean up use of static ↵Merov Linden
globals and magic strings, enforce naming conventions
2010-11-05STORM-105 : Take Vadim code review into account, code clean upMerov Linden
2010-11-04merge with STORM-105Merov Linden
2010-11-04merge with STORM-105Merov Linden
2010-11-04merge with viewer-developmentMerov Linden
2010-11-04STORM-105 : Tweak the data labels to make them easier to readMerov Linden
2010-11-03STORM-472 Fixed crash that happened while decoding jpg image.Andrew Productengine
In case of files provided in ticket problem occured in libjpeg's jpeg_start_decompress(to be more specofic- inside it's _jinit_color_deconverter()) because if cinfo's out_color_space is RGB, then jpeg_color_space can't be JCS_YCCK (JCS_YCCK jpeg_color_space is possible for JCS_CMYK out_color_space). So when the combination of RGB and JCS_YCCK was encountered, jpeglib called ERREXIT() inside which exit() was called and viewer crashed. - Checking for this combination before calling jpeg_start_decompress() would solve this problem in this specific case, but there are a lot of possible error combinations which cause libjpeg to exit and thus crash viewer, so copypasting checks from it into viewer code would be cumbersome, uneffective and ugly. So another approach was used instead- by default libjpeg calls exit() after encountering an error, but user can provide his own error handling function instead. on_jpeg_error() function was added in fix for this. It sets true a boolean flag that is used to determine whether there were errors in getImageDimensionsJpeg(), and this function's return value depends on it.
2010-10-27STORM-104 : make kdu statically linked, suppress the need for llkduMerov Linden
2010-10-27STORM-105 : improve decompression perf gathering, allow perf name to be ↵Merov Linden
passed on the command line, fix crash in analysis phase
2010-09-17STORM-105 : Add compression data gathering, took partial decompression into ↵Merov Linden
account in stats
2010-09-16Pull update from viewer-developmentMerov Linden
2010-09-15merged STORM-130 (a.k.a. VWR-22769, SNOW-737 Version agnostic libPNG linking)Boroondas Gupte
2010-09-08VWR-22761 : Rearchitecture of llmetricperformancetester and simple (non ↵Merov Linden
complete) implementation in llimagej2c
2010-09-07Automated merge with http://bitbucket.org/TheShining/viewer-developmentXiaohong Bao
2010-09-07fix for VWR-22813: crash at [1] LLImageBase::allocateData(int) ↵Xiaohong Bao
[secondlife-bin llimage.cpp]
2010-08-29SNOW-737 FIXED Version agnostic libPNG linkingBoroondas Gupte
Patch from http://jira.secondlife.com/secure/attachment/41125/version_agnostic_libpng__1.diff applied with fuzz 3: patching file indra/cmake/PNG.cmake Hunk #1 succeeded at 6 with fuzz 3 (offset -2 lines). patching file indra/llimage/llpngwrapper.cpp Hunk #1 succeeded at 215 (offset -2 lines). Hunk #2 succeeded at 363 (offset -2 lines). patching file indra/llimage/llpngwrapper.h Hunk #1 succeeded at 31 (offset -2 lines). Added entry in doc/contributions.txt. No further changes other than that.