diff options
95 files changed, 717 insertions, 1246 deletions
| @@ -10,7 +10,7 @@ syntax: glob  .*.swp  #OSX image cache file  *.DS_Store -*.orig +#*.orig  LICENSES  indra/.distcc  build-linux-* @@ -50,6 +50,11 @@ indra/web/doc/asset-upload/plugins/verify-texture  installed.xml  libraries  tarfile_tmp +debian/secondlife-viewer* +debian/secondlife-appearance-utility* +debian/files +build-stamp +configure-stamp  ^indra/lib/python/mulib.*  ^web/locale.*  ^web/secondlife.com.* @@ -69,4 +74,4 @@ glob:indra/newview/filters.xml  glob:indra/newview/avatar_icons_cache.txt  glob:indra/newview/avatar_lad.log  glob:*.diff -*.rej +#*.rej @@ -287,30 +287,20 @@ ab2ffc547c8a8950ff187c4f6c95e5334fab597b 3.3.4-beta5  888768f162d2c0a8de1dcc5fb9a08bd8bd120a6b DRTVWR-175  a8b3eca451a9eaab59987efb0ab1c4217e3f2dcc DRTVWR-182  1f27cdfdc54246484f8afbbe42ce48e954175cbd 3.4.0-beta1 -81f6b745ef27f5915fd07f988fdec9944f2bb73e DRTVWR-186 -47f0d08ba7ade0a3905074009067c6d3df7e16ae DRTVWR-190 -cc953f00956be52cc64c30637bbeec310eea603f DRTVWR-181 -c04e68e1b0034fd0a20815ae24c77e5f8428e822 DRTVWR-188  9ee9387789701d597130f879d9011a4958753862 DRTVWR-189 +47f0d08ba7ade0a3905074009067c6d3df7e16ae DRTVWR-190  421126293dcbde918e0da027ca0ab9deb5b4fbf2 DRTVWR-192 -4b2c52aecb7a75de31dbb12d9f5b9a251d8707be DRTVWR-191  33a2fc7a910ae29ff8b4850316ed7fbff9f64d33 DRTVWR-195  e9732c739c8a72a590216951505ea9c76a526a84 DRTVWR-193 -78ca0bbf43a92e8914d4cfa87d69a6717ef7d4cf DRTVWR-194  7602f61c804a512764e349c034c02ddabeefebc4 DRTVWR-196  ae5c83dd61d2d37c45f1d5b8bf2b036d87599f1b DRTVWR-198  507bdfbd6bf844a511c1ffeda4baa80016ed1346 DRTVWR-197  b1dbb1a83f48f93f6f878cff9e52d2cb635e145c 3.4.0-beta2  37402e2b19af970d51b0a814d79892cc5647532b DRTVWR-200  182a9bf30e81070361bb020a78003b1cf398e79c 3.4.0-beta3 -248f4acd92a706c79e842bc83d80baa7369c0c2e DRTVWR-203  7649a3dff5ec22d3727377e5f02efd0f421e4cb5 DRTVWR-201  84fb70dfe3444e75a44fb4bee43e2fc8221cebdd 3.4.0-beta4 -de3be913f68813a9bac7d1c671fef96d1159bcd6 DRTVWR-202  573e863be2f26d3687161def4b9fea9b7038dda8 3.4.0-beta5 -34dbbe2b00afe90352d3acf8290eb10ab90d1c8b oz-build-test-tag -6ee71714935ffcd159db3d4f5800c1929aac54e1 DRTVWR-205 -7b22c612fc756e0ea63b10b163e81d107f85dbf8 DRTVWR-206  af7b28e75bd5a629cd9e0dc46fb3f1757626f493 DRTVWR-212  015012c2b740ccdec8a8c3d6e5f898449ecfe0b8 DRTVWR-213  62b07aa81b1957897c3846292bb9412977b0af6c 3.3.4-beta6 @@ -319,7 +309,6 @@ ceed0b65a69f1eac20d523e0203320a32f9a3f3c DRTVWR-215  97977c67245f52db20eb15f1918cc0f24778cabc 3.4.0-release  5adb2b8f96c3cac88ad7c7d996d707f1b29df336 3.4.1-beta1  b3f74858a1c8720c82d0978f3877a3fc8ba459ec 3.4.1-beta1a -b61afe175b829c149d369524a4e974dfda99facf DRTVWR-219  2b779f233ee6f38c89cb921650c773a96e63da92 DRTVWR-220  0b9d95f4bfb6867cbf56eaec51633b0da2f1262d DRTVWR-221  e6e553761829dc0270eaaa712b7cb0622535b076 3.4.1-beta3 @@ -344,31 +333,36 @@ baf97f06ae17223614c5e31aa42e71d87cff07fe DRTVWR-236  b2f21e3442542283a80e7eaebae9f833e5a927b6 DRTVWR-237  3f9be82de642d468c5fc272cb9d96b46b5498402 3.4.1-beta12  e59ffd3fe0838ae6b09b242a6e9df71761b88f41 3.4.1-release +81f6b745ef27f5915fd07f988fdec9944f2bb73e DRTVWR-186 +cc953f00956be52cc64c30637bbeec310eea603f DRTVWR-181 +c04e68e1b0034fd0a20815ae24c77e5f8428e822 DRTVWR-188 +4b2c52aecb7a75de31dbb12d9f5b9a251d8707be DRTVWR-191 +78ca0bbf43a92e8914d4cfa87d69a6717ef7d4cf DRTVWR-194 +248f4acd92a706c79e842bc83d80baa7369c0c2e DRTVWR-203 +de3be913f68813a9bac7d1c671fef96d1159bcd6 DRTVWR-202 +34dbbe2b00afe90352d3acf8290eb10ab90d1c8b oz-build-test-tag +6ee71714935ffcd159db3d4f5800c1929aac54e1 DRTVWR-205 +7b22c612fc756e0ea63b10b163e81d107f85dbf8 DRTVWR-206 +b61afe175b829c149d369524a4e974dfda99facf DRTVWR-219  32896d5e920ca9a29256ff3b747c2e99752aa5ae DRTVWR-217  704bbae7b182a1f2811a47a054e680522966f54a 3.4.2-beta1 -d799593b53ed733862e9a13871e318e886469377 DRTVWR-208 -e497dcde7a3653e384eb223a8a460030e89c294c DRTVWR-223  288539fc0408ed4b69a99665de33bbbc2c3c08fe DRTVWR-216  e664473c16df1d82ffaff382e7b3e023da202d52 3.4.2-beta2 -93ab02d83f51e30a3cabad98aff89601befd9413 DRTVWR-240  0891d7a773a31397dcad48be3fa66531d567a821 DRTVWR-242  710785535362b3cb801b6a3dc4703be3373bd0cd 3.4.2-beta3 -2aa72e3372a83dece4df9cf72fb1e7c34f90b5e3 DRTVWR-209 -f7bedce18ad52283e6072814db23318907261487 DRTVWR-238 -7b64c96fbcadf360bd2feaae19d330166b70877c DRTVWR-210  e9a5886052433d5db9e504ffaca10890f9932979 DRTVWR-243  73b84b9864dc650fe7c8fc9f52361450f0849004 3.4.2-beta4  16310aabccf315870f7cc9bf966926c0ad6954fa 3.4.2-release +d799593b53ed733862e9a13871e318e886469377 DRTVWR-208 +e497dcde7a3653e384eb223a8a460030e89c294c DRTVWR-223 +93ab02d83f51e30a3cabad98aff89601befd9413 DRTVWR-240 +2aa72e3372a83dece4df9cf72fb1e7c34f90b5e3 DRTVWR-209 +f7bedce18ad52283e6072814db23318907261487 DRTVWR-238 +7b64c96fbcadf360bd2feaae19d330166b70877c DRTVWR-210  5e4e4128b256525bafc07a62e35ae8527aaa9c9d DRTVWR-241  f1d3b3fcab28ed9ea532bf50db0ba96f5c8cc8e9 DRTVWR-232  4918b150e75df6b516fb6c2616d32043fa6b4cac DRTVWR-245  94ab2b49458ab372a95d2d6949fdf574f413068d 3.4.3-beta1 -4c3460cb1fb7c6da9965e09c734d282a8e9c81f0 DRTVWR-229 -f4481df42f9a4a92bf475a80f0c51d1a4bbdfd59 DRTVWR-246 -39c5204b6e800983a41ccac8ad6dc993120197c6 DRTVWR-247 -7c7d57d393e8ae7b61623279de06eb4a62ccae6a DRTVWR-249 -f72b50ef168c159d6e79e97aa2bcafaf8577ab99 DRTVWR-230 -b418be80903520c492e1173f3afbc4021cad5d07 DRTVWR-255  965b9a35e260c0f53be1a25f0db7abc8a67eaf47 DRTVWR-252  bb10adc4f76cf0067fca7075146f00cdc0740e9d DRTVWR-251  ab0aa2f6ba22b52fed30a2337197f589156edc75 DRTVWR-253 @@ -377,15 +371,20 @@ ab0aa2f6ba22b52fed30a2337197f589156edc75 DRTVWR-253  44e764a6ac9e672a4f3bce821a4b6a218590c374 DRTVWR-258  c23d734065ed593b2413385aecd8366d8e0ee96b DRTVWR-257  452ce96d4046dc05a3ecaecc203e2cc8ddd72e76 DRTVWR-259 -9aa1aa9f1fe13c194695a0b8f0af298296241dc2 DRTVWR-260  daca610d840625b5bebb966a57cb49581852c417 DRTVWR-265  9afbdc4e24cc04feacfb2b7a10b78a64f780901a DRTVWR-266  73280db02501f5ad041fc18b1eba68e73a81996c DRTVWR-267  870e2d79e0063fda87187f17bbc2747766733194 3.4.3-beta3  0a2ca6546b499239afeb66d17b2fadbcdbe36ab1 3.4.3-release +4c3460cb1fb7c6da9965e09c734d282a8e9c81f0 DRTVWR-229 +f4481df42f9a4a92bf475a80f0c51d1a4bbdfd59 DRTVWR-246 +39c5204b6e800983a41ccac8ad6dc993120197c6 DRTVWR-247 +7c7d57d393e8ae7b61623279de06eb4a62ccae6a DRTVWR-249 +f72b50ef168c159d6e79e97aa2bcafaf8577ab99 DRTVWR-230 +b418be80903520c492e1173f3afbc4021cad5d07 DRTVWR-255 +9aa1aa9f1fe13c194695a0b8f0af298296241dc2 DRTVWR-260  84fbaf2d4141bd161731430e760949dc787ca206 DRTVWR-244  083d2d36b5bb1c54fc3dd7caac0e7ac381a9cef0 3.4.4-beta1 -391a8c74cec7275c5d26c85ad108d4782a3e3dd9 DRTVWR-268  b634dec987c16e8c9c938e11e52591d9ead8fa9b DRTVWR-270  cd39255bd23330fd30c04105f2811e941d8524fe 3.4.4-beta2  2c4011bbc2b15b82198fd8b51f3a9fe765a08c4d DRTVWR-271 @@ -394,6 +393,7 @@ cd39255bd23330fd30c04105f2811e941d8524fe 3.4.4-beta2  c374035d459af3c03dea2dd90880dfc25de64706 DRTVWR-275  05d9f1dd7a954069af2a33abedb7713fa36a04cb 3.4.4-beta4  e1bb1ae7d8b12faeb37933a737c199cc9b9f89cc 3.4.4-release +391a8c74cec7275c5d26c85ad108d4782a3e3dd9 DRTVWR-268  a36f1f354b02aa6e448ca13685de167d0a0a3d03 DRTVWR-272  37dba00ad820de3a808d4039396b162a9c275b3e DRTVWR-269  7c6dfdc1b7a2ce0d8e3a8f3ce3058547ea065c0f DRTVWR-250 @@ -434,3 +434,10 @@ fd6b510e83f56830e45670c428653134899d3e25 DRTVWR-305  902caf2b9fdbdbc5c399c4d5ebcecaf9cb97bab8 DRTVWR-306  5c6098fd17d40ee3a38ca6b64f6be9db7f61f0a8 3.5.0-beta7  adc360e6bf21390d2665380951d85937cd29a604 3.5.0-release +1ada73295ed0eaa4a772ef079c29f57069342c32 DRTVWR-310 +20cdf370f5c8be6193bef6fb3a81cc3f81275191 3.5.1-beta1 +2319904200de367646b9a9442239a38d52c1eeb5 DRTVWR-313 +9d8726eca785acad694564516f16dd639faf45c0 3.5.1-beta2 +4b7fa963b80e2056ab648f83a4d61310b3cedb3d DRTVWR-314 +65ae89aeb7ea674a555e439e963f17949322ac94 3.5.1-beta3 +13149a524874b608aeb76325b35faff113a5ea53 3.5.1-release diff --git a/BuildParams b/BuildParams index c4f50097a9..f51aff96ba 100644 --- a/BuildParams +++ b/BuildParams @@ -21,6 +21,11 @@ email_status_this_is_os = true  # Limit extent of codeticket updates to revisions after...  codeticket_since = 3.3.0-release +# Override build system default toolchain +# Note that this will only affect automated builds. +Linux.gcc_version = /usr/bin/gcc-4.6 +Linux.cxx_version = /usr/bin/g++-4.6 +  # ========================================  # Viewer Development  # ======================================== diff --git a/autobuild.xml b/autobuild.xml index 95b19370c5..712094d607 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -879,6 +879,42 @@            </map>          </map>        </map> +      <key>gperftools</key> +      <map> +        <key>license</key> +        <string>bsd</string> +        <key>license_file</key> +        <string>LICENSES/gperftools.txt</string> +        <key>name</key> +        <string>gperftools</string> +        <key>platforms</key> +        <map> +          <key>linux</key> +          <map> +            <key>archive</key> +            <map> +              <key>hash</key> +              <string>8aedfdcf670348c18a9991ae1b384a61</string> +              <key>url</key> +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-perftools/rev/262672/arch/Linux/installer/gperftools-2.0-linux-20120727.tar.bz2</string> +            </map> +            <key>name</key> +            <string>linux</string> +          </map> +          <key>windows</key> +          <map> +            <key>archive</key> +            <map> +              <key>hash</key> +              <string>f62841804acb91e1309603a84f3f0ce8</string> +              <key>url</key> +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-perftools/rev/262672/arch/CYGWIN/installer/gperftools-2.0-windows-20120727.tar.bz2</string> +            </map> +            <key>name</key> +            <string>windows</string> +          </map> +        </map> +      </map>        <key>gstreamer</key>        <map>          <key>license</key> @@ -403,7 +403,7 @@ then          do            upload_item symbolfile "$build_dir/$symbolfile" binary/octet-stream          done -         +          # Upload the llphysicsextensions_tpv package, if one was produced          # *TODO: Make this an upload-extension          if [ -r "$build_dir/llphysicsextensions_package" ] diff --git a/doc/contributions.txt b/doc/contributions.txt index c91bf856b8..33cf0a422e 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -299,6 +299,7 @@ ChickyBabes Zuzu  Christopher  Organiser  Ciaran Laval  Cinder Roxley +    BUG-2326      STORM-1703  Clara Young  Coaldust Numbers @@ -899,6 +900,7 @@ NickyD  Nicky Dasmijn  	VWR-29228  	MAINT-873 +	SUN-72  Nicky Perian  	OPEN-1  	STORM-1087 diff --git a/indra/CMakeLists.txt b/indra/CMakeLists.txt index e06c928eb5..0a54163644 100644 --- a/indra/CMakeLists.txt +++ b/indra/CMakeLists.txt @@ -64,50 +64,50 @@ if (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts)  endif (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts)  add_custom_target(viewer) -  add_subdirectory(${LIBS_OPEN_PREFIX}llcrashlogger) -  add_subdirectory(${LIBS_OPEN_PREFIX}llplugin) -  add_subdirectory(${LIBS_OPEN_PREFIX}llui) -  add_subdirectory(${LIBS_OPEN_PREFIX}viewer_components) +add_subdirectory(${LIBS_OPEN_PREFIX}llcrashlogger) +add_subdirectory(${LIBS_OPEN_PREFIX}llplugin) +add_subdirectory(${LIBS_OPEN_PREFIX}llui) +add_subdirectory(${LIBS_OPEN_PREFIX}viewer_components) -  # Legacy C++ tests. Build always, run if LL_TESTS is true. -  add_subdirectory(${VIEWER_PREFIX}test) +# Legacy C++ tests. Build always, run if LL_TESTS is true. +add_subdirectory(${VIEWER_PREFIX}test) -  # viewer media plugins -  add_subdirectory(${LIBS_OPEN_PREFIX}media_plugins) +# viewer media plugins +add_subdirectory(${LIBS_OPEN_PREFIX}media_plugins) -  # llplugin testbed code (is this the right way to include it?) -  if (LL_TESTS AND NOT LINUX) -    add_subdirectory(${VIEWER_PREFIX}test_apps/llplugintest) -  endif (LL_TESTS AND NOT LINUX) +# llplugin testbed code (is this the right way to include it?) +if (LL_TESTS AND NOT LINUX) +  add_subdirectory(${VIEWER_PREFIX}test_apps/llplugintest) +endif (LL_TESTS AND NOT LINUX) -  if (LINUX) -    add_subdirectory(${VIEWER_PREFIX}linux_crash_logger) +if (LINUX) +  add_subdirectory(${VIEWER_PREFIX}linux_crash_logger)    add_subdirectory(${VIEWER_PREFIX}linux_updater)    if (INSTALL_PROPRIETARY)        include(LLAppearanceUtility)        add_subdirectory(${LLAPPEARANCEUTILITY_SRC_DIR} ${LLAPPEARANCEUTILITY_BIN_DIR})    endif (INSTALL_PROPRIETARY)    add_dependencies(viewer linux-crash-logger-strip-target linux-updater) -  elseif (DARWIN) -    add_subdirectory(${VIEWER_PREFIX}mac_crash_logger) -    add_subdirectory(${VIEWER_PREFIX}mac_updater) -    add_dependencies(viewer mac-updater mac-crash-logger) -  elseif (WINDOWS) -    add_subdirectory(${VIEWER_PREFIX}win_crash_logger) -    # cmake EXISTS requires an absolute path, see indra/cmake/Variables.cmake -    if (EXISTS ${VIEWER_DIR}win_setup) -      add_subdirectory(${VIEWER_DIR}win_setup) -    endif (EXISTS ${VIEWER_DIR}win_setup) -    add_subdirectory(${VIEWER_PREFIX}win_updater) -    # add_dependencies(viewer windows-updater windows-setup windows-crash-logger) -    add_dependencies(viewer windows-updater windows-crash-logger) -  elseif (SOLARIS) -    add_subdirectory(solaris_crash_logger) -    add_dependencies(viewer solaris-crash-logger) -  endif (LINUX) - -  add_subdirectory(${VIEWER_PREFIX}newview) -  add_dependencies(viewer secondlife-bin) +elseif (DARWIN) +  add_subdirectory(${VIEWER_PREFIX}mac_crash_logger) +  add_subdirectory(${VIEWER_PREFIX}mac_updater) +  add_dependencies(viewer mac-updater mac-crash-logger) +elseif (WINDOWS) +  add_subdirectory(${VIEWER_PREFIX}win_crash_logger) +  # cmake EXISTS requires an absolute path, see indra/cmake/Variables.cmake +  if (EXISTS ${VIEWER_DIR}win_setup) +    add_subdirectory(${VIEWER_DIR}win_setup) +  endif (EXISTS ${VIEWER_DIR}win_setup) +  add_subdirectory(${VIEWER_PREFIX}win_updater) +  # add_dependencies(viewer windows-updater windows-setup windows-crash-logger) +  add_dependencies(viewer windows-updater windows-crash-logger) +elseif (SOLARIS) +  add_subdirectory(solaris_crash_logger) +  add_dependencies(viewer solaris-crash-logger) +endif (LINUX) + +add_subdirectory(${VIEWER_PREFIX}newview) +add_dependencies(viewer secondlife-bin)  if (LL_TESTS)    # Define after the custom targets are created so diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index b969084632..fb5c759493 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -153,21 +153,21 @@ if (LINUX)        -pthread        ) -    add_definitions(-DAPPID=secondlife) -    add_definitions(-fvisibility=hidden) -    # don't catch SIGCHLD in our base application class for the viewer - some of our 3rd party libs may need their *own* SIGCHLD handler to work.  Sigh!  The viewer doesn't need to catch SIGCHLD anyway. -    add_definitions(-DLL_IGNORE_SIGCHLD) -    if (WORD_SIZE EQUAL 32) -      add_definitions(-march=pentium4) -    endif (WORD_SIZE EQUAL 32) -    add_definitions(-mfpmath=sse) -    #add_definitions(-ftree-vectorize) # THIS CRASHES GCC 3.1-3.2 -    if (NOT STANDALONE) -      # this stops us requiring a really recent glibc at runtime -      add_definitions(-fno-stack-protector) -      # linking can be very memory-hungry, especially the final viewer link -      set(CMAKE_CXX_LINK_FLAGS "-Wl,--no-keep-memory") -    endif (NOT STANDALONE) +  add_definitions(-DAPPID=secondlife) +  add_definitions(-fvisibility=hidden) +  # don't catch SIGCHLD in our base application class for the viewer - some of our 3rd party libs may need their *own* SIGCHLD handler to work.  Sigh!  The viewer doesn't need to catch SIGCHLD anyway. +  add_definitions(-DLL_IGNORE_SIGCHLD) +  if (WORD_SIZE EQUAL 32) +    add_definitions(-march=pentium4) +  endif (WORD_SIZE EQUAL 32) +  add_definitions(-mfpmath=sse) +  #add_definitions(-ftree-vectorize) # THIS CRASHES GCC 3.1-3.2 +  if (NOT STANDALONE) +    # this stops us requiring a really recent glibc at runtime +    add_definitions(-fno-stack-protector) +    # linking can be very memory-hungry, especially the final viewer link +    set(CMAKE_CXX_LINK_FLAGS "-Wl,--no-keep-memory") +  endif (NOT STANDALONE)    set(CMAKE_CXX_FLAGS_DEBUG "-fno-inline ${CMAKE_CXX_FLAGS_DEBUG}")    set(CMAKE_CXX_FLAGS_RELEASE "-O2 ${CMAKE_CXX_FLAGS_RELEASE}") diff --git a/indra/cmake/APR.cmake b/indra/cmake/APR.cmake index a87027f5f6..492ba2adea 100644 --- a/indra/cmake/APR.cmake +++ b/indra/cmake/APR.cmake @@ -49,7 +49,7 @@ else (STANDALONE)    set(APR_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/apr-1)    if (LINUX) -      list(APPEND APRUTIL_LIBRARIES ${DB_LIBRARIES} uuid) +    list(APPEND APRUTIL_LIBRARIES ${DB_LIBRARIES} uuid)      list(APPEND APRUTIL_LIBRARIES ${DB_LIBRARIES} rt)    endif (LINUX)  endif (STANDALONE) diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt index 10a23ea068..111f5897dd 100644 --- a/indra/cmake/CMakeLists.txt +++ b/indra/cmake/CMakeLists.txt @@ -24,6 +24,7 @@ set(cmake_SOURCE_FILES      DragDrop.cmake      EXPAT.cmake      ExamplePlugin.cmake +    FMOD.cmake      FindAPR.cmake      FindAutobuild.cmake      FindBerkeleyDB.cmake diff --git a/indra/cmake/CSharpMacros.cmake b/indra/cmake/CSharpMacros.cmake deleted file mode 100644 index a4dd815043..0000000000 --- a/indra/cmake/CSharpMacros.cmake +++ /dev/null @@ -1,142 +0,0 @@ -# - This is a support module for easy Mono/C# handling with CMake -# It defines the following macros: -# -# ADD_CS_LIBRARY (<target> <source>) -# ADD_CS_EXECUTABLE (<target> <source>) -# INSTALL_GAC (<target>) -# -# Note that the order of the arguments is important. -# -# You can optionally set the variable CS_FLAGS to tell the macros whether -# to pass additional flags to the compiler. This is particularly useful to -# set assembly references, unsafe code, etc... These flags are always reset -# after the target was added so you don't have to care about that. -# -# copyright (c) 2007 Arno Rehn arno@arnorehn.de -# -# Redistribution and use is allowed according to the terms of the GPL license. - - -# ----- support macros ----- -MACRO(GET_CS_LIBRARY_TARGET_DIR) -        IF (NOT LIBRARY_OUTPUT_PATH) -                SET(CS_LIBRARY_TARGET_DIR ${CMAKE_CURRENT_BINARY_DIR}) -        ELSE (NOT LIBRARY_OUTPUT_PATH) -                SET(CS_LIBRARY_TARGET_DIR ${LIBRARY_OUTPUT_PATH}) -        ENDIF (NOT LIBRARY_OUTPUT_PATH) -ENDMACRO(GET_CS_LIBRARY_TARGET_DIR) - -MACRO(GET_CS_EXECUTABLE_TARGET_DIR) -        IF (NOT EXECUTABLE_OUTPUT_PATH) -                SET(CS_EXECUTABLE_TARGET_DIR ${CMAKE_CURRENT_BINARY_DIR}) -        ELSE (NOT EXECUTABLE_OUTPUT_PATH) -                SET(CS_EXECUTABLE_TARGET_DIR ${EXECUTABLE_OUTPUT_PATH}) -        ENDIF (NOT EXECUTABLE_OUTPUT_PATH) -ENDMACRO(GET_CS_EXECUTABLE_TARGET_DIR) - -MACRO(MAKE_PROPER_FILE_LIST) -        FOREACH(file ${ARGN}) -                # first assume it's a relative path -                FILE(GLOB globbed ${CMAKE_CURRENT_SOURCE_DIR}/${file}) -                IF(globbed) -                        FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/${file} native) -                ELSE(globbed) -                        FILE(TO_NATIVE_PATH ${file} native) -                ENDIF(globbed) -                SET(proper_file_list ${proper_file_list} ${native}) -                SET(native "") -        ENDFOREACH(file) -ENDMACRO(MAKE_PROPER_FILE_LIST) -# ----- end support macros ----- - -MACRO(ADD_CS_LIBRARY target) -        GET_CS_LIBRARY_TARGET_DIR() -         -        SET(target_DLL "${CS_LIBRARY_TARGET_DIR}/${target}.dll") -        MAKE_PROPER_FILE_LIST(${ARGN}) -        FILE(RELATIVE_PATH relative_path ${CMAKE_BINARY_DIR} ${target_DLL}) -         -        SET(target_KEY "${CMAKE_CURRENT_SOURCE_DIR}/${target}.key") -        SET(target_CS_FLAGS "${CS_FLAGS}") -        IF(${target}_CS_FLAGS) -                LIST(APPEND target_CS_FLAGS ${${target}_CS_FLAGS}) -        ENDIF(${target}_CS_FLAGS) -        IF(EXISTS ${target_KEY}) -                LIST(APPEND target_CS_FLAGS -keyfile:${target_KEY}) -        ENDIF(EXISTS ${target_KEY}) - -        FOREACH(ref ${${target}_REFS}) -                SET(ref_DLL ${CMAKE_CURRENT_BINARY_DIR}/${ref}.dll) -                IF(EXISTS ${ref_DLL}) -                        LIST(APPEND target_CS_FLAGS -r:${ref_DLL}) -                ELSE(EXISTS ${ref_DLL}) -                        LIST(APPEND target_CS_FLAGS -r:${ref}) -                ENDIF(EXISTS ${ref_DLL}) -        ENDFOREACH(ref ${${target}_REFS}) - -        ADD_CUSTOM_COMMAND (OUTPUT ${target_DLL} -                COMMAND ${MCS_EXECUTABLE} ${target_CS_FLAGS} -out:${target_DLL} -target:library ${proper_file_list} -                MAIN_DEPENDENCY ${proper_file_list} -                DEPENDS ${ARGN} -                COMMENT "Building ${relative_path}") -        ADD_CUSTOM_TARGET (${target} ALL DEPENDS ${target_DLL}) - -        FOREACH(ref ${${target}_REFS}) -                GET_TARGET_PROPERTY(is_target ${ref} TYPE) -                IF(is_target) -                        ADD_DEPENDENCIES(${target} ${ref}) -                ENDIF(is_target) -        ENDFOREACH(ref ${${target}_REFS}) - -        SET(relative_path "") -        SET(proper_file_list "") -ENDMACRO(ADD_CS_LIBRARY) - -MACRO(ADD_CS_EXECUTABLE target) -        GET_CS_EXECUTABLE_TARGET_DIR() -         -        # Seems like cmake doesn't like the ".exe" ending for custom commands. -        # If we call it ${target}.exe, 'make' will later complain about a missing rule. -        # Create a fake target instead. -        SET(target_EXE "${CS_EXECUTABLE_TARGET_DIR}/${target}.exe") -        SET(target_TOUCH "${CS_EXECUTABLE_TARGET_DIR}/${target}.exe-built") -        GET_DIRECTORY_PROPERTY(clean ADDITIONAL_MAKE_CLEAN_FILES) -        LIST(APPEND clean ${target}.exe) -        SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${clean}") -        MAKE_PROPER_FILE_LIST(${ARGN}) -        FILE(RELATIVE_PATH relative_path ${CMAKE_BINARY_DIR} ${target_EXE}) -        SET(target_CS_FLAGS "${CS_FLAGS}") -         -        FOREACH(ref ${${target}_REFS}) -                SET(ref_DLL ${CMAKE_CURRENT_SOURCE_DIR}/${ref}.dll) -                IF(EXISTS ${ref_DLL}) -                        LIST(APPEND target_CS_FLAGS -r:${ref_DLL}) -                ELSE(EXISTS ${ref_DLL}) -                        LIST(APPEND target_CS_FLAGS -r:${ref}) -                ENDIF(EXISTS ${ref_DLL}) -        ENDFOREACH(ref ${${target}_REFS}) - -        ADD_CUSTOM_COMMAND (OUTPUT "${target_TOUCH}" -                COMMAND ${MCS_EXECUTABLE} ${target_CS_FLAGS} -out:${target_EXE} ${proper_file_list} -                COMMAND ${CMAKE_COMMAND} -E touch ${target_TOUCH} -                MAIN_DEPENDENCY ${ARGN} -                DEPENDS ${ARGN} -                COMMENT "Building ${relative_path}") -        ADD_CUSTOM_TARGET ("${target}" ALL DEPENDS "${target_TOUCH}") - -        FOREACH(ref ${${target}_REFS}) -                GET_TARGET_PROPERTY(is_target ${ref} TYPE) -                IF(is_target) -                        ADD_DEPENDENCIES(${target} ${ref}) -                ENDIF(is_target) -        ENDFOREACH(ref ${${target}_REFS}) - -        SET(relative_path "") -        SET(proper_file_list "") -ENDMACRO(ADD_CS_EXECUTABLE) - -MACRO(INSTALL_GAC target) -        GET_CS_LIBRARY_TARGET_DIR() -         -        INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${GACUTIL_EXECUTABLE} -i ${CS_LIBRARY_TARGET_DIR}/${target}.dll -package 2.0)") -ENDMACRO(INSTALL_GAC target) diff --git a/indra/cmake/ConfigurePkgConfig.cmake b/indra/cmake/ConfigurePkgConfig.cmake index 03e19a3211..82ee3e7a5b 100644 --- a/indra/cmake/ConfigurePkgConfig.cmake +++ b/indra/cmake/ConfigurePkgConfig.cmake @@ -62,7 +62,7 @@ IF("$ENV{PKG_CONFIG_LIBDIR}" STREQUAL "")    SET(VALID_PKG_LIBDIRS "${VALID_PKG_LIBDIRS}:/usr/share/pkgconfig:/usr/local/share/pkgconfig")    # Remove first unwanted ':' -  string(SUBSTRING ${VALID_PKG_LIBDIRS} 1 0 VALID_PKG_LIBDIRS) +  string(SUBSTRING ${VALID_PKG_LIBDIRS} 1 -1 VALID_PKG_LIBDIRS)    # Set PKG_CONFIG_LIBDIR environment.    SET(ENV{PKG_CONFIG_LIBDIR} ${VALID_PKG_LIBDIRS}) diff --git a/indra/cmake/CopyBackToSource.cmake b/indra/cmake/CopyBackToSource.cmake deleted file mode 100644 index d217df9aec..0000000000 --- a/indra/cmake/CopyBackToSource.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# -*- cmake -*- -# Copies a binary back to the source directory - -MACRO(COPY_BACK_TO_SOURCE target) -   GET_TARGET_PROPERTY(FROM ${target} LOCATION) -   SET(TO ${CMAKE_CURRENT_SOURCE_DIR}) -   #MESSAGE("TARGET ${target} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${FROM} ${TO}") -   ADD_CUSTOM_COMMAND( -        TARGET ${target} POST_BUILD -        COMMAND ${CMAKE_COMMAND} -E copy ${FROM} ${TO} -        DEPENDS ${FROM} -        COMMENT "Copying ${target} to ${CMAKE_CURRENT_BINARY_DIR}" -        ) -ENDMACRO(COPY_BACK_TO_SOURCE) - - diff --git a/indra/cmake/DragDrop.cmake b/indra/cmake/DragDrop.cmake index 73ef59b18f..b70aa6b6ee 100644 --- a/indra/cmake/DragDrop.cmake +++ b/indra/cmake/DragDrop.cmake @@ -1,20 +1,20 @@  # -*- cmake -*- -  set(OS_DRAG_DROP ON CACHE BOOL "Build the viewer with OS level drag and drop turned on or off") +set(OS_DRAG_DROP ON CACHE BOOL "Build the viewer with OS level drag and drop turned on or off") -  if (OS_DRAG_DROP) +if (OS_DRAG_DROP) -    if (WINDOWS) -      add_definitions(-DLL_OS_DRAGDROP_ENABLED=1) -    endif (WINDOWS) +  if (WINDOWS) +    add_definitions(-DLL_OS_DRAGDROP_ENABLED=1) +  endif (WINDOWS) -    if (DARWIN) -      add_definitions(-DLL_OS_DRAGDROP_ENABLED=1) -    endif (DARWIN) +  if (DARWIN) +    add_definitions(-DLL_OS_DRAGDROP_ENABLED=1) +  endif (DARWIN) -    if (LINUX) -      add_definitions(-DLL_OS_DRAGDROP_ENABLED=0) -    endif (LINUX) +  if (LINUX) +    add_definitions(-DLL_OS_DRAGDROP_ENABLED=0) +  endif (LINUX) -  endif (OS_DRAG_DROP) +endif (OS_DRAG_DROP) diff --git a/indra/cmake/Externals.cmake b/indra/cmake/Externals.cmake deleted file mode 100644 index 26f3b56049..0000000000 --- a/indra/cmake/Externals.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# -*- cmake -*- - -include(Python) -include(FindSVN) - -macro (use_svn_external _binary _path _url _rev) -  if (NOT STANDALONE) -    if(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) -      if(SVN_FOUND) -        if(DEBUG_EXTERNALS) -          message("cd ${_path} && ${SVN_EXECUTABLE} checkout -r ${_rev} ${_url} ${_binary}") -        endif(DEBUG_EXTERNALS) -        execute_process(COMMAND ${SVN_EXECUTABLE} -          checkout -          -r ${_rev} -          ${_url} -          ${_binary} -          WORKING_DIRECTORY ${_path} -          RESULT_VARIABLE ${_binary}_installed -          ) -      else(SVN_FOUND) -        message(FATAL_ERROR "Failed to find SVN_EXECUTABLE") -      endif(SVN_FOUND) -      file(WRITE ${CMAKE_BINARY_DIR}/temp/${_binary}_installed "${${_binary}_installed}") -    else(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) -      set(${_binary}_installed 0) -    endif(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) -    if(NOT ${_binary}_installed EQUAL 0) -      message(FATAL_ERROR -              "Failed to download or unpack prebuilt '${_binary}'." -              " Process returned ${${_binary}_installed}.") -    endif (NOT ${_binary}_installed EQUAL 0) -  endif (NOT STANDALONE) -endmacro (use_svn_external _binary _path _url _rev) diff --git a/indra/cmake/FindELFIO.cmake b/indra/cmake/FindELFIO.cmake deleted file mode 100644 index 8a5421ab9c..0000000000 --- a/indra/cmake/FindELFIO.cmake +++ /dev/null @@ -1,48 +0,0 @@ -# -*- cmake -*- - -# - Find ELFIO -# Find the ELFIO includes and library -# This module defines -#  ELFIO_INCLUDE_DIR, where to find elfio.h, etc. -#  ELFIO_LIBRARIES, the libraries needed to use ELFIO. -#  ELFIO_FOUND, If false, do not try to use ELFIO. -# also defined, but not for general use are -#  ELFIO_LIBRARY, where to find the ELFIO library. - -FIND_PATH(ELFIO_INCLUDE_DIR ELFIO/ELFIO.h -/usr/local/include -/usr/include -) - -SET(ELFIO_NAMES ${ELFIO_NAMES} ELFIO) -FIND_LIBRARY(ELFIO_LIBRARY -  NAMES ${ELFIO_NAMES} -  PATHS /usr/lib /usr/local/lib -  ) - -IF (ELFIO_LIBRARY AND ELFIO_INCLUDE_DIR) -    SET(ELFIO_LIBRARIES ${ELFIO_LIBRARY}) -    SET(ELFIO_FOUND "YES") -ELSE (ELFIO_LIBRARY AND ELFIO_INCLUDE_DIR) -  SET(ELFIO_FOUND "NO") -ENDIF (ELFIO_LIBRARY AND ELFIO_INCLUDE_DIR) - - -IF (ELFIO_FOUND) -   IF (NOT ELFIO_FIND_QUIETLY) -      MESSAGE(STATUS "Found ELFIO: ${ELFIO_LIBRARIES}") -   ENDIF (NOT ELFIO_FIND_QUIETLY) -ELSE (ELFIO_FOUND) -   IF (ELFIO_FIND_REQUIRED) -      MESSAGE(FATAL_ERROR "Could not find ELFIO library") -   ENDIF (ELFIO_FIND_REQUIRED) -ENDIF (ELFIO_FOUND) - -# Deprecated declarations. -SET (NATIVE_ELFIO_INCLUDE_PATH ${ELFIO_INCLUDE_DIR} ) -GET_FILENAME_COMPONENT (NATIVE_ELFIO_LIB_PATH ${ELFIO_LIBRARY} PATH) - -MARK_AS_ADVANCED( -  ELFIO_LIBRARY -  ELFIO_INCLUDE_DIR -  ) diff --git a/indra/cmake/FindLLQtWebkit.cmake b/indra/cmake/FindLLQtWebkit.cmake deleted file mode 100644 index 2f666d3bf0..0000000000 --- a/indra/cmake/FindLLQtWebkit.cmake +++ /dev/null @@ -1,62 +0,0 @@ -# -*- cmake -*- - -# - Find llqtwebkit -# Find the llqtwebkit includes and library -# This module defines -#  LLQTWEBKIT_INCLUDE_DIR, where to find llqtwebkit.h, etc. -#  LLQTWEBKIT_LIBRARY, the llqtwebkit library with full path. -#  LLQTWEBKIT_FOUND, If false, do not try to use llqtwebkit. -# also defined, but not for general use are -#  LLQTWEBKIT_LIBRARIES, the libraries needed to use llqtwebkit. -#  LLQTWEBKIT_LIBRARY_DIRS, where to find the llqtwebkit library. -#  LLQTWEBKIT_DEFINITIONS - You should add_definitions(${LLQTWEBKIT_DEFINITIONS}) -#      before compiling code that includes llqtwebkit library files. - -# Try to use pkg-config first. -# This allows to have two different libllqtwebkit packages installed: -# one for viewer 2.x and one for viewer 1.x. -include(FindPkgConfig) -if (PKG_CONFIG_FOUND) -    if (LLQtWebkit_FIND_REQUIRED AND LLQtWebkit_FIND_VERSION) -        set(_PACKAGE_ARGS libllqtwebkit>=${LLQtWebkit_FIND_VERSION} REQUIRED) -    else (LLQtWebkit_FIND_REQUIRED AND LLQtWebkit_FIND_VERSION) -        set(_PACKAGE_ARGS libllqtwebkit) -    endif (LLQtWebkit_FIND_REQUIRED AND LLQtWebkit_FIND_VERSION) -    if (NOT "${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_LESS "2.8.2") -      # As virtually nobody will have a pkg-config file for this, do this check always quiet. -      # Unfortunately cmake 2.8.2 or higher is required for pkg_check_modules to have a 'QUIET'. -      set(_PACKAGE_ARGS ${_PACKAGE_ARGS} QUIET) -    endif () -    pkg_check_modules(LLQTWEBKIT ${_PACKAGE_ARGS}) -endif (PKG_CONFIG_FOUND) -set(LLQTWEBKIT_DEFINITIONS ${LLQTWEBKIT_CFLAGS_OTHER}) - -find_path(LLQTWEBKIT_INCLUDE_DIR llqtwebkit.h NO_SYSTEM_ENVIRONMENT_PATH HINTS ${LLQTWEBKIT_INCLUDE_DIRS}) - -find_library(LLQTWEBKIT_LIBRARY NAMES llqtwebkit NO_SYSTEM_ENVIRONMENT_PATH HINTS ${LLQTWEBKIT_LIBRARY_DIRS}) - -if (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND)   # If pkg-config couldn't find it, pretend we don't have pkg-config. -   set(LLQTWEBKIT_LIBRARIES llqtwebkit) -   get_filename_component(LLQTWEBKIT_LIBRARY_DIRS ${LLQTWEBKIT_LIBRARY} PATH) -endif (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND) - -# Handle the QUIETLY and REQUIRED arguments and set LLQTWEBKIT_FOUND -# to TRUE if all listed variables are TRUE. -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args( -  LLQTWEBKIT -  DEFAULT_MSG -  LLQTWEBKIT_LIBRARY -  LLQTWEBKIT_INCLUDE_DIR -  LLQTWEBKIT_LIBRARIES -  LLQTWEBKIT_LIBRARY_DIRS -  ) - -mark_as_advanced( -  LLQTWEBKIT_LIBRARY -  LLQTWEBKIT_INCLUDE_DIR -  LLQTWEBKIT_LIBRARIES -  LLQTWEBKIT_LIBRARY_DIRS -  LLQTWEBKIT_DEFINITIONS -  ) - diff --git a/indra/cmake/FindMT.cmake b/indra/cmake/FindMT.cmake deleted file mode 100644 index 5239a4c2f5..0000000000 --- a/indra/cmake/FindMT.cmake +++ /dev/null @@ -1,15 +0,0 @@ -#Find the windows manifest tool. - -FIND_PROGRAM(HAVE_MANIFEST_TOOL NAMES mt -                 PATHS -                 "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/VC/bin" -                 "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/Common7/Tools/Bin" -                 "$ENV{PROGRAMFILES}/Microsoft Visual Studio 8/SDK/v2.0/Bin") -IF(HAVE_MANIFEST_TOOL) -    MESSAGE(STATUS "Found Mainfest Tool. Embedding custom manifests.") -ELSE(HAVE_MANIFEST_TOOL) -    MESSAGE(FATAL_ERROR "Manifest tool, mt.exe, can't be found.") -ENDIF(HAVE_MANIFEST_TOOL) - -STRING(REPLACE "/MANIFEST" "/MANIFEST:NO" CMAKE_EXE_LINKER_FLAGS  -      ${CMAKE_EXE_LINKER_FLAGS}) diff --git a/indra/cmake/FindMono.cmake b/indra/cmake/FindMono.cmake deleted file mode 100644 index d956c48656..0000000000 --- a/indra/cmake/FindMono.cmake +++ /dev/null @@ -1,68 +0,0 @@ -# - Try to find the mono, mcs, gmcs and gacutil -# -# defines -# -# MONO_FOUND - system has mono, mcs, gmcs and gacutil -# MONO_PATH - where to find 'mono' -# MCS_PATH - where to find 'mcs' -# GMCS_PATH - where to find 'gmcs' -# GACUTIL_PATH - where to find 'gacutil' -# -# copyright (c) 2007 Arno Rehn arno@arnorehn.de -# -# Redistribution and use is allowed according to the terms of the GPL license. -# Removed the check for gmcs - -FIND_PROGRAM (MONO_EXECUTABLE mono -             "$ENV{PROGRAMFILES}/Mono-1.9.1/bin" -             "$ENV{PROGRAMFILES}/Mono-1.2.6/bin" -             /bin -             /usr/bin -             /usr/local/bin -) -FIND_PROGRAM (MCS_EXECUTABLE mcs -             "$ENV{PROGRAMFILES}/Mono-1.9.1/bin" -             "$ENV{PROGRAMFILES}/Mono-1.2.6/bin" -             /bin -             /usr/bin -             /usr/local/bin -) -FIND_PROGRAM (GMCS_EXECUTABLE gmcs -             "$ENV{PROGRAMFILES}/Mono-1.9.1/bin" -             "$ENV{PROGRAMFILES}/Mono-1.2.6/bin" -             /bin -             /usr/bin -             /usr/local/bin -) -FIND_PROGRAM (GACUTIL_EXECUTABLE gacutil -             "$ENV{PROGRAMFILES}/Mono-1.9.1/bin" -             "$ENV{PROGRAMFILES}/Mono-1.2.6/bin" -             /bin -             /usr/bin -             /usr/local/bin -) -FIND_PROGRAM (ILASM_EXECUTABLE -             NAMES ilasm.bat ilasm -             NO_DEFAULT_PATH -             PATHS "$ENV{PROGRAMFILES}/Mono-1.9.1/bin" "$ENV{PROGRAMFILES}/Mono-1.2.6/bin" /bin /usr/bin /usr/local/bin -) - -SET (MONO_FOUND FALSE) - -IF (MONO_EXECUTABLE AND MCS_EXECUTABLE AND GACUTIL_EXECUTABLE) -        SET (MONO_FOUND TRUE) -ENDIF (MONO_EXECUTABLE AND MCS_EXECUTABLE AND GACUTIL_EXECUTABLE) - -IF (MONO_FOUND) -        IF (NOT Mono_FIND_QUIETLY) -                MESSAGE(STATUS "Found mono: ${MONO_EXECUTABLE}") -                MESSAGE(STATUS "Found mcs: ${MCS_EXECUTABLE}") -                MESSAGE(STATUS "Found gacutil: ${GACUTIL_EXECUTABLE}") -        ENDIF (NOT Mono_FIND_QUIETLY) -ELSE (MONO_FOUND) -        IF (Mono_FIND_REQUIRED) -                MESSAGE(FATAL_ERROR "Could not find one or more of the following programs: mono, mcs, gacutil") -        ENDIF (Mono_FIND_REQUIRED) -ENDIF (MONO_FOUND) - -MARK_AS_ADVANCED(MONO_EXECUTABLE MCS_EXECUTABLE GACUTIL_EXECUTABLE) diff --git a/indra/cmake/FindMySQL.cmake b/indra/cmake/FindMySQL.cmake deleted file mode 100644 index 431940328f..0000000000 --- a/indra/cmake/FindMySQL.cmake +++ /dev/null @@ -1,48 +0,0 @@ -# -*- cmake -*- - -# - Find MySQL -# Find the MySQL includes and library -# This module defines -#  MYSQL_INCLUDE_DIR, where to find mysql.h, etc. -#  MYSQL_LIBRARIES, the libraries needed to use Mysql. -#  MYSQL_FOUND, If false, do not try to use Mysql. -# also defined, but not for general use are -#  MYSQL_LIBRARY, where to find the Mysql library. - -FIND_PATH(MYSQL_INCLUDE_DIR mysql/mysql.h -/usr/local/include -/usr/include -) - -SET(MYSQL_NAMES ${MYSQL_NAMES} mysqlclient) -FIND_LIBRARY(MYSQL_LIBRARY -  NAMES ${MYSQL_NAMES} -  PATHS /usr/lib/mysql /usr/lib /usr/local/lib/mysql /usr/local/lib -  ) - -IF (MYSQL_LIBRARY AND MYSQL_INCLUDE_DIR) -    SET(MYSQL_LIBRARIES ${MYSQL_LIBRARY}) -    SET(MYSQL_FOUND "YES") -ELSE (MYSQL_LIBRARY AND MYSQL_INCLUDE_DIR) -  SET(MYSQL_FOUND "NO") -ENDIF (MYSQL_LIBRARY AND MYSQL_INCLUDE_DIR) - - -IF (MYSQL_FOUND) -   IF (NOT MYSQL_FIND_QUIETLY) -      MESSAGE(STATUS "Found MySQL: ${MYSQL_LIBRARIES}") -   ENDIF (NOT MYSQL_FIND_QUIETLY) -ELSE (MYSQL_FOUND) -   IF (MYSQL_FIND_REQUIRED) -      MESSAGE(FATAL_ERROR "Could not find MySQL library") -   ENDIF (MYSQL_FIND_REQUIRED) -ENDIF (MYSQL_FOUND) - -# Deprecated declarations. -SET (NATIVE_MYSQL_INCLUDE_PATH ${MYSQL_INCLUDE_DIR} ) -GET_FILENAME_COMPONENT (NATIVE_MYSQL_LIB_PATH ${MYSQL_LIBRARY} PATH) - -MARK_AS_ADVANCED( -  MYSQL_LIBRARY -  MYSQL_INCLUDE_DIR -  ) diff --git a/indra/cmake/FindSVN.cmake b/indra/cmake/FindSVN.cmake deleted file mode 100644 index 3322be4ca9..0000000000 --- a/indra/cmake/FindSVN.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# -*- cmake -*- -# -# Find the svn executable for exporting old svn:externals. -# -# Input variables: -#   SVN_FIND_REQUIRED - set this if configuration should fail without scp -# -# Output variables: -# -#   SVN_FOUND - set if svn was found -#   SVN_EXECUTABLE - path to svn executable -#   SVN_BATCH_FLAG - how to put svn into batch mode - - -SET(SVN_EXECUTABLE) -FIND_PROGRAM(SVN_EXECUTABLE NAMES svn svn.exe) - -IF (SVN_EXECUTABLE) -  SET(SVN_FOUND ON) -ELSE (SVN_EXECUTABLE) -  SET(SVN_FOUND OFF) -ENDIF (SVN_EXECUTABLE) - -IF (SVN_FOUND) -  GET_FILENAME_COMPONENT(_svn_name ${SVN_EXECUTABLE} NAME_WE) -  SET(SVN_BATCH_FLAG --non-interactive) -ELSE (SVN_FOUND) -  IF (SVN_FIND_REQUIRED) -    MESSAGE(FATAL_ERROR "Could not find svn executable") -  ENDIF (SVN_FIND_REQUIRED) -ENDIF (SVN_FOUND) - -MARK_AS_ADVANCED(SVN_EXECUTABLE SVN_FOUND SVN_BATCH_FLAG) - diff --git a/indra/cmake/Havok.cmake b/indra/cmake/Havok.cmake index 8b7f01d20b..44f81ce332 100644 --- a/indra/cmake/Havok.cmake +++ b/indra/cmake/Havok.cmake @@ -12,14 +12,14 @@ set(HAVOK_DEBUG_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug/havok-fulldebug)  set(HAVOK_RELEASE_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release/havok)  if (LL_DEBUG_HAVOK) -   if (WIN32) -      # Always link relwithdebinfo to havok-hybrid on windows. -      set(HAVOK_RELWITHDEBINFO_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug/havok-hybrid) -   else (WIN32) -      set(HAVOK_RELWITHDEBINFO_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug/havok-fulldebug) -   endif (WIN32) +  if (WIN32) +    # Always link relwithdebinfo to havok-hybrid on windows. +    set(HAVOK_RELWITHDEBINFO_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug/havok-hybrid) +  else (WIN32) +    set(HAVOK_RELWITHDEBINFO_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/debug/havok-fulldebug) +  endif (WIN32)  else (LL_DEBUG_HAVOK) -   set(HAVOK_RELWITHDEBINFO_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release/havok) +  set(HAVOK_RELWITHDEBINFO_LIBRARY_PATH ${LIBS_PREBUILT_DIR}/lib/release/havok)  endif (LL_DEBUG_HAVOK)  set(HAVOK_LIBS @@ -51,14 +51,14 @@ unset(HK_RELWITHDEBINFO_LIBRARIES)  # *TODO: Figure out why we need to extract like this...  foreach(HAVOK_LIB ${HAVOK_LIBS}) -        find_library(HAVOK_DEBUG_LIB_${HAVOK_LIB}   ${HAVOK_LIB} PATHS ${HAVOK_DEBUG_LIBRARY_PATH}) -        find_library(HAVOK_RELEASE_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELEASE_LIBRARY_PATH}) -        find_library(HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}) -         -        if(LINUX) -            set(debug_dir "${HAVOK_DEBUG_LIBRARY_PATH}/${HAVOK_LIB}") -            set(release_dir "${HAVOK_RELEASE_LIBRARY_PATH}/${HAVOK_LIB}") -            set(relwithdebinfo_dir "${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}/${HAVOK_LIB}") +  find_library(HAVOK_DEBUG_LIB_${HAVOK_LIB}   ${HAVOK_LIB} PATHS ${HAVOK_DEBUG_LIBRARY_PATH}) +  find_library(HAVOK_RELEASE_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELEASE_LIBRARY_PATH}) +  find_library(HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB} ${HAVOK_LIB} PATHS ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}) +   +  if(LINUX) +    set(debug_dir "${HAVOK_DEBUG_LIBRARY_PATH}/${HAVOK_LIB}") +    set(release_dir "${HAVOK_RELEASE_LIBRARY_PATH}/${HAVOK_LIB}") +    set(relwithdebinfo_dir "${HAVOK_RELWITHDEBINFO_LIBRARY_PATH}/${HAVOK_LIB}")      # Try to avoid extracting havok library each time we run cmake.      if("${havok_${HAVOK_LIB}_extracted}" STREQUAL "" AND EXISTS "${CMAKE_BINARY_DIR}/temp/havok_${HAVOK_LIB}_extracted") @@ -77,35 +77,35 @@ foreach(HAVOK_LIB ${HAVOK_LIBS})        if(DEBUG_PREBUILT)          MESSAGE(STATUS "${cmd} ${debug_dir}")        endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${HAVOK_DEBUG_LIBRARY_PATH} ARGS ${debug_dir} OUTPUT_VARIABLE rv) +      exec_program( ${cmd} ${HAVOK_DEBUG_LIBRARY_PATH} ARGS ${debug_dir} OUTPUT_VARIABLE rv)        if(DEBUG_PREBUILT)          MESSAGE(STATUS "${cmd} ${release_dir}")        endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${HAVOK_RELEASE_LIBRARY_PATH} ARGS ${release_dir} OUTPUT_VARIABLE rv) +      exec_program( ${cmd} ${HAVOK_RELEASE_LIBRARY_PATH} ARGS ${release_dir} OUTPUT_VARIABLE rv)        if(DEBUG_PREBUILT)          MESSAGE(STATUS "${cmd} ${relwithdebinfo_dir}")        endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH} ARGS ${relwithdebinfo_dir} OUTPUT_VARIABLE rv) +      exec_program( ${cmd} ${HAVOK_RELWITHDEBINFO_LIBRARY_PATH} ARGS ${relwithdebinfo_dir} OUTPUT_VARIABLE rv) -            set(cmd "ar") -            set(arg " -xv") -            set(arg "${arg} ../lib${HAVOK_LIB}.a") +      set(cmd "ar") +      set(arg " -xv") +      set(arg "${arg} ../lib${HAVOK_LIB}.a")        if(DEBUG_PREBUILT)          MESSAGE(STATUS "cd ${debug_dir} && ${cmd} ${arg}")        endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${debug_dir} ARGS ${arg} OUTPUT_VARIABLE rv) +      exec_program( ${cmd} ${debug_dir} ARGS ${arg} OUTPUT_VARIABLE rv)        if(DEBUG_PREBUILT)          MESSAGE(STATUS "cd ${release_dir} && ${cmd} ${arg}")        endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${release_dir} ARGS ${arg} OUTPUT_VARIABLE rv) +      exec_program( ${cmd} ${release_dir} ARGS ${arg} OUTPUT_VARIABLE rv)        if(DEBUG_PREBUILT)          MESSAGE(STATUS "cd ${relwithdebinfo_dir} && ${cmd} ${arg}")        endif(DEBUG_PREBUILT) -            exec_program( ${cmd} ${relwithdebinfo_dir} ARGS ${arg} OUTPUT_VARIABLE rv) +      exec_program( ${cmd} ${relwithdebinfo_dir} ARGS ${arg} OUTPUT_VARIABLE rv)        # Just assume success for now.        set(havok_${HAVOK_LIB}_extracted 0) @@ -113,9 +113,9 @@ foreach(HAVOK_LIB ${HAVOK_LIBS})      endif(${CMAKE_BINARY_DIR}/temp/havok-source_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/havok_${HAVOK_LIB}_extracted OR NOT ${havok_${HAVOK_LIB}_extracted} EQUAL 0) -            file(GLOB extracted_debug "${debug_dir}/*.o") -            file(GLOB extracted_release "${release_dir}/*.o") -            file(GLOB extracted_relwithdebinfo "${relwithdebinfo_dir}/*.o") +    file(GLOB extracted_debug "${debug_dir}/*.o") +    file(GLOB extracted_release "${release_dir}/*.o") +    file(GLOB extracted_relwithdebinfo "${relwithdebinfo_dir}/*.o")      if(DEBUG_PREBUILT)        MESSAGE(STATUS "extracted_debug ${debug_dir}/*.o") @@ -123,15 +123,15 @@ foreach(HAVOK_LIB ${HAVOK_LIBS})        MESSAGE(STATUS "extracted_relwithdebinfo ${relwithdebinfo_dir}/*.o")      endif(DEBUG_PREBUILT) -            list(APPEND HK_DEBUG_LIBRARIES ${extracted_debug}) -            list(APPEND HK_RELEASE_LIBRARIES ${extracted_release}) -            list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${extracted_relwithdebinfo}) -        else(LINUX) -        # Win32 -            list(APPEND HK_DEBUG_LIBRARIES   ${HAVOK_DEBUG_LIB_${HAVOK_LIB}}) -            list(APPEND HK_RELEASE_LIBRARIES ${HAVOK_RELEASE_LIB_${HAVOK_LIB}}) -            list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB}}) -        endif (LINUX) +    list(APPEND HK_DEBUG_LIBRARIES ${extracted_debug}) +    list(APPEND HK_RELEASE_LIBRARIES ${extracted_release}) +    list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${extracted_relwithdebinfo}) +  else(LINUX) +  # Win32 +    list(APPEND HK_DEBUG_LIBRARIES   ${HAVOK_DEBUG_LIB_${HAVOK_LIB}}) +    list(APPEND HK_RELEASE_LIBRARIES ${HAVOK_RELEASE_LIB_${HAVOK_LIB}}) +    list(APPEND HK_RELWITHDEBINFO_LIBRARIES ${HAVOK_RELWITHDEBINFO_LIB_${HAVOK_LIB}}) +  endif (LINUX)  endforeach(HAVOK_LIB)  endif(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED) diff --git a/indra/cmake/LLDatabase.cmake b/indra/cmake/LLDatabase.cmake deleted file mode 100644 index 6526101386..0000000000 --- a/indra/cmake/LLDatabase.cmake +++ /dev/null @@ -1,10 +0,0 @@ -# -*- cmake -*- - -include(MySQL) - -set(LLDATABASE_INCLUDE_DIRS -    ${LIBS_SERVER_DIR}/lldatabase -    ${MYSQL_INCLUDE_DIR} -    ) - -set(LLDATABASE_LIBRARIES lldatabase) diff --git a/indra/cmake/LLRender.cmake b/indra/cmake/LLRender.cmake index 868922451f..ae71ee4c0d 100644 --- a/indra/cmake/LLRender.cmake +++ b/indra/cmake/LLRender.cmake @@ -11,8 +11,8 @@ set(LLRENDER_INCLUDE_DIRS  if (BUILD_HEADLESS)    set(LLRENDER_HEADLESS_LIBRARIES -      llrenderheadless -      ) +    llrenderheadless +    )  endif (BUILD_HEADLESS)  set(LLRENDER_LIBRARIES      llrender diff --git a/indra/cmake/LLScene.cmake b/indra/cmake/LLScene.cmake deleted file mode 100644 index 96ad5085a2..0000000000 --- a/indra/cmake/LLScene.cmake +++ /dev/null @@ -1,7 +0,0 @@ -# -*- cmake -*- - -set(LLSCENE_INCLUDE_DIRS -    ${LIBS_SERVER_DIR}/llscene -    ) - -set(LLSCENE_LIBRARIES llscene) diff --git a/indra/cmake/LLWindow.cmake b/indra/cmake/LLWindow.cmake index ad732ef650..0def507e65 100644 --- a/indra/cmake/LLWindow.cmake +++ b/indra/cmake/LLWindow.cmake @@ -33,10 +33,10 @@ set(LLWINDOW_INCLUDE_DIRS  if (BUILD_HEADLESS)    set(LLWINDOW_HEADLESS_LIBRARIES -      llwindowheadless -      ) +    llwindowheadless +    )  endif (BUILD_HEADLESS) -  set(LLWINDOW_LIBRARIES -      llwindow -      ) +set(LLWINDOW_LIBRARIES +    llwindow +    ) diff --git a/indra/cmake/LLXUIXML.cmake b/indra/cmake/LLXUIXML.cmake deleted file mode 100644 index b8bfe48c77..0000000000 --- a/indra/cmake/LLXUIXML.cmake +++ /dev/null @@ -1,7 +0,0 @@ -# -*- cmake -*- - -set(LLXUIXML_INCLUDE_DIRS -    ${LIBS_OPEN_DIR}/llxuixml -    ) - -set(LLXUIXML_LIBRARIES llxuixml) diff --git a/indra/cmake/MonoDeps.cmake b/indra/cmake/MonoDeps.cmake deleted file mode 100644 index 52d5491563..0000000000 --- a/indra/cmake/MonoDeps.cmake +++ /dev/null @@ -1,48 +0,0 @@ -# -*- cmake -*- - -set(MONO_PREBUILT_LIBRARIES_DIR ${LIBS_PREBUILT_DIR}/mono/1.0) - -set(MONO_PREBUILT_LIBRARIES -     Iesi.Collections.dll -     Iesi.Collections.pdb -     Mono.CompilerServices.SymbolWriter.dll -     Mono.PEToolkit.dll -     Mono.PEToolkit.pdb -     Mono.Security.dll -     PEAPI.dll -     RAIL.dll -     RAIL.pdb -  ) -   -  set(MONO_CORE_LIBRARIES -    System.dll -    System.Xml.dll -    mscorlib.dll) -     -if(WINDOWS) -    set(MONO_DEPENDENCIES -        DomainCreator -        DomainRegister -        LslLibrary -        LslUserScript -        Script -        ScriptTypes -        TestFormat -        UserScript -        UThread -        UThreadInjector -        ) -else(WINDOWS) -    set(MONO_DEPENDENCIES -        DomainCreator_POST_BUILD -        DomainRegister_POST_BUILD -        LslLibrary_POST_BUILD -        LslUserScript_POST_BUILD -        Script_POST_BUILD -        ScriptTypes_POST_BUILD -        TestFormat_POST_BUILD -        UserScript_POST_BUILD -        UThread_POST_BUILD -        UThreadInjector_POST_BUILD -        ) -endif(WINDOWS) diff --git a/indra/cmake/MonoEmbed.cmake b/indra/cmake/MonoEmbed.cmake deleted file mode 100644 index 30890aed21..0000000000 --- a/indra/cmake/MonoEmbed.cmake +++ /dev/null @@ -1,57 +0,0 @@ -# -*- cmake -*- - -include(Prebuilt) -use_prebuilt_binary(libmono) - -SET(GLIB_2_0 glib-2.0) - -if (WINDOWS) -    SET(MONO_LIB mono)  -else (WINDOWS) -    SET(MONO_LIB mono) -    SET(M_LIBRARIES m) -    SET(GTHREAD_2_0 gthread-2.0) -endif(WINDOWS) - - -IF (DARWIN) - -  FIND_LIBRARY(MONO_LIBRARY NAMES Mono) -  # Find_file doesnt work as expected. Hardcode relative to Mono.framework.  -  #FIND_FILE(GLIB_CONFIG glibconfig.h ${MONO_LIBRARY}) -  #FIND_FILE(MONO_GLIB_LIBRARY glib.h ${MONO_LIBRARY}) -  SET(MONO_GLIB_LIBRARY ${MONO_LIBRARY}/Headers/glib-2.0/) -  SET(GLIB_CONFIG ${MONO_LIBRARY}/Libraries/glib-2.0/include/) -  SET(MONO_LIB_DIRECTORY ${MONO_LIBRARY}/Libraries) - -  IF (MONO_LIBRARY AND MONO_GLIB_LIBRARY AND GLIB_CONFIG) -    MESSAGE(STATUS "Found Mono for embedding") -    INCLUDE_DIRECTORIES(${MONO_GLIB_LIBRARY} ${GLIB_CONFIG}) -    LINK_DIRECTORIES(${MONO_LIB_DIRECTORY}) -  ELSE (MONO_LIBRARY AND MONO_GLIB_LIBRARY AND GLIB_CONFIG) -    MESSAGE(FATAL_ERROR "Mono not found for embedding")    -    MESSAGE(${MONO_LIBRARY}) -    MESSAGE(${MONO_GLIB_LIBRARY}) -    MESSAGE(${GLIB_CONFIG}) -  ENDIF (MONO_LIBRARY AND MONO_GLIB_LIBRARY AND GLIB_CONFIG) - -ELSE (DARWIN) - -  SET(MONO_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include)   -  SET(GLIB_2_0_PLATFORM_INCLUDE_DIR -    ${LIBS_PREBUILT_DIR}/include/glib-2.0) -  SET(GLIB_2_0_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/glib-2.0) - -  INCLUDE_DIRECTORIES( -    ${MONO_INCLUDE_DIR}  -    ${GLIB_2_0_PLATFORM_INCLUDE_DIR}  -    ${GLIB_2_0_INCLUDE_DIR}) -     -ENDIF (DARWIN)  - -SET(MONO_LIBRARIES  -    ${MONO_LIB}  -    ${M_LIBRARIES}  -    ${GLIB_2_0} -    ${GTHREAD_2_0}  -) diff --git a/indra/cmake/MySQL.cmake b/indra/cmake/MySQL.cmake deleted file mode 100644 index 218482449d..0000000000 --- a/indra/cmake/MySQL.cmake +++ /dev/null @@ -1,26 +0,0 @@ -# -*- cmake -*- -include(Linking) -include(Prebuilt) - -use_prebuilt_binary(mysql) - -if (LINUX) -  if (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1") -    set(MYSQL_LIBRARIES mysqlclient) -    set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include) -  else (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1") -    # Use the native MySQL library on a 64-bit system. -    set(MYSQL_FIND_QUIETLY ON) -    set(MYSQL_FIND_REQUIRED ON) -    include(FindMySQL) -  endif (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1") -elseif (WINDOWS) -  set(MYSQL_LIBRARIES mysqlclient) -  set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include) -elseif (DARWIN) -  set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include) -  set(MYSQL_LIBRARIES -    optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libmysqlclient.a -    debug ${ARCH_PREBUILT_DIRS_DEBUG}/libmysqlclient.a -    ) -endif (LINUX) diff --git a/indra/cmake/VisualLeakDetector.cmake b/indra/cmake/VisualLeakDetector.cmake index 6a20148b47..27e93e28bb 100644 --- a/indra/cmake/VisualLeakDetector.cmake +++ b/indra/cmake/VisualLeakDetector.cmake @@ -1,12 +1,12 @@  # -*- cmake -*- -  set(INCLUDE_VLD_CMAKE OFF CACHE BOOL "Build the Windows viewer with Visual Leak Detector turned on or off") +set(INCLUDE_VLD_CMAKE OFF CACHE BOOL "Build the Windows viewer with Visual Leak Detector turned on or off") -  if (INCLUDE_VLD_CMAKE) +if (INCLUDE_VLD_CMAKE) -    if (WINDOWS) -      add_definitions(-DINCLUDE_VLD=1) -    endif (WINDOWS) +  if (WINDOWS) +    add_definitions(-DINCLUDE_VLD=1) +  endif (WINDOWS) -  endif (INCLUDE_VLD_CMAKE) +endif (INCLUDE_VLD_CMAKE) diff --git a/indra/linux_crash_logger/CMakeLists.txt b/indra/linux_crash_logger/CMakeLists.txt index 41b92b00e0..c0fc1b2be0 100644 --- a/indra/linux_crash_logger/CMakeLists.txt +++ b/indra/linux_crash_logger/CMakeLists.txt @@ -26,6 +26,10 @@ include_directories(SYSTEM      ${LLCOMMON_SYSTEM_INCLUDE_DIRS}      ${LLXML_SYSTEM_INCLUDE_DIRS}      ) +include_directories(SYSTEM +    ${LLCOMMON_SYSTEM_INCLUDE_DIRS} +    ${LLXML_SYSTEM_INCLUDE_DIRS} +    )  set(linux_crash_logger_SOURCE_FILES      linux_crash_logger.cpp diff --git a/indra/llcommon/llavatarname.h b/indra/llcommon/llavatarname.h index 5d2fccc5ba..7542a8dece 100644 --- a/indra/llcommon/llavatarname.h +++ b/indra/llcommon/llavatarname.h @@ -63,7 +63,7 @@ public:  	// For normal names, returns "James Linden (james.linden)"  	// When display names are disabled returns just "James Linden"  	std::string getCompleteName() const; -	 +  	// Returns "James Linden" or "bobsmith123 Resident" for backwards  	// compatibility with systems like voice and muting  	// *TODO: Eliminate this in favor of username only diff --git a/indra/llcommon/llfasttimer.cpp b/indra/llcommon/llfasttimer.cpp index 024fdd1b4d..9b15804e97 100644 --- a/indra/llcommon/llfasttimer.cpp +++ b/indra/llcommon/llfasttimer.cpp @@ -561,7 +561,7 @@ std::vector<LLFastTimer::NamedTimer*>& LLFastTimer::NamedTimer::getChildren()  	return mChildren;  } -//static +// static  LLFastTimer::NamedTimer& LLFastTimer::NamedTimer::getRootNamedTimer()  {          return *NamedTimerFactory::instance().getRootTimer(); diff --git a/indra/llcommon/llfile.cpp b/indra/llcommon/llfile.cpp index c3a0f0bfe0..864b6e6975 100644 --- a/indra/llcommon/llfile.cpp +++ b/indra/llcommon/llfile.cpp @@ -438,7 +438,7 @@ llstdio_filebuf::int_type llstdio_filebuf::overflow(llstdio_filebuf::int_type __  				_M_set_buffer(0);  				__ret = traits_type::not_eof(__c);  			} -	} +		}  		else if (_M_buf_size > 1)  		{  			// Overflow in 'uncommitted' mode: set _M_writing, set @@ -496,11 +496,11 @@ bool llstdio_filebuf::_convert_to_external(char_type* __ibuf,  		if (__r == codecvt_base::ok || __r == codecvt_base::partial)  			__blen = __bend - __buf;  		else if (__r == codecvt_base::noconv) -	{ +		{  			// Same as the always_noconv case above.  			__buf = reinterpret_cast<char*>(__ibuf);  			__blen = __ilen; -	} +		}  		else  			__throw_ios_failure(__N("llstdio_filebuf::_convert_to_external "  									"conversion error")); @@ -643,9 +643,9 @@ llstdio_filebuf::int_type llstdio_filebuf::underflow()  							_M_ext_end, _M_ext_next,  							this->eback(),  							this->eback() + __buflen, __iend); -} +				}  				if (__r == codecvt_base::noconv) -{ +				{  					size_t __avail = _M_ext_end - _M_ext_buf;  					__ilen = std::min(__avail, __buflen);  					traits_type::copy(this->eback(), @@ -806,15 +806,15 @@ std::streamsize llstdio_filebuf::xsputn(char_type* __s, std::streamsize __n)  				__ret = fwrite(__buf, 1, __buffill, _M_file.file());  			}  			if (__ret == __buffill) -	{ +			{  				__ret += fwrite(reinterpret_cast<const char*>(__s), 1,  								__n, _M_file.file()); -	} +			}  			if (__ret == __buffill + __n)  			{  				_M_set_buffer(0);  				_M_writing = true; -} +			}  			if (__ret > __buffill)  				__ret -= __buffill;  			else @@ -848,7 +848,7 @@ llifstream::llifstream() : _M_filebuf(),  #endif  // explicit -llifstream::llifstream(const std::string& _Filename, +llifstream::llifstream(const std::string& _Filename,   		ios_base::openmode _Mode) : _M_filebuf(),  #if LL_WINDOWS  	std::istream(&_M_filebuf) @@ -877,7 +877,7 @@ llifstream::llifstream(const char* _Filename,  	if (_M_filebuf.open(wideName.c_str(), _Mode | ios_base::in) == 0)  	{  		_Myios::setstate(ios_base::failbit); -} +	}  }  #else  	std::istream() @@ -951,8 +951,8 @@ void llifstream::close()  #else  		this->setstate(ios_base::failbit);  #endif -		}  	} +}  /************** output file stream ********************************/ @@ -1042,7 +1042,7 @@ void llofstream::open(const char* _Filename, ios_base::openmode _Mode)  #if LL_WINDOWS  	llutf16string wideName = utf8str_to_utf16str( _Filename );  	if (_M_filebuf.open( wideName.c_str(), _Mode | ios_base::out) == 0) -{ +	{  		_Myios::setstate(ios_base::failbit);  	}  	else diff --git a/indra/llcommon/llfile.h b/indra/llcommon/llfile.h index 1e4d966159..9d70db96ea 100644 --- a/indra/llcommon/llfile.h +++ b/indra/llcommon/llfile.h @@ -35,7 +35,7 @@   * Attempts to mostly mirror the POSIX style IO functions.   */ -typedef FILE	LLFILE; +typedef FILE LLFILE;  #include <fstream>  #include <sys/stat.h> @@ -225,7 +225,7 @@ public:  			ios_base::openmode _Mode = ios_base::in);  	explicit llifstream(const char* _Filename,  			ios_base::openmode _Mode = ios_base::in); -	 +  	/**  	 *  @brief  Create a stream using an open c file stream.  	 *  @param  File  An open @c FILE*. diff --git a/indra/llcommon/llsdserialize_xml.cpp b/indra/llcommon/llsdserialize_xml.cpp index 614a2d5636..cef743a7be 100644 --- a/indra/llcommon/llsdserialize_xml.cpp +++ b/indra/llcommon/llsdserialize_xml.cpp @@ -406,7 +406,7 @@ S32 LLSDXMLParser::Impl::parse(std::istream& input, LLSD& data)  		}  		if (mEmitErrors)  		{ -		llinfos << "LLSDXMLParser::Impl::parse: XML_STATUS_ERROR parsing:" << (char*) buffer << llendl; +			llinfos << "LLSDXMLParser::Impl::parse: XML_STATUS_ERROR parsing:" << (char*) buffer << llendl;  		}  		data = LLSD();  		return LLSDParser::PARSE_FAILURE; @@ -487,7 +487,7 @@ S32 LLSDXMLParser::Impl::parseLines(std::istream& input, LLSD& data)  	{  		if (mEmitErrors)  		{ -		llinfos << "LLSDXMLParser::Impl::parseLines: XML_STATUS_ERROR" << llendl; +			llinfos << "LLSDXMLParser::Impl::parseLines: XML_STATUS_ERROR" << llendl;  		}  		return LLSDParser::PARSE_FAILURE;  	} diff --git a/indra/llcrashlogger/llcrashlogger.cpp b/indra/llcrashlogger/llcrashlogger.cpp index 34e25a8a71..fb2d43e3b0 100644 --- a/indra/llcrashlogger/llcrashlogger.cpp +++ b/indra/llcrashlogger/llcrashlogger.cpp @@ -147,7 +147,7 @@ void LLCrashLogger::gatherFiles()  	// Look for it in the debug_info.log file  	if (debug_log_file.is_open()) -	{		 +	{  		LLSDSerialize::fromXML(mDebugLog, debug_log_file);  		mCrashInPreviousExec = mDebugLog["CrashNotHandled"].asBoolean(); diff --git a/indra/llmessage/CMakeLists.txt b/indra/llmessage/CMakeLists.txt index d193e367eb..1a90c32fe4 100644 --- a/indra/llmessage/CMakeLists.txt +++ b/indra/llmessage/CMakeLists.txt @@ -246,7 +246,7 @@ if (LL_TESTS)      ${LLVFS_LIBRARIES}      ${LLMATH_LIBRARIES}      ${LLCOMMON_LIBRARIES} -      ${GOOGLEMOCK_LIBRARIES} +    ${GOOGLEMOCK_LIBRARIES}      )    LL_ADD_INTEGRATION_TEST( diff --git a/indra/llmessage/llhttpclient.cpp b/indra/llmessage/llhttpclient.cpp index 6110b035dc..3561459bb4 100644..100755 --- a/indra/llmessage/llhttpclient.cpp +++ b/indra/llmessage/llhttpclient.cpp @@ -224,7 +224,7 @@ static void request(  	{  		if (responder)  		{ -		responder->completed(U32_MAX, "No pump", LLSD()); +			responder->completed(U32_MAX, "No pump", LLSD());  		}  		delete body_injector;  		return; @@ -238,9 +238,9 @@ static void request(  		{  			responder->completed(498, "Internal Error - curl failure", LLSD());  		} -		delete req ; +		delete req;  		delete body_injector; -		return ; +		return;  	}  	req->setSSLVerifyCallback(LLHTTPClient::getCertVerifyCallback(), (void *)req); diff --git a/indra/llmessage/llhttpclientadapter.cpp b/indra/llmessage/llhttpclientadapter.cpp index dcd2d79d67..0b59209af1 100644 --- a/indra/llmessage/llhttpclientadapter.cpp +++ b/indra/llmessage/llhttpclientadapter.cpp @@ -45,8 +45,8 @@ void LLHTTPClientAdapter::get(const std::string& url, LLCurl::ResponderPtr respo  	LLSD empty_pragma_header = headers;  	if (!empty_pragma_header.has("Pragma"))  	{ -	// as above -	empty_pragma_header["Pragma"] = " "; +		// as above +		empty_pragma_header["Pragma"] = " ";  	}  	LLHTTPClient::get(url, responder, empty_pragma_header);  } diff --git a/indra/llmessage/tests/llhttpclient_test.cpp b/indra/llmessage/tests/llhttpclient_test.cpp index 559001d079..87cbafa404 100644 --- a/indra/llmessage/tests/llhttpclient_test.cpp +++ b/indra/llmessage/tests/llhttpclient_test.cpp @@ -241,7 +241,7 @@ namespace tut  		ensureStatusOK();  		ensure_equals("echoed result matches", getResult(), sd);  	} - +		  	template<> template<>  		void HTTPClientTestObject::test<4>()  	{ diff --git a/indra/llprimitive/llprimitive.cpp b/indra/llprimitive/llprimitive.cpp index 4a3fd03242..fe0e7e0133 100644 --- a/indra/llprimitive/llprimitive.cpp +++ b/indra/llprimitive/llprimitive.cpp @@ -1257,7 +1257,6 @@ BOOL LLPrimitive::packTEMessage(LLDataPacker &dp) const  S32 LLPrimitive::parseTEMessage(LLMessageSystem* mesgsys, char const* block_name, const S32 block_num, LLTEContents& tec)  {  	S32 retval = 0; -     // temp buffer for material ID processing     // data will end up in tec.material_id[]	     U8 material_data[LLTEContents::MAX_TES*16]; @@ -1331,7 +1330,7 @@ S32 LLPrimitive::parseTEMessage(LLMessageSystem* mesgsys, char const* block_name  S32 LLPrimitive::applyParsedTEMessage(LLTEContents& tec)  {  	S32 retval = 0; -	 +  	LLColor4 color;  	LLColor4U coloru;  	for (U32 i = 0; i < tec.face_count; i++) diff --git a/indra/llprimitive/llprimitive.h b/indra/llprimitive/llprimitive.h index 6f3657cd9b..b1f8090416 100644 --- a/indra/llprimitive/llprimitive.h +++ b/indra/llprimitive/llprimitive.h @@ -392,7 +392,6 @@ public:  	S32 unpackTEField(U8 *cur_ptr, U8 *buffer_end, U8 *data_ptr, U8 data_size, U8 face_count, EMsgVariableType type);  	BOOL packTEMessage(LLMessageSystem *mesgsys) const;  	BOOL packTEMessage(LLDataPacker &dp) const; -	S32 unpackTEMessage(LLMessageSystem* mesgsys, char const* block_name);  	S32 unpackTEMessage(LLMessageSystem* mesgsys, char const* block_name, const S32 block_num); // Variable num of blocks  	BOOL unpackTEMessage(LLDataPacker &dp);  	S32 parseTEMessage(LLMessageSystem* mesgsys, char const* block_name, const S32 block_num, LLTEContents& tec); diff --git a/indra/llrender/CMakeLists.txt b/indra/llrender/CMakeLists.txt index 9f8fc9ea22..669b70aa43 100644 --- a/indra/llrender/CMakeLists.txt +++ b/indra/llrender/CMakeLists.txt @@ -3,7 +3,7 @@  project(llrender)  include(00-Common) -include(FindOpenGL) +include(OpenGL)  include(FreeType)  include(LLCommon)  include(LLImage) @@ -92,7 +92,7 @@ if (BUILD_HEADLESS)    set_property(TARGET llrenderheadless      PROPERTY COMPILE_DEFINITIONS LL_MESA=1 LL_MESA_HEADLESS=1 -      ) +    )    target_link_libraries(llrenderheadless      ${LLCOMMON_LIBRARIES} diff --git a/indra/llrender/llimagegl.cpp b/indra/llrender/llimagegl.cpp index 09bd0b3cdc..e0fe9e783d 100644 --- a/indra/llrender/llimagegl.cpp +++ b/indra/llrender/llimagegl.cpp @@ -624,7 +624,7 @@ void LLImageGL::setImage(const U8* data_in, BOOL data_hasmips)  	{  		is_compressed = true;  	} - +	  	if (mUseMipMaps) @@ -772,6 +772,8 @@ void LLImageGL::setImage(const U8* data_in, BOOL data_hasmips)  					else  					{  						S32 bytes = w * h * mComponents; +#ifdef SHOW_ASSERT +#endif  						U8* new_data = new U8[bytes];  #ifdef SHOW_ASSERT diff --git a/indra/llrender/lltexture.h b/indra/llrender/lltexture.h index 569a65c2e0..093bac20d1 100644 --- a/indra/llrender/lltexture.h +++ b/indra/llrender/lltexture.h @@ -38,10 +38,9 @@ class LLTexUnit ;  class LLFontGL ;  // -//this is an abstract class as the parent for the class LLViewerTexture -//through the following virtual functions, the class LLViewerTexture can be reached from /llrender. +//this is an abstract class as the parent for the class LLGLTexture  // -class LLTexture : public LLRefCount +class LLTexture : public virtual LLRefCount  {  	friend class LLTexUnit ;  	friend class LLFontGL ; @@ -53,7 +52,7 @@ public:  	LLTexture(){}  	// -	//interfaces to access LLViewerTexture +	//interfaces to access LLGLTexture  	//  	virtual S8         getType() const = 0 ;  	virtual void       setKnownDrawSize(S32 width, S32 height) = 0 ; diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index 08f2d30aa4..4423c5acb8 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -849,9 +849,9 @@ void LLVertexBuffer::drawArrays(U32 mode, U32 first, U32 count) const  	{  		LLFastTimer t2(FTM_GL_DRAW_ARRAYS); -	stop_glerror(); +		stop_glerror();  	LLGLSLShader::startProfile(); -	glDrawArrays(sGLMode[mode], first, count); +		glDrawArrays(sGLMode[mode], first, count);  	LLGLSLShader::stopProfile(count, mode);          } diff --git a/indra/llui/lllocalcliprect.cpp b/indra/llui/lllocalcliprect.cpp index f3a526faeb..0620e0f52d 100644 --- a/indra/llui/lllocalcliprect.cpp +++ b/indra/llui/lllocalcliprect.cpp @@ -33,7 +33,7 @@  LLScreenClipRect::LLScreenClipRect(const LLRect& rect, BOOL enabled) -:	mScissorState(GL_SCISSOR_TEST), +	:	mScissorState(GL_SCISSOR_TEST),  	mEnabled(enabled)  {  	if (mEnabled) @@ -100,10 +100,10 @@ void LLScreenClipRect::updateScissorRegion()  // LLLocalClipRect  //---------------------------------------------------------------------------  LLLocalClipRect::LLLocalClipRect(const LLRect& rect, BOOL enabled /* = TRUE */) -:	LLScreenClipRect(LLRect(rect.mLeft + LLFontGL::sCurOrigin.mX,  -					rect.mTop + LLFontGL::sCurOrigin.mY,  -					rect.mRight + LLFontGL::sCurOrigin.mX,  -					rect.mBottom + LLFontGL::sCurOrigin.mY), enabled) +	:	LLScreenClipRect(LLRect(rect.mLeft + LLFontGL::sCurOrigin.mX,  +	rect.mTop + LLFontGL::sCurOrigin.mY,  +	rect.mRight + LLFontGL::sCurOrigin.mX,  +	rect.mBottom + LLFontGL::sCurOrigin.mY), enabled)  {}  LLLocalClipRect::~LLLocalClipRect() diff --git a/indra/llvfs/llvfile.cpp b/indra/llvfs/llvfile.cpp index 306d7d8ec7..03d2cc25e3 100644 --- a/indra/llvfs/llvfile.cpp +++ b/indra/llvfs/llvfile.cpp @@ -135,7 +135,7 @@ U8* LLVFile::readFile(LLVFS *vfs, const LLUUID &uuid, LLAssetType::EType type, S  		data = NULL;  	}  	else -	{ +	{		  		data = (U8*) ll_aligned_malloc_16(file_size);  		file.read(data, file_size);	/* Flawfinder: ignore */  diff --git a/indra/llwindow/CMakeLists.txt b/indra/llwindow/CMakeLists.txt index 4c6e706119..ad010164eb 100644 --- a/indra/llwindow/CMakeLists.txt +++ b/indra/llwindow/CMakeLists.txt @@ -165,7 +165,7 @@ if (BUILD_HEADLESS)    set(llwindowheadless_HEADER_FILES         llwindowmesaheadless.h         llmousehandler.h -    ) +       )    add_library (llwindowheadless      ${llwindow_SOURCE_FILES}      ${llwindowheadless_SOURCE_FILES} @@ -180,12 +180,12 @@ if (llwindow_HEADER_FILES)    list(APPEND llwindow_SOURCE_FILES ${llwindow_HEADER_FILES})  endif (llwindow_HEADER_FILES) -  list(APPEND viewer_SOURCE_FILES ${viewer_HEADER_FILES}) +list(APPEND viewer_SOURCE_FILES ${viewer_HEADER_FILES}) -  add_library (llwindow -    ${llwindow_SOURCE_FILES} -    ${viewer_SOURCE_FILES} -    ) +add_library (llwindow +  ${llwindow_SOURCE_FILES} +  ${viewer_SOURCE_FILES} +  )  if (SDL_FOUND)    set_property(TARGET llwindow @@ -193,5 +193,5 @@ if (SDL_FOUND)      )  endif (SDL_FOUND) -  target_link_libraries (llwindow ${llwindow_LINK_LIBRARIES}) +target_link_libraries (llwindow ${llwindow_LINK_LIBRARIES}) diff --git a/indra/llxml/CMakeLists.txt b/indra/llxml/CMakeLists.txt index 17400a203e..cf96f26a77 100644 --- a/indra/llxml/CMakeLists.txt +++ b/indra/llxml/CMakeLists.txt @@ -42,7 +42,7 @@ list(APPEND llxml_SOURCE_FILES ${llxml_HEADER_FILES})  add_library (llxml ${llxml_SOURCE_FILES})  # Libraries on which this library depends, needed for Linux builds  # Sort by high-level to low-level -target_link_libraries( llxml +target_link_libraries(llxml      ${LLVFS_LIBRARIES}      ${LLMATH_LIBRARIES}      ${LLCOMMON_LIBRARIES} diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 0836b1de8c..b8b52580ad 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1859,17 +1859,6 @@ target_link_libraries(${VIEWER_BINARY_NAME}      ${LLAPPEARANCE_LIBRARIES}      ) -if (USE_KDU) -    target_link_libraries(${VIEWER_BINARY_NAME} -        ${LLKDU_LIBRARIES} -        ${KDU_LIBRARY} -        ) -else (USE_KDU) -    target_link_libraries(${VIEWER_BINARY_NAME} -        ${LLIMAGEJ2COJ_LIBRARIES} -        ) -endif (USE_KDU) -  build_version(viewer)  set(ARTWORK_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH @@ -2089,6 +2078,15 @@ if (LL_TESTS)    )    set_source_files_properties( +    llworldmap.cpp +    llworldmipmap.cpp +    PROPERTIES +    LL_TEST_ADDITIONAL_SOURCE_FILES  +    tests/llviewertexture_stub.cpp +    #llviewertexturelist.cpp +  ) + +  set_source_files_properties(      lltranslate.cpp      PROPERTIES      LL_TEST_ADDITIONAL_LIBRARIES "${JSONCPP_LIBRARIES}" diff --git a/indra/newview/app_settings/logcontrol.xml b/indra/newview/app_settings/logcontrol.xml index 92a241857e..92a241857e 100644..100755 --- a/indra/newview/app_settings/logcontrol.xml +++ b/indra/newview/app_settings/logcontrol.xml diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 448fdaadba..5ab9cd4d96 100644..100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -2015,7 +2015,7 @@        <key>Value</key>        <string />      </map> -	<key>DebugAvatarAppearanceMessage</key> +  <key>DebugAvatarAppearanceMessage</key>    <map>      <key>Comment</key>      <string>Dump a bunch of XML files when handling appearance messages</string> @@ -2070,7 +2070,7 @@      <key>Value</key>      <integer>1</integer>    </map> -    <key>DebugAvatarCompositeBaked</key> +  <key>DebugAvatarCompositeBaked</key>    <map>      <key>Comment</key>      <string>Colorize avatar meshes based on baked/composite state.</string> diff --git a/indra/newview/character/avatar_lad.xml b/indra/newview/character/avatar_lad.xml index 41080818c9..284e9c44b2 100644 --- a/indra/newview/character/avatar_lad.xml +++ b/indra/newview/character/avatar_lad.xml @@ -1084,7 +1084,8 @@           scale="0 0 .5" />        </param_skeleton>      </param> -                  <param + +    <param       id="11001"       group="0"       name="Hover" @@ -12307,7 +12308,7 @@ render_pass="bump">  	 <param_driver />      </param> -  <param +    <param       id="11000"       group="0"       name="AppearanceMessage_Version" diff --git a/indra/newview/linux_tools/wrapper.sh b/indra/newview/linux_tools/wrapper.sh index 9e2e37c202..48b883e999 100755 --- a/indra/newview/linux_tools/wrapper.sh +++ b/indra/newview/linux_tools/wrapper.sh @@ -144,7 +144,7 @@ done  # therefore "${gridargs[@]}" entirely vanishes from the command line below,  # just as we want.  if ! $skip_gridargs ; then -eval gridargs=("$(<etc/gridargs.dat)") +    eval gridargs=("$(<etc/gridargs.dat)")  fi  # Run the program. diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index 3e94c5edf7..8c42defa73 100755 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -4317,7 +4317,7 @@ void LLAgent::sendAgentSetAppearance()  		return;  	} -	 +  	LL_DEBUGS("Avatar") << gAgentAvatarp->avString() << "TAT: Sent AgentSetAppearance: " << gAgentAvatarp->getBakedStatusForPrintout() << LL_ENDL;  	//dumpAvatarTEs( "sendAgentSetAppearance()" ); @@ -4425,7 +4425,7 @@ void LLAgent::sendAgentSetAppearance()  		}  	} -//	llinfos << "Avatar XML num VisualParams transmitted = " << transmitted_params << llendl; +	//llinfos << "Avatar XML num VisualParams transmitted = " << transmitted_params << llendl;  	sendReliableMessage();  } diff --git a/indra/newview/llagentcamera.cpp b/indra/newview/llagentcamera.cpp index 488a134aa2..0896aa5972 100644 --- a/indra/newview/llagentcamera.cpp +++ b/indra/newview/llagentcamera.cpp @@ -2267,22 +2267,22 @@ void LLAgentCamera::changeCameraToCustomizeAvatar()  		gFocusMgr.setKeyboardFocus( NULL );  		gFocusMgr.setMouseCapture( NULL ); -			// Remove any pitch or rotation from the avatar -			LLVector3 at = gAgent.getAtAxis(); -			at.mV[VZ] = 0.f; -			at.normalize(); -			gAgent.resetAxes(at); - -			gAgent.sendAnimationRequest(ANIM_AGENT_CUSTOMIZE, ANIM_REQUEST_START); -			gAgent.setCustomAnim(TRUE); -			gAgentAvatarp->startMotion(ANIM_AGENT_CUSTOMIZE); -			LLMotion* turn_motion = gAgentAvatarp->findMotion(ANIM_AGENT_CUSTOMIZE); - -			if (turn_motion) -			{ -				// delay camera animation long enough to play through turn animation -				setAnimationDuration(turn_motion->getDuration() + CUSTOMIZE_AVATAR_CAMERA_ANIM_SLOP); -			} +		// Remove any pitch or rotation from the avatar +		LLVector3 at = gAgent.getAtAxis(); +		at.mV[VZ] = 0.f; +		at.normalize(); +		gAgent.resetAxes(at); + +		gAgent.sendAnimationRequest(ANIM_AGENT_CUSTOMIZE, ANIM_REQUEST_START); +		gAgent.setCustomAnim(TRUE); +		gAgentAvatarp->startMotion(ANIM_AGENT_CUSTOMIZE); +		LLMotion* turn_motion = gAgentAvatarp->findMotion(ANIM_AGENT_CUSTOMIZE); + +		if (turn_motion) +		{ +			// delay camera animation long enough to play through turn animation +			setAnimationDuration(turn_motion->getDuration() + CUSTOMIZE_AVATAR_CAMERA_ANIM_SLOP); +		}  	}  	LLVector3 agent_at = gAgent.getAtAxis(); diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp index dc22aae8d4..c88694ef76 100644 --- a/indra/newview/llagentwearables.cpp +++ b/indra/newview/llagentwearables.cpp @@ -62,15 +62,15 @@ using namespace LLAvatarAppearanceDefines;  // Callback to wear and start editing an item that has just been created.  void wear_and_edit_cb(const LLUUID& inv_item) -	{ -		if (inv_item.isNull()) return; - -		// Request editing the item after it gets worn. -		gAgentWearables.requestEditingWearable(inv_item); - -		// Wear it. -		LLAppearanceMgr::instance().wearItemOnAvatar(inv_item); -	} +{ +	if (inv_item.isNull()) return; +	 +	// Request editing the item after it gets worn. +	gAgentWearables.requestEditingWearable(inv_item); +	 +	// Wear it. +	LLAppearanceMgr::instance().wearItemOnAvatar(inv_item); +}  /////////////////////////////////////////////////////////////////////////////// @@ -180,10 +180,10 @@ void LLAgentWearables::initClass()  }  void LLAgentWearables::setAvatarObject(LLVOAvatarSelf *avatar) -{  +{  	llassert(avatar); -		avatar->outputRezTiming("Sending wearables request"); -		sendAgentWearablesRequest(); +	avatar->outputRezTiming("Sending wearables request"); +	sendAgentWearablesRequest();  	setAvatarAppearance(avatar);  } @@ -706,47 +706,47 @@ LLViewerWearable* LLAgentWearables::getViewerWearable(const LLWearableType::ETyp  }  const LLViewerWearable* LLAgentWearables::getViewerWearable(const LLWearableType::EType type, U32 index /*= 0*/) const -	{ +{  	return dynamic_cast<const LLViewerWearable*> (getWearable(type, index));  }  // static  BOOL LLAgentWearables::selfHasWearable(LLWearableType::EType type) -	{ +{  	return (gAgentWearables.getWearableCount(type) > 0); -	} -	 +} +  // virtual  void LLAgentWearables::wearableUpdated(LLWearable *wearable, BOOL removed) -	{ +{  	if (isAgentAvatarValid())  	{  		const BOOL upload_result = removed;  		gAgentAvatarp->wearableUpdated(wearable->getType(), upload_result); -} +	}  	LLWearableData::wearableUpdated(wearable, removed);  	if (!removed) -{ +	{  		LLViewerWearable* viewer_wearable = dynamic_cast<LLViewerWearable*>(wearable);  		viewer_wearable->refreshName(); -	// Hack pt 2. If the wearable we just loaded has definition version 24, -	// then force a re-save of this wearable after slamming the version number to 22. -	// This number was incorrectly incremented for internal builds before release, and -	// this fix will ensure that the affected wearables are re-saved with the right version number. -	// the versions themselves are compatible. This code can be removed before release. -	if( wearable->getDefinitionVersion() == 24 ) -	{ -		wearable->setDefinitionVersion(22); -		U32 index = getWearableIndex(wearable); +		// Hack pt 2. If the wearable we just loaded has definition version 24, +		// then force a re-save of this wearable after slamming the version number to 22. +		// This number was incorrectly incremented for internal builds before release, and +		// this fix will ensure that the affected wearables are re-saved with the right version number. +		// the versions themselves are compatible. This code can be removed before release. +		if( wearable->getDefinitionVersion() == 24 ) +		{ +			wearable->setDefinitionVersion(22); +			U32 index = getWearableIndex(wearable);  			llinfos << "forcing wearable type " << wearable->getType() << " to version 22 from 24" << llendl; -		saveWearable(wearable->getType(),index,TRUE); -	} +			saveWearable(wearable->getType(),index,TRUE); +		}  		checkWearableAgainstInventory(viewer_wearable); -} +	}  }  BOOL LLAgentWearables::itemUpdatePending(const LLUUID& item_id) const @@ -965,8 +965,8 @@ public:  		llinfos << "All items created" << llendl;  		LLPointer<LLInventoryCallback> link_waiter = new LLUpdateAppearanceOnDestroy;  		LLAppearanceMgr::instance().linkAll(LLAppearanceMgr::instance().getCOF(), -												mItemsToLink, -												link_waiter); +											mItemsToLink, +											link_waiter);  	}  	void addPendingWearable(LLViewerWearable *wearable)  	{ @@ -1495,13 +1495,13 @@ void LLAgentWearables::queryWearableCache()  // virtual  void LLAgentWearables::invalidateBakedTextureHash(LLMD5& hash) const +{ +	// Add some garbage into the hash so that it becomes invalid. +	if (isAgentAvatarValid())  	{ -		// Add some garbage into the hash so that it becomes invalid. -			if (isAgentAvatarValid()) -			{ -				hash.update((const unsigned char*)gAgentAvatarp->getID().mData, UUID_BYTES); -			} -		} +		hash.update((const unsigned char*)gAgentAvatarp->getID().mData, UUID_BYTES); +	} +}  // User has picked "remove from avatar" from a menu.  // static diff --git a/indra/newview/llagentwearablesfetch.cpp b/indra/newview/llagentwearablesfetch.cpp index 8b6b6db525..2d2d730396 100644 --- a/indra/newview/llagentwearablesfetch.cpp +++ b/indra/newview/llagentwearablesfetch.cpp @@ -36,45 +36,45 @@  void order_my_outfits_cb() +{ +	if (!LLApp::isRunning())  	{ -		if (!LLApp::isRunning()) -		{ -			llwarns << "called during shutdown, skipping" << llendl; -			return; -		} +		llwarns << "called during shutdown, skipping" << llendl; +		return; +	} -		const LLUUID& my_outfits_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_MY_OUTFITS); -		if (my_outfits_id.isNull()) return; - -		LLInventoryModel::cat_array_t* cats; -		LLInventoryModel::item_array_t* items; -		gInventory.getDirectDescendentsOf(my_outfits_id, cats, items); -		if (!cats) return; +	const LLUUID& my_outfits_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_MY_OUTFITS); +	if (my_outfits_id.isNull()) return; -		//My Outfits should at least contain saved initial outfit and one another outfit -		if (cats->size() < 2) -		{ -			llwarning("My Outfits category was not populated properly", 0); -			return; -		} +	LLInventoryModel::cat_array_t* cats; +	LLInventoryModel::item_array_t* items; +	gInventory.getDirectDescendentsOf(my_outfits_id, cats, items); +	if (!cats) return; -		llinfos << "Starting updating My Outfits with wearables ordering information" << llendl; +	//My Outfits should at least contain saved initial outfit and one another outfit +	if (cats->size() < 2) +	{ +		llwarning("My Outfits category was not populated properly", 0); +		return; +	} -		for (LLInventoryModel::cat_array_t::iterator outfit_iter = cats->begin(); -			outfit_iter != cats->end(); ++outfit_iter) -		{ -			const LLUUID& cat_id = (*outfit_iter)->getUUID(); -			if (cat_id.isNull()) continue; +	llinfos << "Starting updating My Outfits with wearables ordering information" << llendl; -			// saved initial outfit already contains wearables ordering information -			if (cat_id == LLAppearanceMgr::getInstance()->getBaseOutfitUUID()) continue; +	for (LLInventoryModel::cat_array_t::iterator outfit_iter = cats->begin(); +		 outfit_iter != cats->end(); ++outfit_iter) +	{ +		const LLUUID& cat_id = (*outfit_iter)->getUUID(); +		if (cat_id.isNull()) continue; -			LLAppearanceMgr::getInstance()->updateClothingOrderingInfo(cat_id); -		} +		// saved initial outfit already contains wearables ordering information +		if (cat_id == LLAppearanceMgr::getInstance()->getBaseOutfitUUID()) continue; -		llinfos << "Finished updating My Outfits with wearables ordering information" << llendl; +		LLAppearanceMgr::getInstance()->updateClothingOrderingInfo(cat_id);  	} +	llinfos << "Finished updating My Outfits with wearables ordering information" << llendl; +} +  LLInitialWearablesFetch::LLInitialWearablesFetch(const LLUUID& cof_id) :  	LLInventoryFetchDescendentsObserver(cof_id)  { diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index 49cda96ee2..652f199e28 100644..100755 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -196,7 +196,7 @@ public:  		LLEventTimer(5.0)  	{  		if (!mTrackingPhase.empty()) -	{ +		{  			selfStartPhase(mTrackingPhase);  		}  	} @@ -212,7 +212,7 @@ public:  			addItem(item->getUUID());  		}  	} -		 +  	// Request or re-request operation for specified item.  	void addItem(const LLUUID& item_id)  	{ @@ -222,13 +222,13 @@ public:  		{  			LL_DEBUGS("Avatar") << "item_id " << item_id << " requestOperation false, skipping" << llendl;  			return; -	} +		}  		mPendingRequests++;  		// On a re-request, this will reset the timer.  		mWaitTimes[item_id] = LLTimer();  		if (mRetryCounts.find(item_id) == mRetryCounts.end()) -	{ +		{  			mRetryCounts[item_id] = 0;  		}  		else @@ -242,7 +242,7 @@ public:  	void onOp(const LLUUID& src_id, const LLUUID& dst_id, LLTimer timestamp)  	{  		if (ll_frand() < gSavedSettings.getF32("InventoryDebugSimulateLateOpRate")) -	{ +		{  			llwarns << "Simulating late operation by punting handling to later" << llendl;  			doAfterInterval(boost::bind(&LLCallAfterInventoryBatchMgr::onOp,this,src_id,dst_id,timestamp),  							mRetryAfter); @@ -265,12 +265,12 @@ public:  			onCompletionOrFailure();  		}  	} -		 +  	void onCompletionOrFailure()  	{  		assert (!mCompletionOrFailureCalled);  		mCompletionOrFailureCalled = true; - +		  		// Will never call onCompletion() if any item has been flagged as  		// a failure - otherwise could wind up with corrupted  		// outfit, involuntary nudity, etc. @@ -323,7 +323,7 @@ public:  				// Use a copy of iterator because it may be erased/invalidated.  				std::map<LLUUID,LLTimer>::iterator curr_it = it;  				++it; - +				  				F32 time_waited = curr_it->second.getElapsedTimeF32();  				S32 retries = mRetryCounts[curr_it->first];  				if (time_waited > mRetryAfter) @@ -399,7 +399,7 @@ public:  	}  	virtual bool requestOperation(const LLUUID& item_id) -		{ +	{  		LLViewerInventoryItem *item = gInventory.getItem(item_id);  		llassert(item);  		LL_DEBUGS("Avatar") << "copying item " << item_id << llendl; @@ -839,71 +839,71 @@ bool LLWearableHoldingPattern::pollFetchCompletion()  }  void recovered_item_link_cb(const LLUUID& item_id, LLWearableType::EType type, LLViewerWearable *wearable, LLWearableHoldingPattern* holder) -	{ +{  	if (!holder->isMostRecent()) -		{ -			llwarns << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl; -			// runway skip here? -		} +	{ +		llwarns << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl; +		// runway skip here? +	}  	llinfos << "Recovered item link for type " << type << llendl;  	holder->eraseTypeToLink(type); -		// Add wearable to FoundData for actual wearing -		LLViewerInventoryItem *item = gInventory.getItem(item_id); -		LLViewerInventoryItem *linked_item = item ? item->getLinkedItem() : NULL; +	// Add wearable to FoundData for actual wearing +	LLViewerInventoryItem *item = gInventory.getItem(item_id); +	LLViewerInventoryItem *linked_item = item ? item->getLinkedItem() : NULL; -		if (linked_item) -		{ -			gInventory.addChangedMask(LLInventoryObserver::LABEL, linked_item->getUUID()); +	if (linked_item) +	{ +		gInventory.addChangedMask(LLInventoryObserver::LABEL, linked_item->getUUID()); -			if (item) -			{ -				LLFoundData found(linked_item->getUUID(), -								  linked_item->getAssetUUID(), -								  linked_item->getName(), -								  linked_item->getType(), -								  linked_item->isWearableType() ? linked_item->getWearableType() : LLWearableType::WT_INVALID, -								  true // is replacement -					); +		if (item) +		{ +			LLFoundData found(linked_item->getUUID(), +							  linked_item->getAssetUUID(), +							  linked_item->getName(), +							  linked_item->getType(), +							  linked_item->isWearableType() ? linked_item->getWearableType() : LLWearableType::WT_INVALID, +							  true // is replacement +				);  			found.mWearable = wearable;  			holder->getFoundList().push_front(found); -			} -			else -			{ -				llwarns << self_av_string() << "inventory item not found for recovered wearable" << llendl; -			}  		}  		else  		{ -			llwarns << self_av_string() << "inventory link not found for recovered wearable" << llendl; +			llwarns << self_av_string() << "inventory item not found for recovered wearable" << llendl;  		}  	} +	else +	{ +		llwarns << self_av_string() << "inventory link not found for recovered wearable" << llendl; +	} +}  void recovered_item_cb(const LLUUID& item_id, LLWearableType::EType type, LLViewerWearable *wearable, LLWearableHoldingPattern* holder) -	{ +{  	if (!holder->isMostRecent()) -		{ -			// runway skip here? -			llwarns << self_av_string() << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl; -		} +	{ +		// runway skip here? +		llwarns << self_av_string() << "skipping because LLWearableHolding pattern is invalid (superceded by later outfit request)" << llendl; +	}  	LL_DEBUGS("Avatar") << self_av_string() << "Recovered item for type " << type << LL_ENDL; -		LLViewerInventoryItem *itemp = gInventory.getItem(item_id); +	LLViewerInventoryItem *itemp = gInventory.getItem(item_id);  	wearable->setItemID(item_id);  	LLPointer<LLInventoryCallback> cb = new LLBoostFuncInventoryCallback(boost::bind(recovered_item_link_cb,_1,type,wearable,holder));  	holder->eraseTypeToRecover(type); -		llassert(itemp); -		if (itemp) -		{ -			link_inventory_item( gAgent.getID(), -					     item_id, -					     LLAppearanceMgr::instance().getCOF(), -					     itemp->getName(), -						 itemp->getDescription(), -					     LLAssetType::AT_LINK, -					     cb); -		} +	llassert(itemp); +	if (itemp) +	{ +		link_inventory_item( gAgent.getID(), +							 item_id, +							 LLAppearanceMgr::instance().getCOF(), +							 itemp->getName(), +							 itemp->getDescription(), +							 LLAssetType::AT_LINK, +							 cb);  	} +}  void LLWearableHoldingPattern::recoverMissingWearable(LLWearableType::EType type)  { @@ -1290,7 +1290,7 @@ bool LLAppearanceMgr::wearItemOnAvatar(const LLUUID& item_id_to_wear, bool do_up  	if (gInventory.isObjectDescendentOf(item_to_wear->getUUID(), gInventory.getLibraryRootFolderID()))  	{  		LLPointer<LLInventoryCallback> cb = new LLBoostFuncInventoryCallback(boost::bind(wear_on_avatar_cb,_1,replace)); -		copy_inventory_item(gAgent.getID(), item_to_wear->getPermissions().getOwner(), item_to_wear->getUUID(), LLUUID::null, std::string(),cb); +		copy_inventory_item(gAgent.getID(), item_to_wear->getPermissions().getOwner(), item_to_wear->getUUID(), LLUUID::null, std::string(), cb);  		return false;  	}   	else if (!gInventory.isObjectDescendentOf(item_to_wear->getUUID(), gInventory.getRootFolderID())) @@ -1680,8 +1680,8 @@ void LLAppearanceMgr::purgeCategory(const LLUUID& category, bool keep_outfit_lin  			}  			else  			{ -			gInventory.purgeObject(item->getUUID()); -		} +				gInventory.purgeObject(item->getUUID()); +			}  #else  			gInventory.purgeObject(item->getUUID());  		} @@ -2267,7 +2267,7 @@ void LLAppearanceMgr::wearInventoryCategoryOnAvatar( LLInventoryCategory* catego  	// Avoid unintentionally overwriting old wearables.  We have to do  	// this up front to avoid having to deal with the case of multiple  	// wearables being dirty. -	if(!category) return; +	if (!category) return;  	if ( !LLInventoryCallbackManager::is_instantiated() )  	{ @@ -2388,7 +2388,7 @@ void LLAppearanceMgr::addCOFItemLink(const LLUUID &item_id, bool do_update, LLPo  }  void modified_cof_cb(const LLUUID& inv_item) -{		 +{  	LLAppearanceMgr::instance().updateAppearanceFromCOF();  	// Start editing the item if previously requested. @@ -3237,7 +3237,7 @@ void LLAppearanceMgr::requestServerAppearanceUpdate(LLCurl::ResponderPtr respond  		llwarns << "No cap for UpdateAvatarAppearance." << llendl;  		return;  	} - +	  	LLSD body;  	S32 cof_version = getCOFVersion();  	if (gSavedSettings.getBOOL("DebugAvatarExperimentalServerAppearanceUpdate")) @@ -3253,7 +3253,7 @@ void LLAppearanceMgr::requestServerAppearanceUpdate(LLCurl::ResponderPtr respond  		}  	}  	LL_DEBUGS("Avatar") << "request url " << url << " my_cof_version " << cof_version << llendl; - +	  	//LLCurl::ResponderPtr responder_ptr;  	if (!responder_ptr.get())  	{ @@ -3347,33 +3347,33 @@ std::string LLAppearanceMgr::getAppearanceServiceURL() const  }  void show_created_outfit(LLUUID& folder_id, bool show_panel = true) +{ +	if (!LLApp::isRunning())  	{ -		if (!LLApp::isRunning()) -		{ -			llwarns << "called during shutdown, skipping" << llendl; -			return; -		} - -		LLSD key; -		 +		llwarns << "called during shutdown, skipping" << llendl; +		return; +	} +	 +	LLSD key; +	  	//EXT-7727. For new accounts inventory callback is created during login process  	// and may be processed after login process is finished  	if (show_panel) -		{ -			LLFloaterSidePanelContainer::showPanel("appearance", "panel_outfits_inventory", key); - -		} -		LLOutfitsList *outfits_list = -			dynamic_cast<LLOutfitsList*>(LLFloaterSidePanelContainer::getPanel("appearance", "outfitslist_tab")); -		if (outfits_list) -		{ +	{ +		LLFloaterSidePanelContainer::showPanel("appearance", "panel_outfits_inventory", key); +		 +	} +	LLOutfitsList *outfits_list = +		dynamic_cast<LLOutfitsList*>(LLFloaterSidePanelContainer::getPanel("appearance", "outfitslist_tab")); +	if (outfits_list) +	{  		outfits_list->setSelectedOutfitByUUID(folder_id); -		} - -		LLAppearanceMgr::getInstance()->updateIsDirty(); -		gAgentWearables.notifyLoadingFinished(); // New outfit is saved. -		LLAppearanceMgr::getInstance()->updatePanelOutfitName("");  	} +	 +	LLAppearanceMgr::getInstance()->updateIsDirty(); +	gAgentWearables.notifyLoadingFinished(); // New outfit is saved. +	LLAppearanceMgr::getInstance()->updatePanelOutfitName(""); +}  LLUUID LLAppearanceMgr::makeNewOutfitLinks(const std::string& new_folder_name, bool show_panel)  { @@ -3415,13 +3415,13 @@ void LLAppearanceMgr::removeItemsFromAvatar(const uuid_vec_t& ids_to_remove)  		llwarns << "called with empty list, nothing to do" << llendl;  	}  	for (uuid_vec_t::const_iterator it = ids_to_remove.begin(); it != ids_to_remove.end(); ++it) -			{ +	{  		const LLUUID& id_to_remove = *it;  		const LLUUID& linked_item_id = gInventory.getLinkedItemID(id_to_remove);  		removeCOFItemLinks(linked_item_id); -			} -	updateAppearanceFromCOF();  	} +	updateAppearanceFromCOF(); +}  void LLAppearanceMgr::removeItemFromAvatar(const LLUUID& id_to_remove)  { diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h index 46252afbde..46252afbde 100644..100755 --- a/indra/newview/llappearancemgr.h +++ b/indra/newview/llappearancemgr.h diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 3598e71feb..e0a4daf504 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -1780,6 +1780,8 @@ bool LLAppViewer::cleanup()  	llinfos << "Cleaning up Objects" << llendflush;  	LLViewerObject::cleanupVOClasses(); + +	LLAvatarAppearance::cleanupClass();  	LLAvatarAppearance::cleanupClass(); @@ -3582,6 +3584,12 @@ void LLAppViewer::requestQuit()  	// Try to send metrics back to the grid  	metricsSend(!gDisconnected); + +	// Try to send last batch of avatar rez metrics. +	if (!gDisconnected && isAgentAvatarValid()) +	{ +		gAgentAvatarp->updateAvatarRezMetrics(true); // force a last packet to be sent. +	}  	// Try to send last batch of avatar rez metrics.  	if (!gDisconnected && isAgentAvatarValid()) diff --git a/indra/newview/lleventpoll.cpp b/indra/newview/lleventpoll.cpp index c1630318e8..e0f7223a8c 100644 --- a/indra/newview/lleventpoll.cpp +++ b/indra/newview/lleventpoll.cpp @@ -213,7 +213,7 @@ namespace  		{  			llwarns << "LLEventPollResponder error <" << mCount   					<< "> [status:" << status << "]: " << content -					<<	(mDone ? " -- done"	: "") << llendl; +					<< (mDone ? " -- done" : "") << llendl;  			stop();  			// At this point we have given up and the viewer will not receive HTTP messages from the simulator. diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index 77dd1fe607..ef8c4ff543 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -594,8 +594,8 @@ void LLFace::renderSelected(LLViewerTexture *imagep, const LLColor4& color)  /* removed in lieu of raycast uv detection  void LLFace::renderSelectedUV()  { -	LLViewerTexture* red_blue_imagep = LLViewerTextureManager::getFetchedTextureFromFile("uv_test1.j2c", TRUE, LLViewerTexture::BOOST_UI); -	LLViewerTexture* green_imagep = LLViewerTextureManager::getFetchedTextureFromFile("uv_test2.tga", TRUE, LLViewerTexture::BOOST_UI); +	LLViewerTexture* red_blue_imagep = LLViewerTextureManager::getFetchedTextureFromFile("uv_test1.j2c", TRUE, LLGLTexture::BOOST_UI); +	LLViewerTexture* green_imagep = LLViewerTextureManager::getFetchedTextureFromFile("uv_test2.tga", TRUE, LLGLTexture::BOOST_UI);  	LLGLSUVSelect object_select; diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp index b40789db9c..58817485fb 100644 --- a/indra/newview/llfloaterimcontainer.cpp +++ b/indra/newview/llfloaterimcontainer.cpp @@ -2021,7 +2021,7 @@ void LLFloaterIMContainer::closeFloater(bool app_quitting/* = false*/)  	{  		LLMultiFloater::setMinimized(FALSE);  	} - +	  	LLFloater::closeFloater(app_quitting);  } diff --git a/indra/newview/llfloaterimnearbychat.cpp b/indra/newview/llfloaterimnearbychat.cpp index 56b0c15cb9..49f36a2f32 100644 --- a/indra/newview/llfloaterimnearbychat.cpp +++ b/indra/newview/llfloaterimnearbychat.cpp @@ -328,7 +328,7 @@ void LLFloaterIMNearbyChat::onChatFontChange(LLFontGL* fontp)  void LLFloaterIMNearbyChat::show()  {  		openFloater(getKey()); -	} +}  bool LLFloaterIMNearbyChat::isChatVisible() const  { diff --git a/indra/newview/llfriendcard.cpp b/indra/newview/llfriendcard.cpp index 16ed3f990c..5c6ce9d311 100644 --- a/indra/newview/llfriendcard.cpp +++ b/indra/newview/llfriendcard.cpp @@ -521,7 +521,7 @@ public:  	void fire(const LLUUID& inv_item_id)  	{  		LLViewerInventoryItem* item = gInventory.getItem(inv_item_id); - +		  		if (item)  			LLFriendCardsManager::instance().extractAvatarID(item->getCreatorUUID());  	} diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index 3b72ad3cd9..2c20409381 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -228,7 +228,7 @@ void on_new_message(const LLSD& msg)      // 0. nothing - exit      if (("none" == user_preferences ||      		ON_TOP_AND_ITEM_IS_SELECTED == conversations_floater_status) -    	&& session_floater->isMessagePaneExpanded()) +    	    && session_floater->isMessagePaneExpanded())      {      	return;      } @@ -1561,7 +1561,7 @@ public:  	}  	void errorWithContent(U32 statusNum, const std::string& reason, const LLSD& content) -	{		 +	{  		llwarns << "LLViewerChatterBoxInvitationAcceptResponder error [status:"  				<< statusNum << "]: " << content << llendl;  		//throw something back to the viewer here? diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index 935fe2b4d0..935fe2b4d0 100644..100755 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp diff --git a/indra/newview/llinventorymodelbackgroundfetch.cpp b/indra/newview/llinventorymodelbackgroundfetch.cpp index d88e0c3192..f2b39e7186 100644 --- a/indra/newview/llinventorymodelbackgroundfetch.cpp +++ b/indra/newview/llinventorymodelbackgroundfetch.cpp @@ -686,23 +686,23 @@ void LLInventoryModelBackgroundFetch::bulkFetch()  	{  		if (folder_count)  		{ -			std::string url = region->getCapability("FetchInventoryDescendents2");    +			std::string url = region->getCapability("FetchInventoryDescendents2");   			  			if ( !url.empty() )  			{ -			mFetchCount++; -			if (folder_request_body["folders"].size()) -			{ -				LLInventoryModelFetchDescendentsResponder *fetcher = new LLInventoryModelFetchDescendentsResponder(folder_request_body, recursive_cats); -				LLHTTPClient::post(url, folder_request_body, fetcher, 300.0); -			} -			if (folder_request_body_lib["folders"].size()) -			{ -				std::string url_lib = gAgent.getRegion()->getCapability("FetchLibDescendents2"); +				mFetchCount++; +				if (folder_request_body["folders"].size()) +				{ +					LLInventoryModelFetchDescendentsResponder *fetcher = new LLInventoryModelFetchDescendentsResponder(folder_request_body, recursive_cats); +					LLHTTPClient::post(url, folder_request_body, fetcher, 300.0); +				} +				if (folder_request_body_lib["folders"].size()) +				{ +					std::string url_lib = gAgent.getRegion()->getCapability("FetchLibDescendents2"); -				LLInventoryModelFetchDescendentsResponder *fetcher = new LLInventoryModelFetchDescendentsResponder(folder_request_body_lib, recursive_cats); -				LLHTTPClient::post(url_lib, folder_request_body_lib, fetcher, 300.0); -			} -		} +					LLInventoryModelFetchDescendentsResponder *fetcher = new LLInventoryModelFetchDescendentsResponder(folder_request_body_lib, recursive_cats); +					LLHTTPClient::post(url_lib, folder_request_body_lib, fetcher, 300.0); +				} +			}					  		}  		if (item_count)  		{ diff --git a/indra/newview/llpaneleditwearable.h b/indra/newview/llpaneleditwearable.h index 81acc31863..6533d55f2f 100644 --- a/indra/newview/llpaneleditwearable.h +++ b/indra/newview/llpaneleditwearable.h @@ -95,7 +95,7 @@ private:  	void				toggleTypeSpecificControls(LLWearableType::EType type);  	void				updateTypeSpecificControls(LLWearableType::EType type); -	//alpha mask checkboxes +	// alpha mask checkboxes  	void configureAlphaCheckbox(LLAvatarAppearanceDefines::ETextureIndex te, const std::string& name);  	void onInvisibilityCommit(LLCheckBoxCtrl* checkbox_ctrl, LLAvatarAppearanceDefines::ETextureIndex te);  	void updateAlphaCheckboxes(); @@ -155,7 +155,7 @@ private:  	LLPanel *mPanelEyes;  	LLPanel *mPanelHair; -	//clothes +	// clothes  	LLPanel *mPanelShirt;  	LLPanel *mPanelPants;  	LLPanel *mPanelShoes; diff --git a/indra/newview/llphysicsmotion.cpp b/indra/newview/llphysicsmotion.cpp index 18b85cc9c3..3ee0746412 100644 --- a/indra/newview/llphysicsmotion.cpp +++ b/indra/newview/llphysicsmotion.cpp @@ -428,13 +428,13 @@ F32 LLPhysicsMotion::toLocal(const LLVector3 &world)  F32 LLPhysicsMotion::calculateVelocity_local()  {  	const F32 world_to_model_scale = 100.0f; -        LLJoint *joint = mJointState->getJoint(); -        const LLVector3 position_world = joint->getWorldPosition(); -        const LLVector3 last_position_world = mPosition_world; +	LLJoint *joint = mJointState->getJoint(); +	const LLVector3 position_world = joint->getWorldPosition(); +	const LLVector3 last_position_world = mPosition_world;  	const LLVector3 positionchange_world = (position_world-last_position_world) * world_to_model_scale; -        const LLVector3 velocity_world = positionchange_world; -        const F32 velocity_local = toLocal(velocity_world); -        return velocity_local; +	const LLVector3 velocity_world = positionchange_world; +	const F32 velocity_local = toLocal(velocity_world); +	return velocity_local;  }  F32 LLPhysicsMotion::calculateAcceleration_local(const F32 velocity_local) diff --git a/indra/newview/llsaveoutfitcombobtn.cpp b/indra/newview/llsaveoutfitcombobtn.cpp index cbad85cfd3..32295cd96f 100644 --- a/indra/newview/llsaveoutfitcombobtn.cpp +++ b/indra/newview/llsaveoutfitcombobtn.cpp @@ -76,8 +76,8 @@ void LLSaveOutfitComboBtn::saveOutfit(bool as_new)  	if (panel_outfits_inventory)  	{  		panel_outfits_inventory->onSave(); -	} - +	} 	 +      	//*TODO how to get to know when base outfit is updated or new outfit is created?  } diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index df413ab849..74fa5a87bb 100644 --- a/indra/newview/llsidepanelappearance.cpp +++ b/indra/newview/llsidepanelappearance.cpp @@ -231,7 +231,7 @@ void LLSidepanelAppearance::updateToVisibility(const LLSD &new_visibility)  		{  			gAgentCamera.changeCameraToDefault();  			gAgentCamera.resetView(); -		} +		}	  	}  } diff --git a/indra/newview/llsidepanelappearance.h b/indra/newview/llsidepanelappearance.h index b0a6b9cf91..762f557a80 100644 --- a/indra/newview/llsidepanelappearance.h +++ b/indra/newview/llsidepanelappearance.h @@ -47,7 +47,7 @@ public:  	virtual ~LLSidepanelAppearance();  	/*virtual*/ BOOL postBuild(); -	/*virtual*/ void onOpen(const LLSD& key); +	/*virtual*/ void onOpen(const LLSD& key);	  	void refreshCurrentOutfitName(const std::string& name = ""); diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index 6173e76a35..be5fde9e2b 100755 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -1896,9 +1896,9 @@ void LLTextureFetchWorker::onCompleted(LLCore::HttpHandle handle, LLCore::HttpRe  	LLCore::HttpStatus status(response->getStatus());  	LL_DEBUGS("Texture") << "HTTP COMPLETE: " << mID -			 << " status: " << status.toHex() -			 << " '" << status.toString() << "'" -			 << llendl; +						 << " status: " << status.toHex() +						 << " '" << status.toString() << "'" +						 << llendl;  //	unsigned int offset(0), length(0), full_length(0);  //	response->getRange(&offset, &length, &full_length);  // 	llwarns << "HTTP COMPLETE: " << mID << " handle: " << handle diff --git a/indra/newview/llviewerinventory.h b/indra/newview/llviewerinventory.h index ab19a12014..61b1b8d846 100644 --- a/indra/newview/llviewerinventory.h +++ b/indra/newview/llviewerinventory.h @@ -256,7 +256,7 @@ class AddFavoriteLandmarkCallback : public LLInventoryCallback  public:  	AddFavoriteLandmarkCallback() : mTargetLandmarkId(LLUUID::null) {}  	void setTargetLandmarkId(const LLUUID& target_uuid) { mTargetLandmarkId = target_uuid; } -	 +  private:  	void fire(const LLUUID& inv_item); @@ -283,13 +283,13 @@ public:  	// virtual  	void fire(const LLUUID& item_id) -{ +	{  		mFireFunc(item_id);  	}  	// virtual  	~LLBoostFuncInventoryCallback() -{ +	{  		mDestroyFunc();  	} diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 5e2f05f468..5a27bdca90 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -6444,7 +6444,7 @@ class LLAttachmentDetachFromPoint : public view_listener_t  				LLViewerObject *attached_object = (*iter);  				ids_to_remove.push_back(attached_object->getAttachmentItemID());  			} -			} +		}  		if (!ids_to_remove.empty())  		{  			LLAppearanceMgr::instance().removeItemsFromAvatar(ids_to_remove); diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index c020ee36d3..96e701a6cb 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -2700,25 +2700,25 @@ void LLViewerObject::processTaskInvFile(void** user_data, S32 error_code, LLExtS  		if (object->loadTaskInvFile(ft->mFilename))  		{ -		LLInventoryObject::object_list_t::iterator it = object->mInventory->begin(); -		LLInventoryObject::object_list_t::iterator end = object->mInventory->end(); -		std::list<LLUUID>& pending_lst = object->mPendingInventoryItemsIDs; +			LLInventoryObject::object_list_t::iterator it = object->mInventory->begin(); +			LLInventoryObject::object_list_t::iterator end = object->mInventory->end(); +			std::list<LLUUID>& pending_lst = object->mPendingInventoryItemsIDs; -		for (; it != end && pending_lst.size(); ++it) -		{ -			LLViewerInventoryItem* item = dynamic_cast<LLViewerInventoryItem*>(it->get()); -			if(item && item->getType() != LLAssetType::AT_CATEGORY) +			for (; it != end && pending_lst.size(); ++it)  			{ -				std::list<LLUUID>::iterator id_it = std::find(pending_lst.begin(), pending_lst.begin(), item->getAssetUUID()); -				if (id_it != pending_lst.end()) +				LLViewerInventoryItem* item = dynamic_cast<LLViewerInventoryItem*>(it->get()); +				if(item && item->getType() != LLAssetType::AT_CATEGORY)  				{ -					pending_lst.erase(id_it); +					std::list<LLUUID>::iterator id_it = std::find(pending_lst.begin(), pending_lst.begin(), item->getAssetUUID()); +					if (id_it != pending_lst.end()) +					{ +						pending_lst.erase(id_it); +					}  				}  			}  		} -	} -	else -	{ +		else +		{  			// MAINT-2597 - crash when trying to edit a no-mod object  			// Somehow get an contents inventory response, but with an invalid stream (possibly 0 size?)  			// Stated repro was specific to no-mod objects so failing without user interaction should be safe. diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index 8422708add..755462b0c2 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -143,7 +143,7 @@ public:  	CapabilityMap mCapabilities;  	CapabilityMap mSecondCapabilitiesTracker;  -	 +  	LLEventPoll* mEventPoll;  	S32 mSeedCapMaxAttempts; @@ -220,7 +220,7 @@ public:  		}      } -    void result(const LLSD& content) +   void result(const LLSD& content)      {  		LLViewerRegion *regionp = LLWorld::getInstance()->getRegionFromHandle(mRegionHandle);  		if(!regionp) //region was removed @@ -1587,7 +1587,7 @@ void LLViewerRegionImpl::buildCapabilityNames(LLSD& capabilityNames)  	capabilityNames.append("EventQueueGet");  	if (gSavedSettings.getBOOL("UseHTTPInventory")) -	{ +	{	  		capabilityNames.append("FetchLib2");  		capabilityNames.append("FetchLibDescendents2");  		capabilityNames.append("FetchInventory2"); @@ -1606,7 +1606,7 @@ void LLViewerRegionImpl::buildCapabilityNames(LLSD& capabilityNames)  	capabilityNames.append("LandResources");  	capabilityNames.append("MapLayer");  	capabilityNames.append("MapLayerGod"); -	capabilityNames.append("MeshUploadFlag"); +	capabilityNames.append("MeshUploadFlag");	  	capabilityNames.append("NavMeshGenerationStatus");  	capabilityNames.append("NewFileAgentInventory");  	capabilityNames.append("ObjectMedia"); @@ -1647,7 +1647,7 @@ void LLViewerRegionImpl::buildCapabilityNames(LLSD& capabilityNames)  	capabilityNames.append("ViewerMetrics");  	capabilityNames.append("ViewerStartAuction");  	capabilityNames.append("ViewerStats"); -	 +  	// Please add new capabilities alphabetically to reduce  	// merge conflicts.  } @@ -1655,8 +1655,8 @@ void LLViewerRegionImpl::buildCapabilityNames(LLSD& capabilityNames)  void LLViewerRegion::setSeedCapability(const std::string& url)  {  	if (getCapability("Seed") == url) -    { -		// llwarns << "Ignoring duplicate seed capability" << llendl; +    {	 +		//llwarns << "Ignoring duplicate seed capability" << llendl;  		//Instead of just returning we build up a second set of seed caps and compare them   		//to the "original" seed cap received and determine why there is problem!  		LLSD capabilityNames = LLSD::emptyArray(); diff --git a/indra/newview/llviewerregion.h b/indra/newview/llviewerregion.h index 56cd0c9ea1..b5fe4677b7 100644 --- a/indra/newview/llviewerregion.h +++ b/indra/newview/llviewerregion.h @@ -342,7 +342,7 @@ public:  	void getNeighboringRegionsStatus( std::vector<S32>& regions );  	const LLViewerRegionImpl * getRegionImpl() const { return mImpl; }  	LLViewerRegionImpl * getRegionImplNC() { return mImpl; } -	 +  public:  	struct CompareDistance  	{ diff --git a/indra/newview/llviewershadermgr.h b/indra/newview/llviewershadermgr.h index a3c2adae20..5ef5d2234c 100644 --- a/indra/newview/llviewershadermgr.h +++ b/indra/newview/llviewershadermgr.h @@ -230,7 +230,6 @@ extern LLGLSLShader			gSplatTextureRectProgram;  extern LLGLSLShader			gGlowCombineFXAAProgram;  extern LLGLSLShader			gDebugProgram;  extern LLGLSLShader			gClipProgram; -extern LLGLSLShader			gAlphaMaskProgram;  //output tex0[tc0] + tex1[tc1]  extern LLGLSLShader			gTwoTextureAddProgram; diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index 037e53484d..8c1c203bd1 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -275,7 +275,7 @@ LLViewerFetchedTexture* LLViewerTextureManager::getFetchedTexture(  }  LLViewerFetchedTexture* LLViewerTextureManager::getFetchedTextureFromFile( -	                                               const std::string& filename,												    +	                                               const std::string& filename,  												   FTType f_type,  												   BOOL usemipmaps,  												   LLViewerTexture::EBoostLevel boost_priority, @@ -288,7 +288,7 @@ LLViewerFetchedTexture* LLViewerTextureManager::getFetchedTextureFromFile(  }  //static  -LLViewerFetchedTexture* LLViewerTextureManager::getFetchedTextureFromUrl(const std::string& url,									  +LLViewerFetchedTexture* LLViewerTextureManager::getFetchedTextureFromUrl(const std::string& url,  									 FTType f_type,  									 BOOL usemipmaps,  									 LLViewerTexture::EBoostLevel boost_priority, @@ -395,7 +395,7 @@ void LLViewerTextureManager::init()  	LLViewerTexture::sCheckerBoardImagep = LLViewerTextureManager::getLocalTexture(image_raw.get(), TRUE);  	LLViewerTexture::initClass() ; - +	  	// Create a texture manager bridge.  	gTextureManagerBridgep = new LLViewerTextureManagerBridge; @@ -1097,6 +1097,7 @@ void LLViewerFetchedTexture::loadFromFastCache()  		{   			//discard all oversized textures.  			destroyRawImage(); +			llwarns << "oversized, setting as missing" << llendl;  			setIsMissingAsset();  			mRawDiscardLevel = INVALID_DISCARD_LEVEL ;  		} @@ -1206,7 +1207,7 @@ void LLViewerFetchedTexture::destroyTexture()  	{  		return ;  	} -	 +  	//LL_DEBUGS("Avatar") << mID << llendl;  	destroyGLTexture() ;  	mFullyLoaded = FALSE ; @@ -1368,6 +1369,7 @@ BOOL LLViewerFetchedTexture::createTexture(S32 usename/*= 0*/)  		// An inappropriately-sized image was uploaded (through a non standard client)  		// We treat these images as missing assets which causes them to  		// be renderd as 'missing image' and to stop requesting data +		llwarns << "!size_ok, setting as missing" << llendl;  		setIsMissingAsset();  		destroyRawImage();  		return FALSE; diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h index c96f89017f..d6805a7240 100644 --- a/indra/newview/llviewertexture.h +++ b/indra/newview/llviewertexture.h @@ -139,8 +139,6 @@ public:  	LLFrameTimer* getLastReferencedTimer() {return &mLastReferencedTimer ;} -	S32 getFullWidth() const { return mFullWidth; } -	S32 getFullHeight() const { return mFullHeight; }	  	/*virtual*/ void setKnownDrawSize(S32 width, S32 height);  	virtual void addFace(U32 channel, LLFace* facep) ; @@ -401,7 +399,7 @@ protected:  	S32 getCurrentDiscardLevelForFetching() ;  private: -	void init(bool firstinit) ; +	void init(bool firstinit) ;	  	void cleanup() ;  	void saveRawImage() ; @@ -443,7 +441,7 @@ protected:  	S8  mHasFetcher;				// We've made a fecth request  	S8  mIsFetching;				// Fetch request is active  	bool mCanUseHTTP ;              //This texture can be fetched through http if true. -	 +  	FTType mFTType; // What category of image is this - map tile, server bake, etc?  	mutable S8 mIsMissingAsset;		// True if we know that there is no image asset with this image id in the database.		 diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp index d9f3548a29..48134869c9 100644 --- a/indra/newview/llviewertexturelist.cpp +++ b/indra/newview/llviewertexturelist.cpp @@ -327,7 +327,7 @@ void LLViewerTextureList::restoreGL()  /////////////////////////////////////////////////////////////////////////////// -LLViewerFetchedTexture* LLViewerTextureList::getImageFromFile(const std::string& filename,												    +LLViewerFetchedTexture* LLViewerTextureList::getImageFromFile(const std::string& filename,  												   FTType f_type,  												   BOOL usemipmaps,  												   LLViewerTexture::EBoostLevel boost_priority, @@ -379,7 +379,7 @@ LLViewerFetchedTexture* LLViewerTextureList::getImageFromUrl(const std::string&  	}  	LLPointer<LLViewerFetchedTexture> imagep = findImage(new_id); -	 +  	if (!imagep.isNull())  	{  		LLViewerFetchedTexture *texture = imagep.get(); @@ -435,7 +435,7 @@ LLViewerFetchedTexture* LLViewerTextureList::getImageFromUrl(const std::string&  } -LLViewerFetchedTexture* LLViewerTextureList::getImage(const LLUUID &image_id,											        +LLViewerFetchedTexture* LLViewerTextureList::getImage(const LLUUID &image_id,  												   FTType f_type,  												   BOOL usemipmaps,  												   LLViewerTexture::EBoostLevel boost_priority, @@ -478,7 +478,7 @@ LLViewerFetchedTexture* LLViewerTextureList::getImage(const LLUUID &image_id,  		{  			llwarns << "FTType mismatch: requested " << f_type << " image has " << imagep->getFTType() << llendl;  		} -	 +		  	}  	if (imagep.isNull())  	{ @@ -491,7 +491,7 @@ LLViewerFetchedTexture* LLViewerTextureList::getImage(const LLUUID &image_id,  }  //when this function is called, there is no such texture in the gTextureList with image_id. -LLViewerFetchedTexture* LLViewerTextureList::createImage(const LLUUID &image_id,											        +LLViewerFetchedTexture* LLViewerTextureList::createImage(const LLUUID &image_id,  												   FTType f_type,  												   BOOL usemipmaps,  												   LLViewerTexture::EBoostLevel boost_priority, diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 55dd574f25..d19cdd9e4c 100644..100755 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -24,12 +24,6 @@   * $/LicenseInfo$   */ -#if LL_MSVC -// disable warning about boost::lexical_cast returning uninitialized data -// when it fails to parse the string -#pragma warning (disable:4701) -#endif -  #include "llviewerprecompiledheaders.h"  #include "llvoavatar.h" @@ -113,12 +107,6 @@ extern F32 SPEED_ADJUST_MAX_SEC;  extern F32 ANIM_SPEED_MAX;  extern F32 ANIM_SPEED_MIN; -#if LL_MSVC -// disable boost::lexical_cast warning -#pragma warning (disable:4702) -#endif - -#include <boost/lexical_cast.hpp>  // #define OUTPUT_BREAST_DATA @@ -199,8 +187,6 @@ const F32 NAMETAG_UPDATE_THRESHOLD = 0.3f;  const F32 NAMETAG_VERTICAL_SCREEN_OFFSET = 25.f;  const F32 NAMETAG_VERT_OFFSET_WEIGHT = 0.17f; -const LLColor4 DUMMY_COLOR = LLColor4(0.5,0.5,0.5,1.0); -  enum ERenderName  {  	RENDER_NAME_NEVER, @@ -276,6 +262,8 @@ struct LLVOAvatarChildJoint : public LLInitParam::ChoiceBlock<LLVOAvatarChildJoi  	{}  }; +	 +  struct LLVOAvatarBoneInfo : public LLInitParam::Block<LLVOAvatarBoneInfo, LLVOAvatarCollisionVolumeInfo>  {  	LLVOAvatarBoneInfo()  @@ -305,6 +293,8 @@ struct LLVOAvatarSkeletonInfo : public LLInitParam::Block<LLVOAvatarSkeletonInfo  	Mandatory<LLVOAvatarChildJoint>	skeleton_root;  }; + +  //-----------------------------------------------------------------------------  // class LLBodyNoiseMotion  //----------------------------------------------------------------------------- @@ -812,17 +802,17 @@ void LLVOAvatar::debugAvatarRezTime(std::string notification_name, std::string c  //------------------------------------------------------------------------  LLVOAvatar::~LLVOAvatar()  { -		if (!mFullyLoaded) -		{ +	if (!mFullyLoaded) +	{  		debugAvatarRezTime("AvatarRezLeftCloudNotification","left after ruth seconds as cloud"); -		} -		else -		{ +	} +	else +	{  		debugAvatarRezTime("AvatarRezLeftNotification","left sometime after declouding"); -		} +	}  	logPendingPhases(); - +	  	lldebugs << "LLVOAvatar Destructor (0x" << this << ") id:" << mID << llendl;  	std::for_each(mAttachmentPoints.begin(), mAttachmentPoints.end(), DeletePairedPointer()); @@ -1206,7 +1196,7 @@ void LLVOAvatar::initInstance(void)  		registerMotion( ANIM_AGENT_TARGET,					LLTargetingMotion::create );  		registerMotion( ANIM_AGENT_WALK_ADJUST,				LLWalkAdjustMotion::create );  	} -	 +  	LLAvatarAppearance::initInstance();  	// preload specific motions here @@ -1552,7 +1542,7 @@ LLViewerObject* LLVOAvatar::lineSegmentIntersectRiggedAttachments(const LLVector  	return hit;  } - +	  LLVOAvatar* LLVOAvatar::asAvatar()  {  	return this; @@ -1887,22 +1877,22 @@ LLViewerFetchedTexture *LLVOAvatar::getBakedTextureImage(const U8 te, const LLUU  	}  	if (!result) -{ +	{  		const std::string url = getImageURL(te,uuid);  		if (!url.empty()) -	{ +		{  			LL_DEBUGS("Avatar") << avString() << "from URL " << url << llendl;  			result = LLViewerTextureManager::getFetchedTextureFromUrl(  				url, FTT_SERVER_BAKE, TRUE, LLGLTexture::BOOST_NONE, LLViewerTexture::LOD_TEXTURE, 0, 0, uuid); -	} -	else -	{ +		} +		else +		{  			LL_DEBUGS("Avatar") << avString() << "from host " << uuid << llendl;  			LLHost host = getObjectHost();  			result = LLViewerTextureManager::getFetchedTexture(  				uuid, FTT_HOST_BAKE, TRUE, LLGLTexture::BOOST_NONE, LLViewerTexture::LOD_TEXTURE, 0, 0, host); +		}  	} -}  	return result;  } @@ -1918,6 +1908,8 @@ S32 LLVOAvatar::setTETexture(const U8 te, const LLUUID& uuid)  	LLViewerFetchedTexture *image = getBakedTextureImage(te,uuid);  	llassert(image);  	return setTETextureCore(te, image); +	llassert(image); +	return setTETextureCore(te, image);  }  static LLFastTimer::DeclareTimer FTM_AVATAR_UPDATE("Avatar Update"); @@ -3989,7 +3981,7 @@ U32 LLVOAvatar::renderTransparent(BOOL first_pass)  		{  			LLViewerJoint* hair_mesh = getViewerJoint(MESH_ID_HAIR);  			if (hair_mesh) -		{ +			{  				num_indices += hair_mesh->render(mAdjustedPixelArea, first_pass, mIsDummy);  			}  			first_pass = FALSE; @@ -5116,9 +5108,9 @@ BOOL LLVOAvatar::loadSkeletonNode ()  {  	if (!LLAvatarAppearance::loadSkeletonNode())  	{ -				return FALSE; -			} -	 +		return FALSE; +	} +  	// ATTACHMENTS  	{  		LLAvatarXmlInfo::attachment_info_list_t::iterator iter; @@ -5835,7 +5827,7 @@ BOOL LLVOAvatar::isWearingWearableType(LLWearableType::EType type) const  	{  		const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = tex_iter->second;  		if (texture_dict->mWearableType == type) -	{ +		{  			// Thus, you must check to see if the corresponding baked texture is defined.  			// NOTE: this is a poor substitute if you actually want to know about individual pieces of clothing  			// this works for detecting a skirt (most important), but is ineffective at any piece of clothing that @@ -5844,7 +5836,7 @@ BOOL LLVOAvatar::isWearingWearableType(LLWearableType::EType type) const  			{  				const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex;  				return isTextureDefined(LLAvatarAppearanceDictionary::getInstance()->getBakedTexture(baked_index)->mTextureIndex); -	} +			}  			return FALSE;  		}  	} @@ -5853,6 +5845,8 @@ BOOL LLVOAvatar::isWearingWearableType(LLWearableType::EType type) const + +  // virtual  void LLVOAvatar::invalidateComposite( LLTexLayerSet* layerset, BOOL upload_result )  { @@ -5887,7 +5881,7 @@ void LLVOAvatar::onGlobalColorChanged(const LLTexGlobalColor* global_color, BOOL  			{  				LLAvatarJointMesh* mesh = (*iter);  				if (mesh) -			{ +				{  					mesh->setColor( color );  				}  			} @@ -5955,9 +5949,9 @@ void LLVOAvatar::updateRezzedStatusTimers()  		{  			// load level has decreased. start phase timers for higher load levels.  			for (S32 i = rez_status+1; i <= mLastRezzedStatus; i++) -		{ +			{  				startPhase("load_" + LLVOAvatar::rezStatusToString(i)); -		} +			}  		}  		else if (rez_status > mLastRezzedStatus)  		{ @@ -5966,16 +5960,16 @@ void LLVOAvatar::updateRezzedStatusTimers()  			{  				stopPhase("load_" + LLVOAvatar::rezStatusToString(i));  				stopPhase("first_load_" + LLVOAvatar::rezStatusToString(i), false); -		} +			}  			if (rez_status == 3) -		{ +			{  				// "fully loaded", mark any pending appearance change complete.  				selfStopPhase("update_appearance_from_cof");  				selfStopPhase("wear_inventory_category", false);  				selfStopPhase("process_initial_wearables_update", false);  			}  		} -		 +  		mLastRezzedStatus = rez_status;  	}  } @@ -6002,7 +5996,7 @@ void LLVOAvatar::startPhase(const std::string& phase_name)  }  void LLVOAvatar::stopPhase(const std::string& phase_name, bool err_check) -		{ +{  	F32 elapsed;  	bool completed;  	if (getPhases().getPhaseValues(phase_name, elapsed, completed)) @@ -6053,11 +6047,11 @@ void LLVOAvatar::logPendingPhases()  			}  		}  	} -		} +}  //static  void LLVOAvatar::logPendingPhasesAllAvatars() -		{ +{  	for (std::vector<LLCharacter*>::iterator iter = LLCharacter::sInstances.begin();  		 iter != LLCharacter::sInstances.end(); ++iter)  	{ @@ -6068,14 +6062,14 @@ void LLVOAvatar::logPendingPhasesAllAvatars()  		}  		inst->logPendingPhases();  	} -		} +}  void LLVOAvatar::logMetricsTimerRecord(const std::string& phase_name, F32 elapsed, bool completed)  {  	if (!isAgentAvatarValid()) -		{ +	{  		return; -		} +	}  	LLSD record;  	record["timer_name"] = phase_name; @@ -6084,15 +6078,15 @@ void LLVOAvatar::logMetricsTimerRecord(const std::string& phase_name, F32 elapse  	record["completed"] = completed;  	U32 grid_x(0), grid_y(0);  	if (getRegion()) -		{ +	{  		record["central_bake_version"] = LLSD::Integer(getRegion()->getCentralBakeVersion());  		grid_from_region_handle(getRegion()->getHandle(), &grid_x, &grid_y); -		} +	}  	record["grid_x"] = LLSD::Integer(grid_x);  	record["grid_y"] = LLSD::Integer(grid_y);  	record["is_using_server_bakes"] = ((bool) isUsingServerBakes());  	record["is_self"] = isSelf(); -		 +	  	if (isAgentAvatarValid())  	{  		gAgentAvatarp->addMetricsTimerRecord(record); @@ -6277,7 +6271,7 @@ void LLVOAvatar::updateMeshTextures()  		{  			use_lkg_baked_layer[i] = (!is_layer_baked[i]   									  && mBakedTextureDatas[i].mLastTextureID != IMG_DEFAULT_AVATAR); -	} +		}  		std::string last_id_string;  		if (mBakedTextureDatas[i].mLastTextureID == IMG_DEFAULT_AVATAR) @@ -6312,18 +6306,18 @@ void LLVOAvatar::updateMeshTextures()  			mBakedTextureDatas[i].mIsUsed = TRUE;  			debugColorizeSubMeshes(i,LLColor4::red); -	 +  			avatar_joint_mesh_list_t::iterator iter = mBakedTextureDatas[i].mJointMeshes.begin();  			avatar_joint_mesh_list_t::iterator end  = mBakedTextureDatas[i].mJointMeshes.end();  			for (; iter != end; ++iter)  			{  				LLAvatarJointMesh* mesh = (*iter);  				if (mesh) -		{ +				{  					mesh->setTexture( baked_img ); +				}  			}  		} -		}  		else if (!isUsingLocalAppearance() && is_layer_baked[i])  		{  			LLViewerFetchedTexture* baked_img = @@ -6365,7 +6359,7 @@ void LLVOAvatar::updateMeshTextures()  				if (mesh)  				{  					mesh->setLayerSet( layerset ); -			} +				}  			}  		}  		else @@ -6387,7 +6381,7 @@ void LLVOAvatar::updateMeshTextures()  		{  			LLAvatarJointMesh* mesh = (*iter);  			if (mesh) -		{ +			{  				mesh->setColor( color );  				mesh->setTexture( hair_img );  			} @@ -6475,15 +6469,16 @@ void LLVOAvatar::applyMorphMask(U8* tex_data, S32 width, S32 height, S32 num_com  	for (morph_list_t::const_iterator iter = mBakedTextureDatas[index].mMaskedMorphs.begin();  		 iter != mBakedTextureDatas[index].mMaskedMorphs.end(); ++iter) -{ +	{  		const LLMaskedMorph* maskedMorph = (*iter);  		LLPolyMorphTarget* morph_target = dynamic_cast<LLPolyMorphTarget*>(maskedMorph->mMorphTarget);  		if (morph_target) -	{ +		{  			morph_target->applyMask(tex_data, width, height, num_components, maskedMorph->mInvert); +		} +	}  } -} -} +  // returns TRUE if morph masks are present and not valid for a given baked texture, FALSE otherwise @@ -6763,12 +6758,12 @@ void dump_visual_param(apr_file_t* file, LLVisualParam* viewer_param, F32 value)  					LLWearableType::getTypeName(LLWearableType::EType(wtype)).c_str()  //					param_location_name(vparam->getParamLocation()).c_str()  		); -	} +}  void LLVOAvatar::dumpAppearanceMsgParams( const std::string& dump_prefix,  	const LLAppearanceMessageContents& contents) -	{ +{  	std::string outfilename = get_sequential_numbered_file_name(dump_prefix,".xml");  	const std::vector<F32>& params_for_dump = contents.mParamWeights;  	const LLTEContents& tec = contents.mTEContents; @@ -6778,9 +6773,9 @@ void LLVOAvatar::dumpAppearanceMsgParams( const std::string& dump_prefix,  	outfile.open(fullpath, LL_APR_WB );  	apr_file_t* file = outfile.getFileHandle();  	if (!file) -		{ -			return; -		} +	{ +		return; +	}  	else  	{  		LL_DEBUGS("Avatar") << "dumping appearance message to " << fullpath << llendl; @@ -6814,7 +6809,7 @@ void LLVOAvatar::dumpAppearanceMsgParams( const std::string& dump_prefix,  		apr_file_printf( file, "\t\t<texture te=\"%i\" uuid=\"%s\"/>\n", i, uuid_str.c_str());  	}  	apr_file_printf(file, "</textures>\n"); -	} +}  void LLVOAvatar::parseAppearanceMessage(LLMessageSystem* mesgsys, LLAppearanceMessageContents& contents)  { @@ -6831,7 +6826,7 @@ void LLVOAvatar::parseAppearanceMessage(LLMessageSystem* mesgsys, LLAppearanceMe  		// For future use:  		//mesgsys->getU32Fast(_PREHASH_AppearanceData, _PREHASH_Flags, appearance_flags, 0);  	} -	 +  	// Parse visual params, if any.  	S32 num_blocks = mesgsys->getNumberOfBlocksFast(_PREHASH_VisualParam);  	bool drop_visual_params_debug = gSavedSettings.getBOOL("BlockSomeAvatarAppearanceVisualParams") && (ll_rand(2) == 0); // pretend that ~12% of AvatarAppearance messages arrived without a VisualParam block, for testing @@ -7059,19 +7054,19 @@ void LLVOAvatar::processAvatarAppearance( LLMessageSystem* mesgsys )  			LLVisualParam* param = contents.mParams[i];  			F32 newWeight = contents.mParamWeights[i]; -				if (is_first_appearance_message || (param->getWeight() != newWeight)) +			if (is_first_appearance_message || (param->getWeight() != newWeight)) +			{ +				params_changed = TRUE; +				if(is_first_appearance_message)  				{ -					params_changed = TRUE; -					if(is_first_appearance_message) -					{ -						param->setWeight(newWeight, FALSE); -					} -					else -					{ -						interp_params = TRUE; -						param->setAnimationTarget(newWeight, FALSE); -					} +					param->setWeight(newWeight, FALSE); +				} +				else +				{ +					interp_params = TRUE; +					param->setAnimationTarget(newWeight, FALSE);  				} +			}  		}  		const S32 expected_tweakable_count = getVisualParamCountInGroup(VISUAL_PARAM_GROUP_TWEAKABLE); // don't worry about VISUAL_PARAM_GROUP_TWEAKABLE_NO_TRANSMIT  		if (num_params != expected_tweakable_count) @@ -7327,12 +7322,12 @@ void LLVOAvatar::useBakedTexture( const LLUUID& id )  				avatar_joint_mesh_list_t::iterator iter = mBakedTextureDatas[i].mJointMeshes.begin();  				avatar_joint_mesh_list_t::iterator end  = mBakedTextureDatas[i].mJointMeshes.end();  				for (; iter != end; ++iter) -			{ +				{  					LLAvatarJointMesh* mesh = (*iter);  					if (mesh) -			{ +					{  						mesh->setTexture( image_baked ); -			} +					}  				}  			} @@ -7356,7 +7351,7 @@ void LLVOAvatar::useBakedTexture( const LLUUID& id )  				{  					LLAvatarJointMesh* mesh = (*iter);  					if (mesh) -				{ +					{  						mesh->setColor( LLColor4::white );  					}  				} @@ -7375,7 +7370,7 @@ std::string get_sequential_numbered_file_name(const std::string& prefix,  	file_num_type::iterator it = file_nums.find(prefix);  	S32 num = 0;  	if (it != file_nums.end()) -{ +	{  		num = it->second;  	}  	file_nums[prefix] = num+1; @@ -7392,7 +7387,11 @@ void LLVOAvatar::dumpArchetypeXML(const std::string& prefix, bool group_by_weara  		outprefix = getFullname() + (isSelf()?"_s":"_o");  	}  	if (outprefix.empty()) -{ +	{ +		outprefix = getFullname() + (isSelf()?"_s":"_o"); +	} +	if (outprefix.empty()) +	{  		outprefix = std::string("new_archetype");  	}  	std::string outfilename = get_sequential_numbered_file_name(outprefix,".xml"); @@ -7417,36 +7416,36 @@ void LLVOAvatar::dumpArchetypeXML(const std::string& prefix, bool group_by_weara  	if (group_by_wearables)  	{  		for (S32 type = LLWearableType::WT_SHAPE; type < LLWearableType::WT_COUNT; type++) -	{ -		const std::string& wearable_name = LLWearableType::getTypeName((LLWearableType::EType)type); -		apr_file_printf( file, "\n\t\t<!-- wearable: %s -->\n", wearable_name.c_str() ); +		{ +			const std::string& wearable_name = LLWearableType::getTypeName((LLWearableType::EType)type); +			apr_file_printf( file, "\n\t\t<!-- wearable: %s -->\n", wearable_name.c_str() );  			for (LLVisualParam* param = getFirstVisualParam(); param; param = getNextVisualParam()) -		{ -			LLViewerVisualParam* viewer_param = (LLViewerVisualParam*)param; -			if( (viewer_param->getWearableType() == type) &&  -				(viewer_param->isTweakable() ) )  			{ +				LLViewerVisualParam* viewer_param = (LLViewerVisualParam*)param; +				if( (viewer_param->getWearableType() == type) &&  +					(viewer_param->isTweakable() ) ) +				{  					dump_visual_param(file, viewer_param, viewer_param->getWeight()); +				}  			} -		} -		for (U8 te = 0; te < TEX_NUM_INDICES; te++) -		{ -				if (LLAvatarAppearanceDictionary::getTEWearableType((ETextureIndex)te) == type) +			for (U8 te = 0; te < TEX_NUM_INDICES; te++)  			{ -				// MULTIPLE_WEARABLES: extend to multiple wearables? -					LLViewerTexture* te_image = getImage((ETextureIndex)te, 0); -				if( te_image ) +				if (LLAvatarAppearanceDictionary::getTEWearableType((ETextureIndex)te) == type)  				{ -					std::string uuid_str; -					te_image->getID().toString( uuid_str ); -					apr_file_printf( file, "\t\t<texture te=\"%i\" uuid=\"%s\"/>\n", te, uuid_str.c_str()); +					// MULTIPLE_WEARABLES: extend to multiple wearables? +					LLViewerTexture* te_image = getImage((ETextureIndex)te, 0); +					if( te_image ) +					{ +						std::string uuid_str; +						te_image->getID().toString( uuid_str ); +						apr_file_printf( file, "\t\t<texture te=\"%i\" uuid=\"%s\"/>\n", te, uuid_str.c_str()); +					}  				}  			}  		} -			} -		} +	}  	else   	{  		// Just dump all params sequentially. @@ -7458,19 +7457,17 @@ void LLVOAvatar::dumpArchetypeXML(const std::string& prefix, bool group_by_weara  		for (U8 te = 0; te < TEX_NUM_INDICES; te++)  		{ +			// MULTIPLE_WEARABLES: extend to multiple wearables? +			LLViewerTexture* te_image = getImage((ETextureIndex)te, 0); +			if( te_image )  			{ -				// MULTIPLE_WEARABLES: extend to multiple wearables? -				LLViewerTexture* te_image = getImage((ETextureIndex)te, 0); -				if( te_image ) -				{ -					std::string uuid_str; -					te_image->getID().toString( uuid_str ); -					apr_file_printf( file, "\t\t<texture te=\"%i\" uuid=\"%s\"/>\n", te, uuid_str.c_str()); -				} +				std::string uuid_str; +				te_image->getID().toString( uuid_str ); +				apr_file_printf( file, "\t\t<texture te=\"%i\" uuid=\"%s\"/>\n", te, uuid_str.c_str());  			}  		} -  	} +  	apr_file_printf( file, "\t</archetype>\n" );  	apr_file_printf( file, "\n</linden_genepool>\n" ); @@ -7592,9 +7589,9 @@ void LLVOAvatar::startAppearanceAnimation()  	}  } -// virtual +//virtual  void LLVOAvatar::bodySizeChanged() -		{ +{  	if (isSelf() && !LLAppearanceMgr::instance().isInUpdateAppearanceFromCOF())  	{	// notify simulator of change in size  		// but not if we are in the middle of updating appearance @@ -7617,19 +7614,19 @@ BOOL LLVOAvatar::isUsingServerBakes() const  #endif  	return mUseServerBakes; -		} +}  void LLVOAvatar::setIsUsingServerBakes(BOOL newval) -		{ +{  	mUseServerBakes = newval;  	LLVisualParam* appearance_version_param = getVisualParam(11000);  	llassert(appearance_version_param);  	appearance_version_param->setWeight(newval ? 1.0 : 0.0, false); -		} +}  // virtual  void LLVOAvatar::removeMissingBakedTextures() -		{ +{	  }  //virtual diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index e7f249be69..85f6f25009 100644..100755 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -128,15 +128,15 @@ protected:  public:  	/*virtual*/ void			updateGL();  	/*virtual*/ LLVOAvatar*		asAvatar(); -	virtual U32    	 	 	processUpdateMessage(LLMessageSystem *mesgsys, +	virtual U32    	 	 		processUpdateMessage(LLMessageSystem *mesgsys,  													 void **user_data,  													 U32 block_num,  													 const EObjectUpdateType update_type,  													 LLDataPacker *dp); -	virtual void   	 	 	idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time); +	virtual void   	 	 		idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time);  	/*virtual*/ BOOL   	 	 	updateLOD(); -	BOOL  	 	 	 	 	updateJointLODs(); -	void					updateLODRiggedAttachments( void ); +	BOOL  	 	 	 	 		updateJointLODs(); +	void						updateLODRiggedAttachments( void );  	/*virtual*/ BOOL   	 	 	isActive() const; // Whether this object needs to do an idleUpdate.  	S32 						totalTextureMemForUUIDS(std::set<LLUUID>& ids);  	bool 						allTexturesCompletelyDownloaded(std::set<LLUUID>& ids) const; diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index 48cfbfc309..d54eb5f040 100644..100755 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -602,7 +602,7 @@ LLVOAvatarSelf::~LLVOAvatarSelf()   **                                                                             **   *********************************************************************************/ -//virtual +// virtual  BOOL LLVOAvatarSelf::updateCharacter(LLAgent &agent)  {  	// update screen joint size @@ -866,10 +866,10 @@ void LLVOAvatarSelf::removeMissingBakedTextures()  		updateMeshTextures();  		if (getRegion() && !getRegion()->getCentralBakeVersion())  		{ -		requestLayerSetUploads(); +			requestLayerSetUploads(); +		}  	}  } -}  //virtual  void LLVOAvatarSelf::updateRegion(LLViewerRegion *regionp) @@ -1310,7 +1310,7 @@ void LLVOAvatarSelf::localTextureLoaded(BOOL success, LLViewerFetchedTexture *sr  			discard_level < local_tex_obj->getDiscard())  		{  			local_tex_obj->setDiscard(discard_level); -				requestLayerSetUpdate(index); +			requestLayerSetUpdate(index);  			if (isEditingAppearance())  			{  				LLVisualParamHint::requestHintUpdates(); @@ -1799,11 +1799,11 @@ void LLVOAvatarSelf::setLocalTexture(ETextureIndex type, LLViewerTexture* src_te  					{  						requestLayerSetUpdate(type);  						if (isEditingAppearance()) -					{ -						LLVisualParamHint::requestHintUpdates(); +						{ +							LLVisualParamHint::requestHintUpdates(); +						}  					}  				} -				}  				else  				{					  					tex->setLoadedCallback(onLocalTextureLoaded, desired_discard, TRUE, FALSE, new LLAvatarTexData(getID(), type), NULL); @@ -2580,25 +2580,25 @@ void LLVOAvatarSelf::addLocalTextureStats( ETextureIndex type, LLViewerFetchedTe  	//if (!covered_by_baked)  	{  		if (imagep->getID() != IMG_DEFAULT_AVATAR) -	{ +		{  			imagep->setNoDelete();  			if (imagep->getDiscardLevel() != 0) -		{ -			F32 desired_pixels; -			desired_pixels = llmin(mPixelArea, (F32)getTexImageArea()); - +			{ +				F32 desired_pixels; +				desired_pixels = llmin(mPixelArea, (F32)getTexImageArea()); +				  				imagep->setBoostLevel(getAvatarBoostLevel());  				imagep->setAdditionalDecodePriority(SELF_ADDITIONAL_PRI) ; -			imagep->resetTextureStats(); -			imagep->setMaxVirtualSizeResetInterval(MAX_TEXTURE_VIRTURE_SIZE_RESET_INTERVAL); -			imagep->addTextureStats( desired_pixels / texel_area_ratio ); -			imagep->forceUpdateBindStats() ; -			if (imagep->getDiscardLevel() < 0) -			{ -				mHasGrey = TRUE; // for statistics gathering +				imagep->resetTextureStats(); +				imagep->setMaxVirtualSizeResetInterval(MAX_TEXTURE_VIRTURE_SIZE_RESET_INTERVAL); +				imagep->addTextureStats( desired_pixels / texel_area_ratio ); +				imagep->forceUpdateBindStats() ; +				if (imagep->getDiscardLevel() < 0) +				{ +					mHasGrey = TRUE; // for statistics gathering +				}  			}  		} -		}  		else  		{  			// texture asset is missing @@ -2921,17 +2921,17 @@ void LLVOAvatarSelf::requestLayerSetUpdate(ETextureIndex index )  LLViewerTexLayerSet* LLVOAvatarSelf::getLayerSet(ETextureIndex index) const  { -	/* switch(index) -		case TEX_HEAD_BAKED: -		case TEX_HEAD_BODYPAINT: -			return mHeadLayerSet; */ +       /* switch(index) +               case TEX_HEAD_BAKED: +               case TEX_HEAD_BODYPAINT: +                       return mHeadLayerSet; */         const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = LLAvatarAppearanceDictionary::getInstance()->getTexture(index); -	if (texture_dict->mIsUsedByBakedTexture) -	{ -		const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex; +       if (texture_dict->mIsUsedByBakedTexture) +       { +               const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex;                 return getLayerSet(baked_index); -	} -	return NULL; +       } +       return NULL;  }  LLViewerTexLayerSet* LLVOAvatarSelf::getLayerSet(EBakedTextureIndex baked_index) const @@ -2959,7 +2959,7 @@ void LLVOAvatarSelf::onCustomizeStart(bool disable_camera_switch)  		gAgentAvatarp->mUseLocalAppearance = true;  		if (gSavedSettings.getBOOL("AppearanceCameraMovement") && !disable_camera_switch) -{ +		{  			gAgentCamera.changeCameraToCustomizeAvatar();  		} diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index fd4e9dfc05..49ea4830d3 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -71,6 +71,7 @@  #include "llhudtext.h"  #include "lllightconstants.h"  #include "llmeshrepository.h" +#include "llpipelinelistener.h"  #include "llresmgr.h"  #include "llselectmgr.h"  #include "llsky.h" @@ -380,6 +381,8 @@ S32		LLPipeline::sVisibleLightCount = 0;  F32		LLPipeline::sMinRenderSize = 0.f;  BOOL	LLPipeline::sRenderingHUDs; +// EventHost API LLPipeline listener. +static LLPipelineListener sPipelineListener;  static LLCullResult* sCull = NULL; @@ -495,19 +498,29 @@ void LLPipeline::init()  	LLViewerStats::getInstance()->mTrianglesDrawnStat.reset();  	resetFrameStats(); -	for (U32 i = 0; i < NUM_RENDER_TYPES; ++i) +	if (gSavedSettings.getBOOL("DisableAllRenderFeatures"))  	{ -		mRenderTypeEnabled[i] = TRUE; //all rendering types start enabled +		clearAllRenderDebugFeatures();  	} +	else +	{ +		setAllRenderDebugFeatures(); // By default, all debugging features on +	} +	clearAllRenderDebugDisplays(); // All debug displays off -	mRenderDebugFeatureMask = 0xffffffff; // All debugging features on -	mRenderDebugMask = 0;	// All debug starts off - -	// Don't turn on ground when this is set -	// Mac Books with intel 950s need this -	if(!gSavedSettings.getBOOL("RenderGround")) +	if (gSavedSettings.getBOOL("DisableAllRenderTypes"))  	{ -		toggleRenderType(RENDER_TYPE_GROUND); +		clearAllRenderTypes(); +	} +	else +	{ +		setAllRenderTypes(); // By default, all rendering types start enabled +		// Don't turn on ground when this is set +		// Mac Books with intel 950s need this +		if(!gSavedSettings.getBOOL("RenderGround")) +		{ +			toggleRenderType(RENDER_TYPE_GROUND); +		}  	}  	// make sure RenderPerformanceTest persists (hackity hack hack) diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 2dc00e1df3..500c11da74 100644 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -259,6 +259,7 @@               parameter="speak" />          </menu_item_check>          <menu_item_check +         name="Conversation Log..."           label="Conversation Log...">              <menu_item_check.on_check               function="Floater.Visible" @@ -354,6 +355,7 @@          </menu_item_call>        <menu_item_separator/>        <menu_item_check +       name="Do Not Disturb"         label="Do Not Disturb">          <menu_item_check.on_check           function="View.Status.CheckDoNotDisturb" /> @@ -3055,13 +3057,6 @@                  <menu_item_call.on_click                   function="Advanced.PrintAgentInfo" />              </menu_item_call> -            <menu_item_call -             label="Memory Stats" -             name="Memory Stats" -             shortcut="control|alt|shift|M"> -                <menu_item_call.on_click -                 function="Advanced.PrintTextureMemoryStats" /> -            </menu_item_call>              <menu_item_check               label="Region Debug Console"               name="Region Debug Console" diff --git a/indra/test/llsaleinfo_tut.cpp b/indra/test/llsaleinfo_tut.cpp index 2488af1d7f..2689eaa15e 100644 --- a/indra/test/llsaleinfo_tut.cpp +++ b/indra/test/llsaleinfo_tut.cpp @@ -156,7 +156,7 @@ namespace tut  		ensure("importStream() fn failed ",  			llsaleinfo.getSalePrice() == llsaleinfo1.getSalePrice() && -										       llsaleinfo.getSaleType() == llsaleinfo1.getSaleType());		 +			llsaleinfo.getSaleType() == llsaleinfo1.getSaleType());  	}  	template<> template<> diff --git a/scripts/messages/message_template.msg b/scripts/messages/message_template.msg index 2cb0a833d4..6702de9b4a 100644 --- a/scripts/messages/message_template.msg +++ b/scripts/messages/message_template.msg @@ -2939,6 +2939,10 @@ version 2.0  		PidStat Single  		{	PID					S32				}  	} +	{ +		RegionInfo Variable +		{	RegionFlagsExtended	U64				} +	}  }  // viewer -> sim @@ -2991,6 +2995,10 @@ version 2.0  		{	HardMaxAgents		U32			}  		{	HardMaxObjects		U32			}  	} +	{ +		RegionInfo3		Variable +		{	RegionFlagsExtended	U64			} +	}  }  // GodUpdateRegionInfo @@ -3016,6 +3024,10 @@ version 2.0  		{	RedirectGridX 		S32			}  		{	RedirectGridY 		S32			}  	} +	{ +		RegionInfo2	Variable +		{	RegionFlagsExtended	U64			} +	}  }  //NearestLandingRegionRequest @@ -3116,6 +3128,11 @@ version 2.0  		{	ProductSKU				Variable	1	}	// string  		{	ProductName				Variable	1	}	// string  	} +	{ +		RegionInfo4		Variable +		{	RegionFlagsExtended	U64			} +		{	RegionProtocols		U64			} +	}  }  // RegionHandshakeReply @@ -3571,6 +3588,12 @@ version 2.0  		VisualParam			Variable  		{	ParamValue		U8	}  	} +	{ +		AppearanceData		Variable +		{	AppearanceVersion	U8	} +		{	CofVersion			S32	} +		{	Flags				U32	} +	}  }  // AvatarSitResponse - response to a request to sit on an object diff --git a/scripts/messages/message_template.msg.sha1 b/scripts/messages/message_template.msg.sha1 index 6486d92851..7a31177f11 100644 --- a/scripts/messages/message_template.msg.sha1 +++ b/scripts/messages/message_template.msg.sha1 @@ -1 +1 @@ -465164e1a07f63d68c4ad1f00c19805dfb6ee2d7
\ No newline at end of file +4dbf88396c3188ad4c54c4f847a7d8817793668d
\ No newline at end of file | 
