summaryrefslogtreecommitdiff
path: root/indra/llimage
AgeCommit message (Collapse)Author
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.
2010-08-24standardizing test suite names as class name under testAaron Terrell (Enus)
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-08-04merge the fix of SNOW-793: memory leak in LLImageFormatted::appendDataXiaohong Bao
2010-06-16Automated merge with ssh://hg.lindenlab.com/q/viewer-releaseXiaohong Bao
2010-06-15EXT-7851 FIXED Cleaned up code to avoid confusion.Lynx Linden
The mTmpWriteBuffer member variable was never actually being allocated because it was being shadowed by a local variable. This is why the code never crashed. I've removed the member variable as it was clearly never used and really confused the code.
2010-06-14EXT-7851 FIXED Memory leak in LLImagePNG::encode()Lynx Linden
We were not freeing the temporary image buffer if the PNG encoding failed. This probably doesn't happen very often, but it's good to plug the leak all the same.
2010-06-16EXT-6567: POSSIBLE FIXED: crash at LLImageBase::allocateData [secondlife-bin ↵Xiaohong Bao
llimage.cpp:170]; also removed the debug code for this bug.
2010-04-28fix for EXT-7159: textures are not fully loaded when http-texture is enabled.Xiaohong Bao
and EXT-6928: Viewer crashes immediately after enabling HTTP Textures on a http-texture-server-1 simulator
2010-04-21dos2unix this header :(Tofu Linden
2010-04-20fix for EXT-4082 Normal Uploading huge image crashes viewerYuri Chebotarev
https://codereview.productengine.com/secondlife/r/11/ reviewed Tofu Linden --HG-- branch : product-engine
2010-04-01make LLImageBase::allocateData() thread-safe.Xiaohong Bao
insert debug code for EXT-6567: crash at LLImageBase::allocateData [secondlife-bin llimage.cpp:170]
2010-03-10debug code for EXT-5599: Viewer crashes consistently, in Linden Homes region.Xiaohong Bao
2010-02-13CID-3Tofu Linden
Checker: CHECKED_RETURN Function: LLImageDecodeThread::update(unsigned int) File: /indra/llimage/llimageworker.cpp
2010-02-08EXT-4929 Crash in llimage.cppKarl Stiefvater (qarl)
EXT-4713 Hook attachment from loco pocos pirate outfit causes viewer crash removed broken assert (all cases are covered by asserts downstream.) reviewed by James.
2010-01-21checking for null in LLImageRaw::copy to prevent a crashLeyla Farazha
2009-11-06mergeSteve Bennetts
2009-11-06merge from texture-pipelineSteve Bennetts
2009-11-06SNOW-329 Handling of error case in llimage.cpp incorrectTofu Linden
This is the same fix as DEV-32269, trivially ported to viewer2. reviewed by merov, james, moss!
2009-11-06merge QAR-1829: texture pipeline branch in viewer-2.0.0.3Xiaohong Bao
2009-10-16merge from latest svn/viewer-2-0 to hg/viewer-2-0Mark Palange (Mani)
2009-10-14Merge a big bunch of fixes from maint-viewer. Hooray.Adam Moss
svn merge -r136066:136073 svn+ssh://svn.lindenlab.com/svn/linden/branches/maint-viewer/maint-viewer-24-qa-9 DEV-8553 New Server Tools - Prep Land For Sale DEV-32942 (QAR-1521) Bad border crossings or TP / Ruthing issues DEV-32942 (QAR-1521) Bad border crossings or TP / Ruthing issues DEV-33239 VWR-13816: Resizing the Search Window Causes the Results to Refresh back to First Page DEV-27746 Running a dev build of Second Life will make console window show up on non-dev builds (Windows) DEV-33209 Linux 1.24.0.120778 client fails to run DEV-29123 SVC-3871: Crash of viewer when clicking on ghost objects at (0,0,0) on a sim DEV-35433 Attempting to upload wrong file type crashes viewer DEV-33499 viewer2009 is not using KDU DEV-33912 Griefing viewer crashes others' viewers with malformed sound files DEV-3784 VWR-138: Animation Priority not working correctly, Can't create new AOs DEV-20678 VWR-9069: Region variable says 'Region Name' in AR if no object is selected DEV-19934 Help->About Second Life doesn't differentiate between 32- and 64-bit Vista DEV-6604 Restored folders have 'Purge Item' and 'Restore Item' options DEV-12867 VWR-5717: Selected Text is not replaced by Input text when Japanese IME is on DEV-11894 Notecards/Texture windows don't open completely when opened from inventory DEV-10641 VWR-4955: Local Chat doesn't show end of last conversation DEV-30039 VWR-12620: Viewer build fails on Linux when compiled with -O2 (--type=Release) DEV-20944 VWR-9065: (intermittent) Right Click >profile on avatar does not display profile DEV-24828 Menu accelerator prefixes shouldn't be hard-coded DEV-34529 VWR-14267: Clicking send in an IM window does not add the sent text to the line editor history DEV-34124 Invite to group, search by name will not show resident if their first name is two characters DEV-20930 VWR-9248: On Mac: the "--url" option causes a command line parsing error DEV-35306 Adult keyword filter triggers multiple warnings DEV-35503 VWR-3595: "Second Life requires True Color (32-bit) to run in a window" message is incorrect DEV-35656 VWR-12995: FTBFS: error: format '%-3d' expects type 'int', but argument 3 has type 'size_t' DEV-30043 VWR-12533: Linux viewer build for OpenAL fails during packaging unless FMOD library is available DEV-31898 VWR-13202: Right clicking mouse triggers arrow key control events DEV-32610 Keyboard shortcuts on OSX viewer overridden by OSX DEV-27067 Coverity Prevent: EVALUATION_ORDER defects DEV-26188 VWR-2242: Specially formatted .BVH file can cause avatar distortion DEV-25475 About Land dialog no longer shows Area: field DEV-19897 OSX Viewer Installer (for an RC) opens with poor positioning DEV-22837 Inventory> Search Recent Items highlighting incorrect characters DEV-21709 VWR-9377: Mapping will default to leave exact sim name listing first. (Searching Gar forces Gar to come up and not Garden of Dreams) DEV-23079 implement volume serial for linux client DEV-13930 VWR-6432: Space Navigator operation with vehicles is broken DEV-27666 VWR-10829: Linux Viewer: CLICK_ACTION_PAY shows CLICK_ACTION_PLAY icon DEV-23670 Viewer crashes on startup if installed into a custom folder with Korean, Japanese or Chinese characters in path DEV-19313 VWR-8454: PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS not highlighted in script editor DEV-19918 VWR-8885: Move character/*.xml files to source bundle DEV-25555 VWR-11172: A source coding mistake prevents number-pad keys from specifying Ctrl+digit shortcuts on Windows DEV-8536 VWR-4057: Multi-line chat display bug - first character in line missing DEV-29592 Mac LLFastTimer uses wall clock instead of Intel PMU DEV-29644 VWR-12587: Cmake install target has a hard coded secondlife-bin reference remaining DEV-25320 VWR-11128: Python not always detected by develop.py DEV-30040 VWR-12617: Poor type name that violates Coding Standard breaks compatibility with system header files DEV-30380 indra/newview/res-sdl/toolpay.BMP is modified during ./develop.py configure DEV-31247 VWR-12763: non-portable printf specifier used with size_t causes FTBFS on 64bit (due to -Werror) DEV-29565 VWR-12569: A comment in lluistring.h contains undefined UTF-8 code sequences DEV-22100 VWR-9620: send_parcel_select_objects in newview/llfloaterland.cpp uses the wrong datatype for the ReturnType field causing a warning DEV-31911 Selected objects / primitives should be greyed out when nothing is selected DEV-3667 Windows: Accelerator keys should be "Ctrl+X" rather than "Ctrl-X" DEV-27223 disable gstreamer on 64-bit linux DEV-8172 We Need a Linden Sale Option to Sell Land to Anyone DEV-25511 VWR-10311: Enable LipSync by default DEV-20443 Revamp group creation confirmation dialog to be more communicative DEV-20132 VWR-7800: Joystick / SpaceNavigator. Camera should remain in position when exiting flycam mode into avatar mode. DEV-18420 VWR-8393: Have build scripts copy fmod from an external location DEV-24841 VWR-10717: Right Space Navigator button should toggle fly in avatar movment, not jump/flyup. DEV-28457 change auto-populate value in buy L$ window from 1000 to 2000 DEV-15545 VWR-3725: Please add resize option to the SEARCH window UI
2009-08-31Merge with trunkBryan O'Sullivan
2009-07-01svn merge -r125825:125901 svn+ssh://svn.lindenlab.com/svn/user/cg/qar-1654Christian Goetze
QAR-1654 merge completed.