summaryrefslogtreecommitdiff
path: root/indra/llmath
AgeCommit message (Collapse)Author
2011-02-23MergeXiaohong 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-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-18fix for SH-659: small textures not loadedXiaohong Bao
2011-01-10STORM-807 : Clean up code as discussed with AndrewMerov Linden
2011-01-07mergeAndrew Meadows
2011-01-07mergeAndrew Meadows
2010-12-30STORM-955: VWR-24312: Massively duplicated objectsAleric Inglewood
Turns out that most of my SNOW-800 patch was included in Viewer 2 (albeit without crediting me). However, not everything was used and some more cleaning up was possible. After this patch, and when compiling with optimization, there are no duplicates left anymore that shouldn't be there in the first place. Apart from the debug stream iostream guard variable, there are several static variables with the same name (r, r1, r2, etc) but that indeed actually different symbol objects. Then there are a few constant POD arrays that are duplicated a hand full of times because they are accessed with a variable index (so optimizing them away is not possible). I left them like that (although defining those as extern as well would have been more consistent and not slower; in fact it would be faster theoretically because those arrays could share the same cache page then).
2010-12-28STORM-825 : Reenable the LLMatrix3::orthogonalize test in ↵Wolfpup Lowenhar
llmath/tests/m3math_test.cpp Removed the skipping of a working test as this was causeing a the test to fail building and thus not actualy running all the tests.
2010-12-15ER-407 child bounding boxes not rotated properly for encroachment returnabilityAndrew Meadows
Using the correct method for joining BBoxes in the agent frame ::addBBoxAgent()
2010-12-14ER-398 viewer's encroachment logic only uses bounding box of root primAndrew Meadows
Adding LLBBox::join() to allow us to compute the bounding box of a linked object
2010-11-18Added viewer-side "object overlaps parcel" check encroachment returnabilty UIAndrew Meadows
Reviewed with Falcon
2010-08-30merging up from viewer-developmentAaron Terrell (Enus)
2010-08-24standardizing test suite names as class name under testAaron Terrell (Enus)
2010-08-24Backed out changeset c3d41f18ce2bTofu Linden
back-out the back-out for this branch. yay.
2010-08-24Backed out changeset a62bf7c0af21Tofu Linden
Backing out this merge that I pushed (prematurely) to the wrong place.
2010-08-24merge heads. whew.Tofu Linden
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-06-17Merge (and resolve conflict) from q/viewer-releaseKent Quirk
2010-06-15SNOW-620 PARTIAL Infinite loop in LLSphere::getBoundingSphereTofu Linden
Neither the test nor the code being tested are good - the unit test can hang. Skipping test for now, passing over to the sim maint backlog.
2010-06-11Merged from viewer-releaseDessie Linden
2010-06-08DEV-11516 FIXED VWR-5308: Current wind noise generation is CPU intensive.Tofu Linden
Minor optimizations to wind generation. Patch by gigs and aimee, reviewed by merov.
2010-04-28Make LLVolume::createSide a little faster.Dave Parks
(transplanted from 4d43e3b83ccffd725ec6cb234ddcfa0833f17a9f)
2010-04-19merge from viewer-trunkTofu Linden
2010-04-15EXT-4388 Crash in octree line segment intersection code (getMask)Tofu Linden
Add yet more paranoia-and-return-or-assert, this time for +-INF in input vector. To be reviewed by Bao. (transplanted from 2012f21d23c66179345fb26148cfbe19835b325e)
2010-02-23index off for tristrip fix on davep's tristrip optimizationPalmer Truelson
2010-02-06Draw prims using triangle strips instead of triangle lists.Dave Parks
2010-02-10CID-423Tofu Linden
Checker: UNINIT Function: LLVolume::cleanupTriangleData(int, const std::vector<LLVolume::Point, std::allocator<LLVolume::Point>> &, int, int *, int &, LLVector3 **, int &, int **) File: /indra/llmath/llvolume.cpp The code looks right, I'm just adding an llassert().
2010-02-03CID-288Tofu Linden
Checker: UNINIT_CTOR Function: LLCamera::LLCamera(float, float, int, float, float) File: /indra/llmath/llcamera.cpp
2010-02-03CID-289Tofu Linden
Checker: UNINIT_CTOR Function: LLCamera::LLCamera() File: /indra/llmath/llcamera.cpp
2010-02-01Use floorf() instead of floor() when we know the param is an F32. Which ↵Tofu Linden
here, it always is.
2010-01-28Try for a slightly cunning fix to CID-352Tofu Linden
Checker: UNINIT_CTOR Function: LLInterp<float>::LLInterp() File: /indra/llmath/llinterp.h
2010-01-27CID-127Tofu Linden
Checker: NO_EFFECT Function: LLOctreeNode<LLDrawable>::updateMinMax() File: /indra/llmath/lloctree.h
2009-12-18Remove inline llwarns to cut out some linker bloat.James Cook
2010-03-26Applied (manually in places) diff from ↵Palmer
svn.lindenlab.com/svn/linden/branches/render-pipeline/render-pipeline-7@135361 to get deferred rendering changes from the svn branch. Bleh!
2009-11-27Add CMake var LL_TESTS to optionally disable tests for build timingJames Cook
2009-11-09mergeMike Antipov
--HG-- branch : product-engine
2009-11-09Fixed windows build for M_PI constant.Mike Antipov
Macro definitions for common math constants (e.g. M_PI) are declared under the _USE_MATH_DEFINES in math.h Added "#define _USE_MATH_DEFINES" before including math.h (for Windows build only) --HG-- branch : product-engine
2009-11-06merge from texture-pipelineSteve Bennetts
2009-11-06merge QAR-1829: texture pipeline branch in viewer-2.0.0.3Xiaohong Bao
2009-10-19mergeSteve Bennetts
2009-10-16merge from latest svn/viewer-2-0 to hg/viewer-2-0Mark Palange (Mani)
2009-10-16DEV-41080 more automated testing love - minor comment fixing.Adam Moss
2009-10-15skip a failing resurrected test in m3math >:(Adam Moss
2009-10-15DEV-41368 resurrect dead m3math tut test, convert it to a llmath integration ↵Adam Moss
test.
2009-10-15DEV-41345 turn llmodularmath_tut into a real llmath unit test.Adam Moss
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-10-13DEV-40417: Fixed a few cases where gcc 4.x can emit warningsMartin Reddy
suggesting the use of extra parentheses.
2009-10-08DEV-41080 fix and upgrade v4color_test.cpp to a real unit test.Adam Moss
2009-10-08DEV-41080 - wriggle some method implementations out into header ↵Adam Moss
implementations, just enough so that llbboxlocal can be a unit test rather than an integration test. Slightly dubious about whether it's worth it.