summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-02-06Added tag 3.2.9-start for changeset 37dd400ad721Oz Linden
2012-02-03merge changes for vmrg-222Oz Linden
2012-02-03EXP-1868 FIX Remove Merchant Outbox from Me menuRichard Linden
removed merchant outbox context menu reviewed by Leslie
2012-02-03EXP-1868 FIX Remove Merchant Outbox from Me menuRichard Linden
reviewed by Leslie
2012-02-03Automated merge with file:///Users/nat/linden/viewer-tut-fixNat Goodspeed
2012-02-03Escape all strings embedded in TeamCity service messages.Nat Goodspeed
TeamCity requires that certain characters (notably "'") must be escaped when embedded in service messages: http://confluence.jetbrains.net/display/TCD65/Build+Script+Interaction+with+TeamCity#BuildScriptInteractionwithTeamCity-ServiceMessages TUT frequently outputs messages containing "'", e.g. from ensure_equals() failure. We've seen TC output nesting get confused when it fails to process service messages properly due to parsing unescaped messages. Along with test<n> number, report test name (from set_test_name()) when available. Eliminate horsing around to produce normal output on both std::cout and possible output file. When output file is specified, use boost::iostreams::tee_device to do fanout for us. Improve placement (and possibly reliability) of service messages. Clean up a startling amount of redundancy in service-message production.
2012-02-03EXP-1843 WIP Added an option to output avatar rez timing.Vadim ProductEngine
Use the new "Avatar Rez" debugging tag to see the output.
2012-02-01mergeBrad Payne (Vir Linden)
2012-01-30Set bit flag on CreateProcess() to allow AssignProcessToJobObject().Nat Goodspeed
Windows 7 and friends tend to create a process already implicitly allocated to a job object, and a process can only belong to a single job object. Passing CREATE_BREAKAWAY_FROM_JOB in CreateProcessA()'s dwCreationFlags seems to bypass the access-denied error observed with AssignProcessToJobObject() otherwise. This change should (!) enable OS lifespan management for SLVoice.exe et al.
2012-01-30increment viewer version to 3.2.9Oz Linden
2012-01-30Added tag 3.2.8-start for changeset 89980333c99dOz Linden
2012-01-30merge changes for vmrg-219Oz Linden
2012-01-30LLProcess::handle must be qualified when used in LLJob class.Nat Goodspeed
2012-01-30Expose 'handle' as well as 'id' on LLProcess objects.Nat Goodspeed
On Posix, these and the corresponding getProcessID()/getProcessHandle() accessors produce the same pid_t value; but on Windows, it's useful to distinguish an int-like 'id' useful to human log readers versus an opaque 'handle' for passing to platform-specific API functions. So make the distinction in a platform-independent way.
2012-01-30Trim trailing "\r\n" from Windows FormatMessage() string for logging.Nat Goodspeed
2012-01-27On Windows, only quote LLProcess arguments if they seem to need it.Nat Goodspeed
On Posix platforms, the OS argument mechanism makes quoting/reparsing unnecessary anyway, so this only affects Windows. Add optional 'triggers' parameter to LLStringUtils::quote() (default: space and double-quote). Only if the passed string contains a character in 'triggers' will it be double-quoted. This is observed to fix a Windows-specific problem in which plugin child process would fail to start because it wasn't expecting a quoted number. Use LLStringUtils::quote() more consistently in LLProcess implementation for logging.
2012-01-25Introduce two new parameters "CurlUseMultipleThreads" and ↵Xiaohong Bao
"CurlRequestTimeOut" for QA to test Curl.
2012-01-25Automated merge with https://bitbucket.org/VirLinden/vir-project-3Xiaohong Bao
2012-01-25fix for SH-2904: textures remain stuck in HTP stateXiaohong Bao
2012-01-24SH-2791 Use request class constructor/destructor for keeping track of ↵Dave Parks
concurrent requests instead of unreliable increments/decrements sprinkled around the code.
2012-01-30mergeBrad Payne (Vir Linden)
2012-01-24merge changes for vmrg-218Oz Linden
2012-01-24merge changes for vmrg-217Oz Linden
2012-01-24mergeBrad Payne (Vir Linden)
2012-01-24mergeDave Parks
2012-01-24SH-1427 Fix for spot lights not working properly on alpha objects, and fix ↵Dave Parks
for alpha lighting of point lights not matching deferred lights.
2012-01-24mergeBrad Payne (Vir Linden)
2012-01-23Reverting background fetch on an item to the old fetFromServer call to fix ↵Leslie Linden
regression bug in inventory late loading
2012-01-23Reverting rev 22217 changes to background fetch so search and recent will ↵Leslie Linden
fully fetch user inventory
2012-01-23Clarify that items in LLProcess::Params::args are implicitly quoted.Nat Goodspeed
That is, we try to pass through each args entry as a separate child-process arvg[] entry, whitespace and all.
2012-01-23LLStringUtil methods are conventionally static.Nat Goodspeed
2012-01-23Use LLProcess::Params::args::empty() instead of comparing iterators.Nat Goodspeed
2012-01-23* Optimization to not waste some time doing std::string assignment all over ↵Leslie Linden
the graphics code. Reviewed by davep.
2012-01-23Per Richard: close unusable Job Object; move quote() to LLStringUtil.Nat Goodspeed
If LLProcess can't set the right flag on a Windows Job Object, the object isn't useful to us, so we might as well discard it. quote() is sufficiently general that it belongs in LLStringUtil instead of buried as a static helper function in llprocess.cpp.
2012-01-23EXP-1799 FIX -- Replace and Add to Outfit options and Copy to Merchant ↵Leslie Linden
Outbox options can appear in invalid state when a valid folder is last selection EXP-1834 FIX -- Right click context menus on Folders in Merchant Outbox and Library folders can show all inventory options including admin options EXP-1835 FIX -- Right clicking on a folder and selecting New Folder creates folder under My Inventory not within selected folder * Updated folder context menu building to build full options in one step or trigger a load which will rebuild top-level context menu for all selected items when complete. Previous code had an implicit assumption that the selected folder was the only selection after background fetch.
2012-01-23merge changes for storm-1799Oz Linden
2012-01-23merge changes for storm-1798Oz Linden
2012-01-23merge changes for storm-1796Oz Linden
2012-01-23merge changes for storm-1788Oz Linden
2012-01-23merge back changes from viewer-beta branchOz Linden
2012-01-23merge back tags from pre-release branchOz Linden
2012-01-23merge back tags from release branchOz Linden
2012-01-22Every singleton needs a friend...Nat Goodspeed
2012-01-22Use LLProcess::create() to launch SLVoice, rather than inline code.Nat Goodspeed
This appears to close a long-pending action item, as it seems the original LLProcessLauncher implementation was in fact cloned-and-edited from this logic in LLVivoxVoiceClient::stateMachine(). In any case, leveraging LLProcess buys us: - reduced redundancy; fewer maintenance points - logging for both success and errors - (possibly) better SLVoice.exe lifespan management.
2012-01-22Add LLProcess logging on launch(), kill(), isRunning().Nat Goodspeed
Much as I dislike viewer log spam, seems to me starting a child process, killing it and observing its termination are noteworthy events. New logging makes LLExternalEditor launch message redundant; removed.
2012-01-22Make LLProcess::Params streamable; use that in LLExternalEditor.Nat Goodspeed
2012-01-22On Windows, introduce viewer Job Object and assign children to it.Nat Goodspeed
The idea is that, with the right flag settings, this will cause the OS to terminate remaining viewer child processes when the viewer terminates -- whether or not it terminates intentionally. Of course, if LLProcess's caller specifies autokill=false, e.g. to run the viewer updater, that asserts that we WANT the child to persist beyond the viewer session itself.
2012-01-21Since lltrans.h moved to llui, fix linux_updater/CMakeLists.txt.Nat Goodspeed
2012-01-21Convert LLProcess consumers from LLSD to LLProcess::Params block.Nat Goodspeed
Using a Params block gives compile-time checking against attribute typos. One might inadvertently set myLLSD["autofill"] = false and only discover it when things behave strangely at runtime; but trying to set myParams.autofill will produce a compile error. However, it's excellent that the same LLProcess::create() method can accept either LLProcess::Params or a properly-constructed LLSD block.
2012-01-20Define LLProcess::Params; accept create(const LLSDParamAdapter<Params>&).Nat Goodspeed
This allows callers to pass either LLSD formatted as before -- which all callers still do -- or an actual LLProcess::Params block.