Merged with RLVa-1.4.3 tip

Kitty Barnett 2011-11-10 23:17:58 +01:00
commit bef8751bff
27 changed files with 421 additions and 181 deletions

View File

@ -1,2 +1,2 @@
eacf5bf10aedc13ec18392c4ade19b3d0f1e5433
0229a2edaa4da5631640267ba5a25ecdb2d761d8
6f908cb4aa7e4b815a0ac67081d0a1792975cc12
4ddee90bf86fa9122ad78c8a06995974fb62d9e0

View File

@ -1 +1 @@
5697118601ade0f70f851639661ba637174b3024
c10aca90c7b1c46355536437d84a4b06abf79c5d

View File

@ -1 +1 @@
5697118601ade0f70f851639661ba637174b3024
c10aca90c7b1c46355536437d84a4b06abf79c5d

View File

@ -1,4 +1,5 @@
[Appearance/MixedViewers]
- fixed : "Worn items in Viewer 2 and Viewer 1.x aren't synchronized" (http://jira.secondlife.com/browse/VWR-17594)
- fixed : "Worn items in Viewer 2 and Viewer 1.x aren't synchronized" [see http://jira.secondlife.com/browse/VWR-17594]
-> current fix compares *only* the wearables in COF with the wearables specified by AgentWearablesUpdate
-> controlled by "VerifyInitialWearables" (defaults to FALSE with SL-3.0)
- fixed : minor memory leak in LLInitialWearablesFetch::processWearablesMessage()

View File

@ -1 +1 @@
e64734568360fbd2b15c6b5ace6566fce96b8ebf
18282ea42608d73059bd6d6a3b4301365fb8d4e9

View File

@ -1 +1 @@
0fd2a1181a969fb168eac2aab4ffb32fff64d82d
f2e17425d895bc03c6a7bbb3d52ba417f49088a0

View File

@ -4,6 +4,12 @@
- changed : removed LL's changeset tags and added new (consistent) SL-2.X.Y tags for releases
- changed : break into the debugger rather than forcing the process into an unrecoverable state for "llerrs" on non-release builds
-> Windows only
- fixed : *OS builds don't set the default Visual Studio project and configuration
- changed : set the "FMOD" flag to TRUE for the (Windows) ReleaseOS build configuration
- changed : set the "UNATTENDED" flag to FALSE for all (Windows) *OS build configurations
- changed : updated OpenJPEG package with debug information for crash debugging
- fixed : *OS builds don't set the default Visual Studio project and configuration
- fixed : libpng is built with "Whole Program Optimization" and causing slow linker performance
-> "MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance"
-> causes the linker to abort the current run and start over
- fixed : viewer crashes or refuses to start when TeamViewer is installed or running
-> see http://jira.phoenixviewer.com/browse/FIRE-3062

236
.hgtags
View File

@ -240,3 +240,239 @@ dbaaef19266478a20654c46395300640163e98e3 3.1.0-beta2
bc01ee26fd0f1866e266429e85f76340523e91f1 3.1.0-beta2
ae2de7b0b33c03dc5bdf3a7bfa54463b512221b2 DRTVWR-92_3.1.0-release
ae2de7b0b33c03dc5bdf3a7bfa54463b512221b2 3.1.0-release
0000000000000000000000000000000000000000 2.1.1-release
0000000000000000000000000000000000000000 v2start
0000000000000000000000000000000000000000 2-1rn1
0000000000000000000000000000000000000000 2-1-beta-2
0000000000000000000000000000000000000000 beta-5
0000000000000000000000000000000000000000 beta-3-5
0000000000000000000000000000000000000000 2-1-1-beta-1
0000000000000000000000000000000000000000 2-1-beta-3
0000000000000000000000000000000000000000 beta-4
0000000000000000000000000000000000000000 2-1-beta-1
0000000000000000000000000000000000000000 2-1-1-beta-2
0000000000000000000000000000000000000000 viewer-2-1-0-start
0000000000000000000000000000000000000000 viewer-2-0-0
0000000000000000000000000000000000000000 alpha-3
0000000000000000000000000000000000000000 viewer-2-0-1
0000000000000000000000000000000000000000 2-1-1-beta-2
0000000000000000000000000000000000000000 alpha-4
0000000000000000000000000000000000000000 fork to viewer-20qa
0000000000000000000000000000000000000000 viewer-2-0-2-start
0000000000000000000000000000000000000000 2-1-1-release
0000000000000000000000000000000000000000 2-1-release
0000000000000000000000000000000000000000 alpha-6
0000000000000000000000000000000000000000 2-1-1-release
0000000000000000000000000000000000000000 2-1-beta-4
0000000000000000000000000000000000000000 howard-demo
0000000000000000000000000000000000000000 alpha-5
0000000000000000000000000000000000000000 fork to viewer-2-0
0000000000000000000000000000000000000000 last_sprint
0000000000000000000000000000000000000000 beta_2.1.3
0000000000000000000000000000000000000000 2.2.0-beta1
0000000000000000000000000000000000000000 2.2.0-beta2
0000000000000000000000000000000000000000 2.2.0-beta3
0000000000000000000000000000000000000000 2.2.0-beta4
0000000000000000000000000000000000000000 2.3.0-beta1
0000000000000000000000000000000000000000 2.2.0-release
0000000000000000000000000000000000000000 2.3.0-start
0000000000000000000000000000000000000000 2.3.0-beta1
0000000000000000000000000000000000000000 2.3.0-beta2
0000000000000000000000000000000000000000 2.3.0-beta3
0000000000000000000000000000000000000000 2.3.0-release
0000000000000000000000000000000000000000 2.4.0-start
0000000000000000000000000000000000000000 2.4.0-beta1
0000000000000000000000000000000000000000 2.4.0-beta1
0000000000000000000000000000000000000000 2.4.0-beta1
0000000000000000000000000000000000000000 2.4.0-beta2
0000000000000000000000000000000000000000 2.4.0-release
0000000000000000000000000000000000000000 2.5.0-start
0000000000000000000000000000000000000000 2.5.0-beta1
0000000000000000000000000000000000000000 76f586a8e22b
0000000000000000000000000000000000000000 2.5.0-beta2
0000000000000000000000000000000000000000 nat-eventapi2-base
0000000000000000000000000000000000000000 DRTVWR-5_2.2.0-beta1
0000000000000000000000000000000000000000 DRTVWR-3_2.2.0-beta2
0000000000000000000000000000000000000000 DRTVWR-7_2.2.0-beta3
0000000000000000000000000000000000000000 DRTVWR-8_2.2.0-release
0000000000000000000000000000000000000000 DRTVWR-14_2.3.0-beta1
0000000000000000000000000000000000000000 DRTVWR-17_2.3.0-beta2
0000000000000000000000000000000000000000 DRTVWR-20_2.3.0-beta3
0000000000000000000000000000000000000000 DRTVWR-13_2.3.0-release
0000000000000000000000000000000000000000 DRTVWR-26_2.4.0-beta1
0000000000000000000000000000000000000000 DRTVWR-27_2.4.0-beta2
0000000000000000000000000000000000000000 DRTVWR-25_2.4.0-release
0000000000000000000000000000000000000000 DRTVWR-32_2.5.0-beta1
0000000000000000000000000000000000000000 DRTVWR-33_2.5.0-beta2
0000000000000000000000000000000000000000 2.5.0-beta3
0000000000000000000000000000000000000000 DRTVWR-34_2.5.0-beta3
0000000000000000000000000000000000000000 2.5.0-release
0000000000000000000000000000000000000000 DRTVWR-31_2.5.0-release
0000000000000000000000000000000000000000 dons-headless-hackathon-work
0000000000000000000000000000000000000000 2.5.1-start
0000000000000000000000000000000000000000 2.5.1-release
0000000000000000000000000000000000000000 DRTVWR-37_2.5.1-release
0000000000000000000000000000000000000000 DRTVWR-38_2.5.2-release
0000000000000000000000000000000000000000 2.5.2-release
0000000000000000000000000000000000000000 2.6.0-start
0000000000000000000000000000000000000000 2.6.0-start
0000000000000000000000000000000000000000 2.6.0-start
0000000000000000000000000000000000000000 2.6.0-beta1
0000000000000000000000000000000000000000 DRTVWR-40_2.6.0-beta1
0000000000000000000000000000000000000000 DRTVWR-41_2.6.0-beta2
0000000000000000000000000000000000000000 2.6.0-beta2
0000000000000000000000000000000000000000 2.6.1-start
0000000000000000000000000000000000000000 DRTVWR-43_2.6.1-beta1
0000000000000000000000000000000000000000 2.6.1-beta1
0000000000000000000000000000000000000000 DRTVWR-42_2.6.1-release
0000000000000000000000000000000000000000 2.6.1-release
0000000000000000000000000000000000000000 2.6.2-start
0000000000000000000000000000000000000000 DRTVWR-39_2.6.0-release
0000000000000000000000000000000000000000 2.6.0-release
0000000000000000000000000000000000000000 DRTVWR-45_2.6.2-beta1
0000000000000000000000000000000000000000 2.6.2-beta1
0000000000000000000000000000000000000000 DRTVWR-44_2.6.2-release
0000000000000000000000000000000000000000 2.6.2-release
0000000000000000000000000000000000000000 end-of-develop.py
0000000000000000000000000000000000000000 2.6.3-start
0000000000000000000000000000000000000000 DRTVWR-47_2.6.3-beta1
0000000000000000000000000000000000000000 2.6.3-beta1
0000000000000000000000000000000000000000 DRTVWR-48_2.6.3-beta2
0000000000000000000000000000000000000000 2.6.3-beta2
0000000000000000000000000000000000000000 DRTVWR-50_2.6.5-beta1
0000000000000000000000000000000000000000 2.6.5-beta1
0000000000000000000000000000000000000000 2.6.6-start
0000000000000000000000000000000000000000 DRTVWR-52_2.6.6-beta1
0000000000000000000000000000000000000000 2.6.6-beta1
0000000000000000000000000000000000000000 2.6.8-start
0000000000000000000000000000000000000000 DRTVWR-55_2.6.8-beta1
0000000000000000000000000000000000000000 2.6.8-beta1
0000000000000000000000000000000000000000 2.6.9-start
0000000000000000000000000000000000000000 2.6.9-start
0000000000000000000000000000000000000000 DRTVWR-57_2.6.9-beta1
0000000000000000000000000000000000000000 2.6.9-beta1
0000000000000000000000000000000000000000 DRTVWR-54_2.6.8-release
0000000000000000000000000000000000000000 2.6.8-release
0000000000000000000000000000000000000000 DRTVWR-51_2.6.6-release
0000000000000000000000000000000000000000 2.6.6-release
0000000000000000000000000000000000000000 DRTVWR-46_2.6.3-release
0000000000000000000000000000000000000000 2.6.3-release
0000000000000000000000000000000000000000 DRTVWR-56_2.6.9-release
0000000000000000000000000000000000000000 2.6.9-release
0000000000000000000000000000000000000000 2.7.0-start
0000000000000000000000000000000000000000 DRTVWR-59_2.7.0-beta1
0000000000000000000000000000000000000000 2.7.0-beta1
0000000000000000000000000000000000000000 2.7.1-start
0000000000000000000000000000000000000000 DRTVWR-61_2.7.1-beta1
0000000000000000000000000000000000000000 2.7.1-beta1
0000000000000000000000000000000000000000 DRTVWR-60_2.7.1-release
0000000000000000000000000000000000000000 2.7.1-release
0000000000000000000000000000000000000000 2.7.2-start
0000000000000000000000000000000000000000 DRTVWR-63_2.7.2-beta1
0000000000000000000000000000000000000000 2.7.2-beta1
0000000000000000000000000000000000000000 2.7.3-start
0000000000000000000000000000000000000000 2.7.4-start
0000000000000000000000000000000000000000 DRTVWR-67_2.7.4-beta1
0000000000000000000000000000000000000000 2.7.4-beta1
0000000000000000000000000000000000000000 DRTVWR-66_2.7.4-release
0000000000000000000000000000000000000000 2.7.4-release
0000000000000000000000000000000000000000 DRTVWR-60_2.7.1-release
0000000000000000000000000000000000000000 DRTVWR-67_2.7.4-beta1
0000000000000000000000000000000000000000 2.7.4-beta1
0000000000000000000000000000000000000000 2.7.1-release
0000000000000000000000000000000000000000 2.7.5-start
0000000000000000000000000000000000000000 DRTVWR-69_2.7.5-beta1
0000000000000000000000000000000000000000 2.7.5-beta1
0000000000000000000000000000000000000000 2.8.0-start
0000000000000000000000000000000000000000 2.8.1-start
0000000000000000000000000000000000000000 DRTVWR-68_2.7.5-release
0000000000000000000000000000000000000000 2.7.5-release
0000000000000000000000000000000000000000 DRTVWR-71_2.8.0-beta1
0000000000000000000000000000000000000000 2.8.0-beta1
0000000000000000000000000000000000000000 DRTVWR-70_2.8.0-release
0000000000000000000000000000000000000000 2.8.0-release
0000000000000000000000000000000000000000 DRTVWR-73_2.8.1-beta1
0000000000000000000000000000000000000000 2.8.1-beta1
0000000000000000000000000000000000000000 DRTVWR-72_2.8.1-release
0000000000000000000000000000000000000000 2.8.1-release
0000000000000000000000000000000000000000 DRTVWR-76_2.8.1-hotfix
0000000000000000000000000000000000000000 2.8.1-hotfix
0000000000000000000000000000000000000000 2.8.2-start
0000000000000000000000000000000000000000 DRTVWR-72_2.8.1-release
0000000000000000000000000000000000000000 2.8.1-release
0000000000000000000000000000000000000000 2.8.3-start
0000000000000000000000000000000000000000 DRTVWR-75_2.8.3-beta1
0000000000000000000000000000000000000000 2.8.3-beta1
0000000000000000000000000000000000000000 DRTVWR-74_2.8.3-release
0000000000000000000000000000000000000000 2.8.3-release
0000000000000000000000000000000000000000 3.0.0-start
0000000000000000000000000000000000000000 DRTVWR-78_3.0.0-beta1
0000000000000000000000000000000000000000 3.0.0-beta1
0000000000000000000000000000000000000000 3.0.0-start
0000000000000000000000000000000000000000 3.0.1-start
0000000000000000000000000000000000000000 DRTVWR-81_3.0.1-beta1
0000000000000000000000000000000000000000 3.0.1-beta1
0000000000000000000000000000000000000000 3.0.2-start
0000000000000000000000000000000000000000 DRTVWR-78_3.0.0-release
0000000000000000000000000000000000000000 3.0.0-release
0000000000000000000000000000000000000000 DRTVWR-83_3.0.2-beta1
0000000000000000000000000000000000000000 3.0.2-beta1
0000000000000000000000000000000000000000 DRTVWR-86_3.0.2-beta2
0000000000000000000000000000000000000000 3.0.2-beta2
0000000000000000000000000000000000000000 3.0.3-start
0000000000000000000000000000000000000000 DRTVWR-78_3.0.0-release
0000000000000000000000000000000000000000 DRTVWR-78_3.0.0-release
0000000000000000000000000000000000000000 DRTVWR-77_3.0.0-release
0000000000000000000000000000000000000000 DRTVWR-85_3.0.3-beta1
0000000000000000000000000000000000000000 3.0.3-beta1
0000000000000000000000000000000000000000 3.0.4-start
0000000000000000000000000000000000000000 DRTVWR-89_3.0.3-beta2
0000000000000000000000000000000000000000 3.0.3-beta2
0000000000000000000000000000000000000000 DRTVWR-84_3.0.3-release
0000000000000000000000000000000000000000 3.0.3-release
0000000000000000000000000000000000000000 3.0.5-start
0000000000000000000000000000000000000000 3.1.0-start
0000000000000000000000000000000000000000 DRTVWR-93_3.1.0-beta1
0000000000000000000000000000000000000000 3.1.0-beta1
0000000000000000000000000000000000000000 DRTVWR-96_3.1.0-beta2
0000000000000000000000000000000000000000 3.1.0-beta2
0000000000000000000000000000000000000000 DRTVWR-96_3.1.0-beta2
0000000000000000000000000000000000000000 DRTVWR-96_3.1.0-beta2
0000000000000000000000000000000000000000 3.1.0-beta2
0000000000000000000000000000000000000000 3.1.0-beta2
0000000000000000000000000000000000000000 DRTVWR-92_3.1.0-release
0000000000000000000000000000000000000000 3.1.0-release
668851b2ef0f8cf8df07a0fba429e4a6c1e70abb SL-2.0.1
b03065d018b8a2e28b7de85b293a4c992cb4c12d SL-2.1.0
bb38ff1a763738609e1b3cada6d15fa61e5e84b9 SL-2.1.1
1415e6538d54fd5d568ee88343424d57c6803c2c SL-2.2.0
6ad3d6fa35a4e320e9ce442fce2bf9c7fc852556 SL-2.3.0
1ed382c6a08ba3850b6ce9061bc551ddece0ea07 SL-2.4.0
b723921b5c711bd24dbe77dc76ef488b544dac78 SL-2.5.0
4dede9ae1ec74d41f6887719f6f1de7340d8578d SL-2.5.1
b53a0576eec80614d7767ed72b40ed67aeff27c9 SL-2.5.2
42f32494bac475d0737799346f6831558ae8bf5d SL-2.6.0
c9182ed77d427c759cfacf49a7b71a2e20d522aa SL-2.6.1
214180ad5714ce8392b82bbebcc92f4babd98300 SL-2.6.2
8f2da1701c81a62352df2b8d413d27fb2cade9a6 SL-2.6.3
dac76a711da5f1489a01c1fa62ec97d99c25736d SL-2.6.6
be2000b946f8cb3de5f44b2d419287d4c48ec4eb SL-2.6.8
77e5a08344c95738ab879f9671b7758cddd712a3 SL-2.6.9
a9abb9633a266c8d2fe62411cfd1c86d32da72bf SL-2.7.1
057f319dd8eccdf63a54d99686c68cdcb31b6abc SL-2.7.4
6866d9df6efbd441c66451debd376d21211de39c SL-2.7.5
493d9127ee50e84ba08a736a65a23ca86f7a5b01 SL-2-8-0
29e93d7e19991011bd12b5748142b11a5dcb4370 SL-2.8.1
fb85792b84bf28428889c4cc966469d92e5dac4c SL-2-8-3
1778f26b6d0ae762dec3ca37140f66620f2485d9 SL-3-0-0
0496d2f74043cf4e6058e76ac3db03d44cff42ce SL-3.0.3
ae2de7b0b33c03dc5bdf3a7bfa54463b512221b2 SL-3.1.0
425f96b1e81e01644bf5e951961e7d1023bffb89 RLVa-1.2.0
fc0cbb86f5bd6e7737159e35aea2c4cf9f619b62 RLVa-1.2.1
43cb7dc1804de1a25c0b2b3f0715584af1f8b470 RLVa-1.2.2
89532c8dfd5b6c29f1cb032665b44a74a52452e1 RLVa-1.3.0
7bc5039ccf0b36eafbf6ce33a52b5e26332aa04c RLVa-1.3.1
a563f7e215c7883c1cfd20908085687a0ed96284 RLVa-1.4.0
40644beae9c4a617504163d5c9f195dc7bfff1b4 RLVa-1.4.1
8787094c309a44ca32b7472acc9217a3c37f00c3 RLVa-1.4.2
9faa527558a1906a5754cd9f4b3641eaa0fd2978 RLVa-1.4.3

View File

@ -1,11 +1,11 @@
@REM Run bison under Windows. This script is needed so that bison can
@REM find m4, even if neither program is present in PATH.
@set bison=%1
set M4PATH=%2
set M4=
@set output=%3
@set input=%4
set PATH=%M4PATH%;%PATH%
%bison% -d -o %output% %input%
@REM Run bison under Windows. This script is needed so that bison can
@REM find m4, even if neither program is present in PATH.
@set bison=%1
set M4PATH=%2
set M4=
@set output=%3
@set input=%4
set PATH=%M4PATH%;%PATH%
%bison% -d -o %output% %input%

View File

@ -1,24 +1,24 @@
/**
* $LicenseInfo:firstyear=2002&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
/* After all that, this file is empty. */
/**
* $LicenseInfo:firstyear=2002&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
/* After all that, this file is empty. */

View File

@ -14581,6 +14581,17 @@ Change of this parameter will affect the layout of buttons in notification toast
<key>Value</key>
<integer>0</integer>
</map>
<key>VerifyInitialWearables</key>
<map>
<key>Comment</key>
<string>Compares the initial wearables to the COF contents to determine which one to use for the intial outfit</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>Boolean</string>
<key>Value</key>
<integer>0</integer>
</map>
<key>VertexShaderEnable</key>
<map>
<key>Comment</key>

View File

@ -59,7 +59,7 @@
LLAgentWearables gAgentWearables;
BOOL LLAgentWearables::mInitialWearablesUpdateReceived = FALSE;
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
bool LLAgentWearables::mInitialWearablesLoaded = false;
// [/SL:KB]
@ -1553,7 +1553,7 @@ void LLAgentWearables::setWearableOutfit(const LLInventoryItem::item_array_t& it
// Start rendering & update the server
mWearablesLoaded = TRUE;
checkWearablesLoaded();
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-09-22 (Catznip-2.6.0a) | Modified: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-09-22 (Catznip-3.0.0a) | Modified: Catznip-2.2.0a
if (!mInitialWearablesLoaded)
{
mInitialWearablesLoaded = true;
@ -1817,7 +1817,7 @@ LLUUID LLAgentWearables::computeBakedTextureHash(LLVOAvatarDefines::EBakedTextur
// Combines userRemoveAllAttachments() and userAttachMultipleAttachments() logic to
// get attachments into desired state with minimal number of adds/removes.
//void LLAgentWearables::userUpdateAttachments(LLInventoryModel::item_array_t& obj_item_array)
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
void LLAgentWearables::userUpdateAttachments(LLInventoryModel::item_array_t& obj_item_array, bool fAttachOnly)
// [/SL:KB]
{
@ -1885,7 +1885,7 @@ void LLAgentWearables::userUpdateAttachments(LLInventoryModel::item_array_t& obj
// Remove everything in objects_to_remove
// userRemoveMultipleAttachments(objects_to_remove);
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
if (!fAttachOnly)
{
userRemoveMultipleAttachments(objects_to_remove);
@ -2258,7 +2258,7 @@ boost::signals2::connection LLAgentWearables::addLoadedCallback(loaded_callback_
return mLoadedSignal.connect(cb);
}
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
boost::signals2::connection LLAgentWearables::addInitialWearablesLoadedCallback(loaded_callback_t cb)
{
return mInitialWearablesLoadedSignal.connect(cb);

View File

@ -76,7 +76,7 @@ public:
BOOL isWearableCopyable(LLWearableType::EType type, U32 index /*= 0*/) const;
BOOL areWearablesLoaded() const;
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
bool areInitalWearablesLoaded() const { return mInitialWearablesLoaded; }
// [/SL:KB]
bool isCOFChangeInProgress() const { return mCOFChangeInProgress; }
@ -215,13 +215,13 @@ public:
// Static UI hooks
//--------------------------------------------------------------------
public:
static void userRemoveWearable(const LLWearableType::EType &type, const U32 &index);
static void userRemoveWearablesOfType(const LLWearableType::EType &type);
// static void userRemoveWearable(const LLWearableType::EType &type, const U32 &index);
// static void userRemoveWearablesOfType(const LLWearableType::EType &type);
typedef std::vector<LLViewerObject*> llvo_vec_t;
// static void userUpdateAttachments(LLInventoryModel::item_array_t& obj_item_array);
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
// Not the best way to go about this but other attempts changed far too much LL code to be a viable solution
static void userUpdateAttachments(LLInventoryModel::item_array_t& obj_item_array, bool fAttachOnly = false);
// [/SL:KB]
@ -243,7 +243,7 @@ public:
typedef boost::function<void()> loaded_callback_t;
typedef boost::signals2::signal<void()> loaded_signal_t;
boost::signals2::connection addLoadedCallback(loaded_callback_t cb);
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
boost::signals2::connection addInitialWearablesLoadedCallback(loaded_callback_t cb);
// [/SL:KB]
@ -253,7 +253,7 @@ public:
private:
loading_started_signal_t mLoadingStartedSignal; // should be called before wearables are changed
loaded_signal_t mLoadedSignal; // emitted when all agent wearables get loaded
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
loaded_signal_t mInitialWearablesLoadedSignal; // emitted once when the initial wearables are loaded
// [/SL:KB]
@ -266,7 +266,7 @@ private:
wearableentry_map_t mWearableDatas;
static BOOL mInitialWearablesUpdateReceived;
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-InitialWearablesLoadedCallback | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
static bool mInitialWearablesLoaded;
// [/SL:KB]
BOOL mWearablesLoaded;

View File

@ -33,6 +33,9 @@
#include "llinventoryfunctions.h"
#include "llstartup.h"
#include "llvoavatarself.h"
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2011-09-10 (Catznip-3.0.0a)
#include "llviewercontrol.h"
// [/SL:KB]
// [RLVa:KB] - Checked: 2010-12-15 (RLVa-1.2.2c)
#include "rlvhelper.h"
// [/RLVa:KB]
@ -128,10 +131,10 @@ void LLInitialWearablesFetch::processContents()
gInventory.collectDescendentsIf(mComplete.front(), cat_array, wearable_array,
LLInventoryModel::EXCLUDE_TRASH, is_wearable);
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-05-18 (Catznip-2.6.0a) | Modified: Catznip-2.0.0h
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-05-18 (Catznip-3.0.0a) | Modified: Catznip-2.0.0h
// NOTE: don't use the current COF contents if 'wearable_array' is empty (ie first logon with 2.0 or some other problem)
bool fUpdateFromCOF = !wearable_array.empty();
if (fUpdateFromCOF)
if ( (fUpdateFromCOF) && (gSavedSettings.getBOOL("VerifyInitialWearables")) )
{
LLAppearanceMgr::wearables_by_type_t items_by_type(LLWearableType::WT_COUNT);
LLAppearanceMgr::sortItemsByActualDescription(wearable_array);
@ -159,7 +162,7 @@ void LLInitialWearablesFetch::processContents()
LLAppearanceMgr::instance().setAttachmentInvLinkEnable(true);
// if (wearable_array.count() > 0)
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-28 (Catznip-2.6.0a) | Modified: Catznip-2.0.0e
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-28 (Catznip-3.0.0a) | Modified: Catznip-2.0.0e
if (fUpdateFromCOF)
// [/SL:KB]
{
@ -188,36 +191,35 @@ public:
virtual void done()
{
gInventory.removeObserver(this);
/*
// Link to all fetched items in COF.
LLPointer<LLInventoryCallback> link_waiter = new LLUpdateAppearanceOnDestroy;
for (uuid_vec_t::iterator it = mIDs.begin();
it != mIDs.end();
++it)
{
LLUUID id = *it;
LLViewerInventoryItem *item = gInventory.getItem(*it);
if (!item)
{
llwarns << "fetch failed!" << llendl;
continue;
}
link_inventory_item(gAgent.getID(),
item->getLinkedUUID(),
LLAppearanceMgr::instance().getCOF(),
item->getName(),
item->getDescription(),
LLAssetType::AT_LINK,
link_waiter);
}
*/
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-08-14 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// // Link to all fetched items in COF.
// LLPointer<LLInventoryCallback> link_waiter = new LLUpdateAppearanceOnDestroy;
// for (uuid_vec_t::iterator it = mIDs.begin();
// it != mIDs.end();
// ++it)
// {
// LLUUID id = *it;
// LLViewerInventoryItem *item = gInventory.getItem(*it);
// if (!item)
// {
// llwarns << "fetch failed!" << llendl;
// continue;
// }
//
// link_inventory_item(gAgent.getID(),
// item->getLinkedUUID(),
// LLAppearanceMgr::instance().getCOF(),
// item->getName(),
// item->getDescription(),
// LLAssetType::AT_LINK,
// link_waiter);
// }
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-08-14 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
doOnIdleOneTime(boost::bind(&LLFetchAndLinkObserver::doneIdle, this));
// [/SL:KB]
}
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-02 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-02 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
void doneIdle()
{
// NOTE: the code above makes the assumption that COF is empty which won't be the case the way it's used now
@ -250,7 +252,7 @@ void LLInitialWearablesFetch::processWearablesMessage()
{
// Populate the current outfit folder with links to the wearables passed in the message
// InitialWearableData *wearable_data = new InitialWearableData(mAgentInitialWearables[i]); // This will be deleted in the callback.
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-05-02 (Catznip-2.6.0a) | Added: Catznip-2.0.0f
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-05-02 (Catznip-3.0.0a) | Added: Catznip-2.0.0f
// Fixes minor leak: since COF is used onInitialWearableAssetArrived() will never get called and "wearable_data" leaks
InitialWearableData* wearable_data = &mAgentInitialWearables[i];
// [/SL:KB]

View File

@ -294,7 +294,7 @@ public:
void onWearableAssetFetch(LLWearable *wearable);
void onAllComplete();
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
bool pollStopped();
// [/SL:KB]
@ -376,15 +376,11 @@ void LLWearableHoldingPattern::eraseTypeToRecover(LLWearableType::EType type)
mTypesToRecover.erase(type);
}
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-06-19 (Catznip-2.6.0a) | Added: Catznip-2.1.2a
// Fix for http://jira.secondlife.com/browse/VWR-18512
/*
void LLWearableHoldingPattern::setObjItems(const LLInventoryModel::item_array_t& items)
{
mObjItems = items;
}
*/
// [/SL:KB]
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-06-19 (Catznip-3.0.0a) | Added: Catznip-2.1.2a
//void LLWearableHoldingPattern::setObjItems(const LLInventoryModel::item_array_t& items)
//{
// mObjItems = items;
//}
void LLWearableHoldingPattern::setGestItems(const LLInventoryModel::item_array_t& items)
{
@ -481,17 +477,13 @@ void LLWearableHoldingPattern::onAllComplete()
llinfos << "Updating agent wearables with " << mResolved << " wearable items " << llendl;
LLAppearanceMgr::instance().updateAgentWearables(this, false);
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-03-22 (Catznip-2.6.0a) | Added: Catznip-2.1.2a
// Fix for http://jira.secondlife.com/browse/VWR-18512
/*
// Update attachments to match those requested.
if (isAgentAvatarValid())
{
llinfos << "Updating " << mObjItems.count() << " attachments" << llendl;
LLAgentWearables::userUpdateAttachments(mObjItems);
}
*/
// [/SL:KB]
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-03-22 (Catznip-3.0.0a) | Added: Catznip-2.1.2a
// // Update attachments to match those requested.
// if (isAgentAvatarValid())
// {
// llinfos << "Updating " << mObjItems.count() << " attachments" << llendl;
// LLAgentWearables::userUpdateAttachments(mObjItems);
// }
if (isFetchCompleted() && isMissingCompleted())
{
@ -522,7 +514,7 @@ bool LLWearableHoldingPattern::pollFetchCompletion()
{
llwarns << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl;
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
// If we were signalled to stop then we shouldn't do anything else except poll for when it's safe to delete ourselves
doOnIdleRepeating(boost::bind(&LLWearableHoldingPattern::pollStopped, this));
return true;
@ -619,7 +611,7 @@ public:
{
llwarns << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl;
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
// If we were signalled to stop then we shouldn't do anything else except poll for when it's safe to delete ourselves
return;
// [/SL:KB]
@ -697,7 +689,7 @@ void LLWearableHoldingPattern::clearCOFLinksForMissingWearables()
}
}
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
bool LLWearableHoldingPattern::pollStopped()
{
// We have to keep on polling until we're sure that all callbacks have completed or they'll cause a crash
@ -716,7 +708,7 @@ bool LLWearableHoldingPattern::pollMissingWearables()
{
llwarns << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl;
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-2.5.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-COFCorruption | Checked: 2010-04-14 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
// If we were signalled to stop then we shouldn't do anything else except poll for when it's safe to delete ourselves
doOnIdleRepeating(boost::bind(&LLWearableHoldingPattern::pollStopped, this));
return true;
@ -1420,7 +1412,7 @@ bool LLAppearanceMgr::getCanReplaceCOF(const LLUUID& outfit_cat_id)
// Check whether it's the base outfit.
// if (outfit_cat_id.isNull() || outfit_cat_id == getBaseOutfitUUID())
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-21 (Catznip-2.6.0a) | Added: Catznip-2.1.2d
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-21 (Catznip-3.0.0a) | Added: Catznip-2.1.2d
if ( (outfit_cat_id.isNull()) || ((outfit_cat_id == getBaseOutfitUUID()) && (!isOutfitDirty())) )
// [/SL:KB]
{
@ -1535,7 +1527,7 @@ void LLAppearanceMgr::filterWearableItems(
if (size <= 0)
continue;
// S32 start_index = llmax(0,size-max_per_type);
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-05-11 (Catznip-2.6.0a) | Added: Catznip-2.0.0h
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-05-11 (Catznip-3.0.0a) | Added: Catznip-2.0.0h
S32 start_index =
llmax(0, size - ((LLAssetType::AT_BODYPART == LLWearableType::getAssetType((LLWearableType::EType)i)) ? 1 : max_per_type));
// [/SL:KB[
@ -2025,7 +2017,7 @@ void LLAppearanceMgr::updateAppearanceFromCOF(bool update_base_outfit_ordering)
remove_non_link_items(wear_items);
remove_non_link_items(obj_items);
remove_non_link_items(gest_items);
// [SL:KB] - Patch: Apperance-Misc | Checked: 2010-11-24 (Catznip-2.6.0a) | Added: Catzip-2.4.0f
// [SL:KB] - Patch: Apperance-Misc | Checked: 2010-11-24 (Catznip-3.0.0a) | Added: Catzip-2.4.0f
// Since we're following folder links we might have picked up new duplicates, or exceeded MAX_CLOTHING_PER_TYPE
removeDuplicateItems(wear_items);
removeDuplicateItems(obj_items);
@ -2040,7 +2032,7 @@ void LLAppearanceMgr::updateAppearanceFromCOF(bool update_base_outfit_ordering)
dumpItemArray(wear_items,"asset_dump: wear_item");
dumpItemArray(obj_items,"asset_dump: obj_item");
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-22 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
// Update attachments to match those requested.
if (isAgentAvatarValid())
{
@ -2168,7 +2160,7 @@ void LLAppearanceMgr::updateAppearanceFromCOF(bool update_base_outfit_ordering)
}
}
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-02 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-02 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
void LLAppearanceMgr::updateAppearanceFromInitialWearables(LLInventoryModel::item_array_t& initial_items)
{
const LLUUID& idCOF = getCOF();
@ -3043,7 +3035,7 @@ void LLAppearanceMgr::removeItemFromAvatar(const LLUUID& id_to_remove)
// //*TODO move here the exact removing code from LLWearableBridge::removeItemFromAvatar in the future
// LLWearableBridge::removeItemFromAvatar(item_to_remove);
// }
// [SL:KB] - Patch: Appearance-RemoveWearableFromAvatar | Checked: 2010-08-13 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-RemoveWearableFromAvatar | Checked: 2010-08-13 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
// [RLVa:KB] - Checked: 2010-09-04 (RLVa-1.2.1c) | Added: RLVa-1.2.1c
if ( (!rlv_handler_t::isEnabled()) || (gRlvWearableLocks.canRemove(item_to_remove)) )
// [/RLVa:KB]
@ -3211,7 +3203,7 @@ void LLAppearanceMgr::setAttachmentInvLinkEnable(bool val)
{
llinfos << "setAttachmentInvLinkEnable => " << (int) val << llendl;
mAttachmentInvLinkEnabled = val;
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
if (mAttachmentInvLinkEnabled)
{
linkPendingAttachments();
@ -3239,7 +3231,7 @@ void dumpAttachmentSet(const std::set<LLUUID>& atts, const std::string& msg)
void LLAppearanceMgr::registerAttachment(const LLUUID& item_id)
{
gInventory.addChangedMask(LLInventoryObserver::LABEL, item_id);
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
if (isLinkInCOF(item_id))
{
return;
@ -3253,7 +3245,7 @@ void LLAppearanceMgr::registerAttachment(const LLUUID& item_id)
// it will trigger gAgentWariables.notifyLoadingFinished()
// But it is not acceptable solution. See EXT-7777
// LLAppearanceMgr::addCOFItemLink(item_id, false); // Add COF link for item.
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-2.6.0a) | Modified: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-3.0.0a) | Modified: Catznip-2.2.0a
LLPointer<LLInventoryCallback> cb = new LLRegisterAttachmentCallback();
LLAppearanceMgr::addCOFItemLink(item_id, false, cb); // Add COF link for item.
// [/SL:KB]
@ -3267,7 +3259,7 @@ void LLAppearanceMgr::registerAttachment(const LLUUID& item_id)
void LLAppearanceMgr::unregisterAttachment(const LLUUID& item_id)
{
gInventory.addChangedMask(LLInventoryObserver::LABEL, item_id);
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-10-05 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
uuid_vec_t::iterator itPendingAttachLink = std::find(mPendingAttachLinks.begin(), mPendingAttachLinks.end(), item_id);
if (itPendingAttachLink != mPendingAttachLinks.end())
{
@ -3285,7 +3277,7 @@ void LLAppearanceMgr::unregisterAttachment(const LLUUID& item_id)
}
}
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-18 (Catznip-2.6.0a) | Modified: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-18 (Catznip-3.0.0a) | Modified: Catznip-2.2.0a
void LLAppearanceMgr::linkPendingAttachments()
{
LLPointer<LLInventoryCallback> cb = NULL;

View File

@ -51,7 +51,7 @@ public:
typedef std::vector<LLInventoryModel::item_array_t> wearables_by_type_t;
void updateAppearanceFromCOF(bool update_base_outfit_ordering = false);
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-02 (Catznip-2.6.0a) | Added: Catznip-2.0.0a
// [SL:KB] - Patch: Appearance-MixedViewers | Checked: 2010-04-02 (Catznip-3.0.0a) | Added: Catznip-2.0.0a
void updateAppearanceFromInitialWearables(LLInventoryModel::item_array_t& initial_items);
// [/SL:KB]
bool needToSaveCOF();
@ -241,7 +241,7 @@ private:
std::auto_ptr<LLOutfitUnLockTimer> mUnlockOutfitTimer;
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-18 (Catznip-2.6.0a) | Modified: Catznip-2.1.2e
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-09-18 (Catznip-3.0.0a) | Modified: Catznip-2.1.2e
public:
void linkPendingAttachments();
void onRegisterAttachmentComplete(const LLUUID& idItem);
@ -275,13 +275,10 @@ private:
bool mUpdateBaseOrder;
};
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-08-31 (Catznip-2.6.0a) | Added: Catznip-2.1.2a
// [SL:KB] - Patch: Appearance-SyncAttach | Checked: 2010-08-31 (Catznip-3.0.0a) | Added: Catznip-2.1.2a
class LLRegisterAttachmentCallback : public LLInventoryCallback
{
public:
LLRegisterAttachmentCallback() {}
/*virtual*/ ~LLRegisterAttachmentCallback() {}
/*virtual*/ void fire(const LLUUID& idItem)
{
LLAppearanceMgr::instance().onRegisterAttachmentComplete(idItem);

View File

@ -456,19 +456,15 @@ static bool app_metrics_qa_mode = false;
void idle_afk_check()
{
if (gAgent.getAFK())
return;
// check idle timers
F32 current_idle = gAwayTriggerTimer.getElapsedTimeF32();
F32 afk_timeout = gSavedSettings.getS32("AFKTimeout");
F32 current_idle = gAwayTriggerTimer.getElapsedTimeF32();
// F32 afk_timeout = gSavedSettings.getS32("AFKTimeout");
// [RLVa:KB] - Checked: 2010-05-03 (RLVa-1.2.0g) | Modified: RLVa-1.2.0g
#ifdef RLV_EXTENSION_CMD_ALLOWIDLE
// Enforce an idle time of 30 minutes if @allowidle=n restricted
if (!gRlvHandler.hasBehaviour(RLV_BHVR_ALLOWIDLE))
afk_timeout = 60 * 30;
F32 afk_timeout = (!gRlvHandler.hasBehaviour(RLV_BHVR_ALLOWIDLE)) ? gSavedSettings.getS32("AFKTimeout") : 60 * 30;
#else
F32 afk_timeout = gSavedSettings.getS32("AFKTimeout");
#endif // RLV_EXTENSION_CMD_ALLOWIDLE
// [/RLVa:KB]
if (afk_timeout && (current_idle > afk_timeout) && ! gAgent.getAFK())

View File

@ -2954,7 +2954,7 @@ void LLFolderBridge::folderOptionsMenu()
// BAP change once we're no longer treating regular categories as ensembles.
const bool is_ensemble = (type == LLFolderType::FT_NONE ||
LLFolderType::lookupIsEnsembleType(type));
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-11-24 (Catznip-2.6.0a) | Added: Catznip-2.4.0e
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-11-24 (Catznip-3.0.0a) | Added: Catznip-2.4.0e
const bool is_outfit = (type == LLFolderType::FT_OUTFIT);
// [/SL:KB]
@ -3019,7 +3019,7 @@ void LLFolderBridge::folderOptionsMenu()
mDisabledItems.push_back(std::string("Remove From Outfit"));
}
// if (!LLAppearanceMgr::instance().getCanReplaceCOF(mUUID))
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-11-24 (Catznip-2.6.0a) | Added: Catznip-2.4.0e
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-11-24 (Catznip-3.0.0a) | Added: Catznip-2.4.0e
if ( ((is_outfit) && (!LLAppearanceMgr::instance().getCanReplaceCOF(mUUID))) ||
((!is_outfit) && (gAgentWearables.isCOFChangeInProgress())) )
// [/SL:KB]
@ -5104,14 +5104,14 @@ void remove_inventory_category_from_avatar( LLInventoryCategory* category )
remove_inventory_category_from_avatar_step2(TRUE, category->getUUID() );
}
struct OnRemoveStruct
{
LLUUID mUUID;
OnRemoveStruct(const LLUUID& uuid):
mUUID(uuid)
{
}
};
//struct OnRemoveStruct
//{
// LLUUID mUUID;
// OnRemoveStruct(const LLUUID& uuid):
// mUUID(uuid)
// {
// }
//};
void remove_inventory_category_from_avatar_step2( BOOL proceed, LLUUID category_id)
{
@ -5173,7 +5173,7 @@ void remove_inventory_category_from_avatar_step2( BOOL proceed, LLUUID category_
// item->getType(),
// LLWearableBridge::onRemoveFromAvatarArrived,
// new OnRemoveStruct(item->getLinkedUUID()));
// [SL:KB] - Patch: Appearance-RemoveWearableFromAvatar | Checked: 2010-08-13 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-RemoveWearableFromAvatar | Checked: 2010-08-13 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
LLAppearanceMgr::instance().removeItemFromAvatar(item->getUUID());
// [/SL:KB]
}
@ -5598,8 +5598,8 @@ void LLWearableBridge::removeAllClothesFromAvatar()
for (LLInventoryModel::item_array_t::const_iterator it = clothing_items.begin(); it != clothing_items.end(); ++it)
{
// [RLVa:KB] - Checked: 2010-05-14 (RLVa-1.2.0g) | Modified: RLVa-1.2.0g
if ( (rlv_handler_t::isEnabled()) && (!gRlvWearableLocks.canRemove(*it)) )
continue;
if ( (rlv_handler_t::isEnabled()) && (!gRlvWearableLocks.canRemove(*it)) )
continue;
// [/RLVa:KB]
LLAppearanceMgr::instance().removeItemFromAvatar((*it)->getUUID());
}
@ -5615,7 +5615,7 @@ void LLWearableBridge::removeItemFromAvatar(LLViewerInventoryItem *item)
// item->getType(),
// LLWearableBridge::onRemoveFromAvatarArrived,
// new OnRemoveStruct(item->getUUID()));
// [SL:KB] - Patch: Appearance-RemoveWearableFromAvatar | Checked: 2010-08-13 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-RemoveWearableFromAvatar | Checked: 2010-08-13 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
LLAppearanceMgr::instance().removeItemFromAvatar(item->getUUID());
// [/SL:KB]
}

View File

@ -442,8 +442,8 @@ void LLNearbyChatScreenChannel::showToastsBottom()
LLRect toast_rect;
updateRect();
S32 channel_bottom = getRect().mBottom;
S32 bottom = channel_bottom + 10;
S32 channel_bottom = getRect().mBottom;
S32 bottom = channel_bottom + 10;
S32 margin = gSavedSettings.getS32("ToastGap");
//sort active toasts

View File

@ -50,20 +50,20 @@ using namespace LLNotificationsUI;
bool LLScreenChannel::mWasStartUpToastShown = false;
LLFastTimer::DeclareTimer FTM_GET_CHANNEL_RECT("Calculate Notification Channel Region");
LLRect LLScreenChannelBase::getChannelRect()
{
LLFastTimer _(FTM_GET_CHANNEL_RECT);
LLRect channel_rect;
LLRect chiclet_rect;
LLView* floater_snap_region = gViewerWindow->getRootView()->getChildView("floater_snap_region");
floater_snap_region->localRectToScreen(floater_snap_region->getLocalRect(), &channel_rect);
LLView* chiclet_region = gViewerWindow->getRootView()->getChildView("chiclet_container");
chiclet_region->localRectToScreen(chiclet_region->getLocalRect(), &chiclet_rect);
channel_rect.mTop = chiclet_rect.mBottom;
return channel_rect;
LLFastTimer::DeclareTimer FTM_GET_CHANNEL_RECT("Calculate Notification Channel Region");
LLRect LLScreenChannelBase::getChannelRect()
{
LLFastTimer _(FTM_GET_CHANNEL_RECT);
LLRect channel_rect;
LLRect chiclet_rect;
LLView* floater_snap_region = gViewerWindow->getRootView()->getChildView("floater_snap_region");
floater_snap_region->localRectToScreen(floater_snap_region->getLocalRect(), &channel_rect);
LLView* chiclet_region = gViewerWindow->getRootView()->getChildView("chiclet_container");
chiclet_region->localRectToScreen(chiclet_region->getLocalRect(), &chiclet_rect);
channel_rect.mTop = chiclet_rect.mBottom;
return channel_rect;
}
//--------------------------------------------------------------------------
@ -92,10 +92,10 @@ LLScreenChannelBase::~LLScreenChannelBase()
{
mWorldViewRectConnection.disconnect();
}
void LLScreenChannelBase::reshape(S32 width, S32 height, BOOL called_from_parent)
{
redrawToasts();
void LLScreenChannelBase::reshape(S32 width, S32 height, BOOL called_from_parent)
{
redrawToasts();
}
bool LLScreenChannelBase::isHovering()
@ -644,8 +644,8 @@ void LLScreenChannel::showToastsCentre()
//--------------------------------------------------------------------------
void LLScreenChannel::showToastsTop()
{
LLRect channel_rect = getChannelRect();
LLRect channel_rect = getChannelRect();
LLRect toast_rect;
S32 top = getRect().mTop + mToastList[0].toast->getRect().getHeight()/2; // - getRect().mBottom)/2 + mToastList[0].toast->getRect().getHeight()/2;
S32 bottom = (getRect().mTop - getRect().mBottom)/2 + mToastList[0].toast->getRect().getHeight()/2;

View File

@ -1718,7 +1718,7 @@ EAcceptance LLToolDragAndDrop::dad3dRezAttachmentFromInv(
if(mSource == SOURCE_LIBRARY)
{
// LLPointer<LLInventoryCallback> cb = new RezAttachmentCallback(0);
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-28 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-DnDWear | Checked: 2010-09-28 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
// Make this behave consistent with dad3dWearItem
LLPointer<LLInventoryCallback> cb = new RezAttachmentCallback(0, !(mask & MASK_CONTROL));
// [/SL:KB]
@ -1733,7 +1733,7 @@ EAcceptance LLToolDragAndDrop::dad3dRezAttachmentFromInv(
else
{
// rez_attachment(item, 0);
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-28 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-DnDWear | Checked: 2010-09-28 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
// Make this behave consistent with dad3dWearItem
rez_attachment(item, 0, !(mask & MASK_CONTROL));
// [/SL:KB]

View File

@ -155,7 +155,6 @@
#include "fsareasearch.h"
#include "quickprefs.h" // Quick Preferences panel -WoLf
#include "lggcontactsetsfloater.h"
// handle secondlife:///app/openfloater/{NAME} URLs
class LLFloaterOpenHandler : public LLCommandHandler
{

View File

@ -988,7 +988,7 @@ void ModifiedCOFCallback::fire(const LLUUID& inv_item)
}
//RezAttachmentCallback::RezAttachmentCallback(LLViewerJointAttachment *attachmentp)
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-28 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-DnDWear | Checked: 2010-09-28 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
RezAttachmentCallback::RezAttachmentCallback(LLViewerJointAttachment *attachmentp, bool replace)
: mAttach(attachmentp), mReplace(replace)
// [/SL:KB]
@ -1008,7 +1008,7 @@ void RezAttachmentCallback::fire(const LLUUID& inv_item)
if (item)
{
// rez_attachment(item, mAttach);
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-28 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-DnDWear | Checked: 2010-09-28 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
rez_attachment(item, mAttach, mReplace);
// [/SL:KB]
}

View File

@ -264,7 +264,7 @@ class RezAttachmentCallback : public LLInventoryCallback
{
public:
// RezAttachmentCallback(LLViewerJointAttachment *attachmentp);
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-28 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-DnDWear | Checked: 2010-09-28 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
RezAttachmentCallback(LLViewerJointAttachment *attachmentp, bool replace = false);
// [/SL:KB]
void fire(const LLUUID& inv_item);
@ -274,7 +274,7 @@ protected:
private:
LLViewerJointAttachment* mAttach;
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-09-28 (Catznip-2.6.0a) | Added: Catznip-2.2.0a
// [SL:KB] - Patch: Appearance-DnDWear | Checked: 2010-09-28 (Catznip-3.0.0a) | Added: Catznip-2.2.0a
bool mReplace;
// [/SL:KB]
};

View File

@ -169,7 +169,7 @@ BOOL LLViewerJointAttachment::addObject(LLViewerObject* object)
// re-connect object to the joint correctly
}
// [SL:KB] - Patch: Appearance-Misc | Checked: Catznip-2.6.0a (2011-01-13) | Added: Catznip-2.4.0h
// [SL:KB] - Patch: Appearance-Misc | Checked: Catznip-3.0.0a (2011-01-13) | Added: Catznip-2.4.0h
// LLViewerJointAttachment::removeObject() sets the object's item to the NULL UUID so we need to extract it *after* the block above
object->extractAttachmentItemID();
// [/SL:KB]

View File

@ -96,7 +96,7 @@ void LLWearableList::processGetAssetReply( const char* filename, const LLAssetID
BOOL isNewWearable = FALSE;
LLWearableArrivedData* data = (LLWearableArrivedData*) userdata;
// LLWearable* wearable = NULL; // NULL indicates failure
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-08-13 (Catznip-2.6.0a) | Added: Catznip-2.1.1d
// [SL:KB] - Patch: Appearance-Misc | Checked: 2010-08-13 (Catznip-3.0.0a) | Added: Catznip-2.1.1d
LLWearable* wearable = get_if_there(LLWearableList::instance().mList, uuid, (LLWearable*)NULL);
if (wearable)
{

View File

@ -64,7 +64,7 @@ const S32 RLV_VERSION_BUILD = 0;
// Implementation version
const S32 RLVa_VERSION_MAJOR = 1;
const S32 RLVa_VERSION_MINOR = 4;
const S32 RLVa_VERSION_PATCH = 1;
const S32 RLVa_VERSION_PATCH = 3;
const S32 RLVa_VERSION_BUILD = 0;
// Uncomment before a final release