diff options
64 files changed, 575 insertions, 564 deletions
| diff --git a/autobuild.xml b/autobuild.xml index 910e57d5e3..3777ef5c25 100755 --- a/autobuild.xml +++ b/autobuild.xml @@ -747,7 +747,7 @@            </map>          </map>        </map> -            <key>google_breakpad</key> +      <key>google_breakpad</key>        <map>          <key>license</key>          <string>bsd</string> @@ -761,10 +761,10 @@            <map>              <key>archive</key>              <map> -              <key>hash</key> -	   <string>aff5566e04003de0383941981198e04e</string> -              <key>url</key> -          <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/Darwin/installer/google_breakpad-0.0.0-rev1099-darwin-20130329.tar.bz2</string> +           <key>hash</key> +	      <string>aff5566e04003de0383941981198e04e</string> +          <key>url</key> +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/Darwin/installer/google_breakpad-0.0.0-rev1099-darwin-20130329.tar.bz2</string>              </map>              <key>name</key>              <string>darwin</string> @@ -773,10 +773,10 @@            <map>              <key>archive</key>              <map> -              <key>hash</key> +             <key>hash</key>  	         <string>52257e5eb166a0b69c9c0c38f6e1920e</string> -              <key>url</key> -	         <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273079/arch/Linux/installer/google_breakpad-0.0.0-rev1099-linux-20130329.tar.bz2</string> +             <key>url</key> +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273079/arch/Linux/installer/google_breakpad-0.0.0-rev1099-linux-20130329.tar.bz2</string>              </map>              <key>name</key>              <string>linux</string> @@ -788,7 +788,7 @@                <key>hash</key>  	      <string>d812a6dfcabe6528198a3191068dac09</string>                <key>url</key> -             <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/CYGWIN/installer/google_breakpad-0.0.0-rev1099-windows-20130329.tar.bz2</string> +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/CYGWIN/installer/google_breakpad-0.0.0-rev1099-windows-20130329.tar.bz2</string>              </map>              <key>name</key>              <string>windows</string> @@ -836,7 +836,7 @@                <key>hash</key>                <string>d2542614df9dd99cbb5ff67e76d4a6c1</string>                <key>url</key> -	      <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-mock/rev/274899/arch/CYGWIN/installer/gmock-1.6.0-windows-20130426.tar.bz2</string> +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-mock/rev/274899/arch/CYGWIN/installer/gmock-1.6.0-windows-20130426.tar.bz2</string>              </map>              <key>name</key>              <string>windows</string> @@ -2531,7 +2531,7 @@                    <string>"Visual Studio 10"</string>                    <string>-DUNATTENDED:BOOL=ON</string>                    <string>-DUSE_KDU=FALSE</string> -                  </array> +                </array>                </map>                <key>name</key>                <string>DebugOS</string> @@ -2619,7 +2619,7 @@                    <string>-DUNATTENDED:BOOL=ON</string>                    <string>-DINSTALL_PROPRIETARY=FALSE</string>                    <string>-DUSE_KDU=FALSE</string> -                  </array> +                </array>                </map>                <key>name</key>                <string>RelWithDebInfoOS</string> @@ -2706,7 +2706,7 @@                    <string>-DUNATTENDED:BOOL=ON</string>                    <string>-DINSTALL_PROPRIETARY=FALSE</string>                    <string>-DUSE_KDU=FALSE</string> -                  </array> +                </array>                </map>                <key>name</key>                <string>ReleaseOS</string> @@ -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/indra/CMakeLists.txt b/indra/CMakeLists.txt index 0a54163644..e06c928eb5 100755 --- 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 fb5c759493..b969084632 100755 --- 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 492ba2adea..a87027f5f6 100755 --- 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/DragDrop.cmake b/indra/cmake/DragDrop.cmake index b70aa6b6ee..73ef59b18f 100755 --- 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/Havok.cmake b/indra/cmake/Havok.cmake index 44f81ce332..8b7f01d20b 100755 --- 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/LLRender.cmake b/indra/cmake/LLRender.cmake index ae71ee4c0d..868922451f 100755 --- 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/LLWindow.cmake b/indra/cmake/LLWindow.cmake index 0def507e65..ad732ef650 100755 --- 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/VisualLeakDetector.cmake b/indra/cmake/VisualLeakDetector.cmake index 27e93e28bb..6a20148b47 100755 --- 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/llaudio/llwindgen.h b/indra/llaudio/llwindgen.h index 719b0ecbf2..ec58f76f5f 100755 --- a/indra/llaudio/llwindgen.h +++ b/indra/llaudio/llwindgen.h @@ -57,7 +57,7 @@ public:  	const U32 getInputSamplingRate() { return mInputSamplingRate; }  	const F32 getNextSample();  	const F32 getClampedSample(bool clamp, F32 sample); - +	  	// newbuffer = the buffer passed from the previous DSP unit.  	// numsamples = length in samples-per-channel at this mix time.  	// NOTE: generates L/R interleaved stereo @@ -133,11 +133,11 @@ public:  				MIXBUFFERFORMAT_T	sample_left = (MIXBUFFERFORMAT_T)getClampedSample(clip, mLastSample - (F32)sample_right);  				*cursamplep = sample_left; -				++cursamplep; +					++cursamplep;  				*cursamplep = sample_right; -				++cursamplep; +					++cursamplep; +				}  			} -		}  		return newbuffer;  	} diff --git a/indra/llcommon/llavatarname.h b/indra/llcommon/llavatarname.h index 7542a8dece..5d2fccc5ba 100755 --- 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 9b15804e97..024fdd1b4d 100755 --- 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 864b6e6975..35daba8258 100755 --- 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(), @@ -702,7 +702,7 @@ std::streamsize llstdio_filebuf::xsgetn(char_type* __s, std::streamsize __n)  	if (_M_pback_init)  	{  		if (__n > 0 && this->gptr() == this->eback()) -		{ +	{  			*__s++ = *this->gptr();  			this->gbump(1);  			__ret = 1; @@ -732,7 +732,7 @@ std::streamsize llstdio_filebuf::xsgetn(char_type* __s, std::streamsize __n)  			this->gbump(__avail);  			__ret += __avail;  			__n -= __avail; -		} +}  		// Need to loop in case of short reads (relatively common  		// with pipes). @@ -757,7 +757,7 @@ std::streamsize llstdio_filebuf::xsgetn(char_type* __s, std::streamsize __n)  		}  		if (__n == 0) -		{ +	{  			_M_set_buffer(0);  			_M_reading = true;  		} @@ -768,8 +768,8 @@ std::streamsize llstdio_filebuf::xsgetn(char_type* __s, std::streamsize __n)  			// an intervening seek.  			_M_set_buffer(-1);  			_M_reading = false; -		}  	} +}  	else  		__ret += __streambuf_type::xsgetn(__s, __n); @@ -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 @@ -829,9 +829,9 @@ std::streamsize llstdio_filebuf::xsputn(char_type* __s, std::streamsize __n)  }  int llstdio_filebuf::sync() -{ +	{  	return (_M_file.sync() == 0 ? 0 : -1); -} +	}  #endif  /************** input file stream ********************************/ @@ -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 ********************************/ @@ -963,7 +963,7 @@ llofstream::llofstream() : _M_filebuf(),  	std::ostream(&_M_filebuf) {}  #else  	std::ostream() -{ +		{  	this->init(&_M_filebuf);  }  #endif @@ -999,7 +999,7 @@ llofstream::llofstream(const char* _Filename,  	{  		_Myios::setstate(ios_base::failbit);  	} -} +		}  #else  	std::ostream()  { @@ -1018,7 +1018,7 @@ llofstream::llofstream(_Filet *_File,  	std::ostream()  {  	this->init(&_M_filebuf); -} +	}  #endif  #if !LL_WINDOWS @@ -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 9d70db96ea..d59e68367e 100755 --- 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> @@ -237,7 +237,7 @@ public:  			ios_base::openmode _Mode = ios_base::in,  			//size_t _Size = static_cast<size_t>(BUFSIZ));  			size_t _Size = static_cast<size_t>(1)); - +	  	/**  	 *  @brief  Create a stream using an open file descriptor.  	 *  @param  fd    An open file descriptor. diff --git a/indra/llcommon/llsdserialize_xml.cpp b/indra/llcommon/llsdserialize_xml.cpp index cef743a7be..614a2d5636 100755 --- 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/llmessage/CMakeLists.txt b/indra/llmessage/CMakeLists.txt index 1a90c32fe4..d193e367eb 100755 --- 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 3561459bb4..6110b035dc 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 0b59209af1..dcd2d79d67 100755 --- 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 87cbafa404..559001d079 100755 --- 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 cb0d5b36bd..426666ff00 100755 --- a/indra/llprimitive/llprimitive.cpp +++ b/indra/llprimitive/llprimitive.cpp @@ -315,6 +315,15 @@ S32  LLPrimitive::setTERotation(const U8 index, const F32 r)  	return mTextureList.setRotation(index, r);  } +S32 LLPrimitive::setTEMaterialID(const U8 index, const LLMaterialID& pMaterialID) +{ +	return mTextureList.setMaterialID(index, pMaterialID); +} + +S32 LLPrimitive::setTEMaterialParams(const U8 index, const LLMaterialPtr pMaterialParams) +{ +	return mTextureList.setMaterialParams(index, pMaterialParams); +}  //===============================================================  S32  LLPrimitive::setTEBumpShinyFullbright(const U8 index, const U8 bump) @@ -365,16 +374,6 @@ S32 LLPrimitive::setTEGlow(const U8 index, const F32 glow)  	return mTextureList.setGlow(index, glow);  } -S32 LLPrimitive::setTEMaterialID(const U8 index, const LLMaterialID& pMaterialID) -{ -	return mTextureList.setMaterialID(index, pMaterialID); -} - -S32 LLPrimitive::setTEMaterialParams(const U8 index, const LLMaterialPtr pMaterialParams) -{ -	return mTextureList.setMaterialParams(index, pMaterialParams); -} -  LLPCode LLPrimitive::legacyToPCode(const U8 legacy)  {  	// TODO: Should this default to something valid? @@ -1258,7 +1257,7 @@ 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]; @@ -1324,11 +1323,11 @@ S32 LLPrimitive::parseTEMessage(LLMessageSystem* mesgsys, char const* block_name  	{  		tec.material_ids[i].set(&material_data[i * 16]);  	} - +	  	retval = 1;  	return retval; -} - +	} +	  S32 LLPrimitive::applyParsedTEMessage(LLTEContents& tec)  {  	S32 retval = 0; @@ -1345,9 +1344,9 @@ S32 LLPrimitive::applyParsedTEMessage(LLTEContents& tec)  		retval |= setTEBumpShinyFullbright(i, tec.bump[i]);  		retval |= setTEMediaTexGen(i, tec.media_flags[i]);  		retval |= setTEGlow(i, (F32)tec.glow[i] / (F32)0xFF); - +		                  retval |= setTEMaterialID(i, tec.material_ids[i]); - +		  		coloru = LLColor4U(tec.colors + 4*i);  		// Note:  This is an optimization to send common colors (1.f, 1.f, 1.f, 1.f) diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp index eceb4cb468..ef78d43665 100755 --- a/indra/llrender/llshadermgr.cpp +++ b/indra/llrender/llshadermgr.cpp @@ -650,14 +650,14 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade  			text[count++] = strdup("#define shadow2DRect(a,b) vec2(texture(a,b))\n");  		}  	} - +	  	if (defines)  	{  		for (boost::unordered_map<std::string,std::string>::iterator iter = defines->begin(); iter != defines->end(); ++iter) -		{ -			std::string define = "#define " + iter->first + " " + iter->second + "\n"; -			text[count++] = (GLcharARB *) strdup(define.c_str()); -		} +	{ +		std::string define = "#define " + iter->first + " " + iter->second + "\n"; +		text[count++] = (GLcharARB *) strdup(define.c_str()); +	}  	}  	if (texture_index_channels > 0 && type == GL_FRAGMENT_SHADER_ARB) diff --git a/indra/llui/lllocalcliprect.cpp b/indra/llui/lllocalcliprect.cpp index 0620e0f52d..f3a526faeb 100755 --- 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 03d2cc25e3..306d7d8ec7 100755 --- 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 ad010164eb..4c6e706119 100755 --- 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 cf96f26a77..17400a203e 100755 --- 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/app_settings/shaders/class1/environment/waterV.glsl b/indra/newview/app_settings/shaders/class1/environment/waterV.glsl index 5aff156eae..a2a567eff1 100755 --- a/indra/newview/app_settings/shaders/class1/environment/waterV.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/waterV.glsl @@ -49,40 +49,41 @@ float wave(vec2 v, float t, float f, vec2 d, float s)  void main()  {  	//transform vertex -	vec4 pos = vec4(position.xyz, 1.0);  	mat4 modelViewProj = modelview_projection_matrix;  	vec4 oPosition;  	//get view vector  	vec3 oEyeVec; -	oEyeVec.xyz = pos.xyz-eyeVec; +	oEyeVec.xyz = position.xyz-eyeVec;  	float d = length(oEyeVec.xy);  	float ld = min(d, 2560.0); -	pos.xy = eyeVec.xy + oEyeVec.xy/d*ld; +	vec3 lpos = position; +	lpos.xy = eyeVec.xy + oEyeVec.xy/d*ld;  	view.xyz = oEyeVec;  	d = clamp(ld/1536.0-0.5, 0.0, 1.0);	  	d *= d; -	oPosition = vec4(position, 1.0); +	oPosition = vec4(lpos, 1.0);  	oPosition.z = mix(oPosition.z, max(eyeVec.z*0.75, 0.0), d);  	oPosition = modelViewProj * oPosition; -	  	refCoord.xyz = oPosition.xyz + vec3(0,0,0.2);  	//get wave position parameter (create sweeping horizontal waves) -	vec3 v = pos.xyz; +	vec3 v = lpos;  	v.x += (cos(v.x*0.08/*+time*0.01*/)+sin(v.y*0.02))*6.0;  	//push position for further horizon effect. +	vec4 pos;  	pos.xyz = oEyeVec.xyz*(waterHeight/oEyeVec.z);  	pos.w = 1.0;  	pos = modelview_matrix*pos; -	calcAtmospherics(view.xyz); +	calcAtmospherics(pos.xyz); +	  	//pass wave parameters to pixel shader  	vec2 bigWave =  (v.xy) * vec2(0.04,0.04)  + d1 * time * 0.055; diff --git a/indra/newview/character/avatar_lad.xml b/indra/newview/character/avatar_lad.xml index 284e9c44b2..41080818c9 100755 --- a/indra/newview/character/avatar_lad.xml +++ b/indra/newview/character/avatar_lad.xml @@ -1084,8 +1084,7 @@           scale="0 0 .5" />        </param_skeleton>      </param> - -    <param +                  <param       id="11001"       group="0"       name="Hover" @@ -12308,7 +12307,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 48b883e999..9e2e37c202 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 8c42defa73..3e94c5edf7 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 0896aa5972..488a134aa2 100755 --- 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 c88694ef76..1edbbe2a2e 100755 --- 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,7 +706,7 @@ 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));  } @@ -714,39 +714,39 @@ const LLViewerWearable* LLAgentWearables::getViewerWearable(const LLWearableType  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)  	{ @@ -1496,12 +1496,12 @@ void LLAgentWearables::queryWearableCache()  // virtual  void LLAgentWearables::invalidateBakedTextureHash(LLMD5& hash) const  { -	// Add some garbage into the hash so that it becomes invalid. -	if (isAgentAvatarValid()) -	{ -		hash.update((const unsigned char*)gAgentAvatarp->getID().mData, UUID_BYTES); -	} -} +		// Add some garbage into the hash so that it becomes invalid. +			if (isAgentAvatarValid()) +			{ +				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 2d2d730396..8b6b6db525 100755 --- a/indra/newview/llagentwearablesfetch.cpp +++ b/indra/newview/llagentwearablesfetch.cpp @@ -36,44 +36,44 @@  void order_my_outfits_cb() -{ -	if (!LLApp::isRunning())  	{ -		llwarns << "called during shutdown, skipping" << llendl; -		return; -	} +		if (!LLApp::isRunning()) +		{ +			llwarns << "called during shutdown, skipping" << llendl; +			return; +		} -	const LLUUID& my_outfits_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_MY_OUTFITS); -	if (my_outfits_id.isNull()) 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; +		LLInventoryModel::cat_array_t* cats; +		LLInventoryModel::item_array_t* items; +		gInventory.getDirectDescendentsOf(my_outfits_id, cats, items); +		if (!cats) 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; -	} +		//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; +		} -	llinfos << "Starting updating My Outfits with wearables ordering information" << llendl; +		llinfos << "Starting updating My Outfits with wearables ordering information" << llendl; -	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; +		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; -		// saved initial outfit already contains wearables ordering information -		if (cat_id == LLAppearanceMgr::getInstance()->getBaseOutfitUUID()) continue; +			// saved initial outfit already contains wearables ordering information +			if (cat_id == LLAppearanceMgr::getInstance()->getBaseOutfitUUID()) continue; -		LLAppearanceMgr::getInstance()->updateClothingOrderingInfo(cat_id); -	} +			LLAppearanceMgr::getInstance()->updateClothingOrderingInfo(cat_id); +		} -	llinfos << "Finished updating My Outfits with wearables ordering information" << llendl; -} +		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 652f199e28..fd9236c8b3 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,23 +212,23 @@ public:  			addItem(item->getUUID());  		}  	} - +		  	// Request or re-request operation for specified item.  	void addItem(const LLUUID& item_id)  	{  		LL_DEBUGS("Avatar") << "item_id " << item_id << llendl; -		 +  		if (!requestOperation(item_id))  		{  			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. @@ -288,7 +288,7 @@ public:  			onFailure();  		}  	} - +		  	void onFailure()  	{  		llinfos << "failed" << llendl; @@ -300,7 +300,7 @@ public:  		llinfos << "done" << llendl;  		mOnCompletionFunc();  	} -	 +  	// virtual  	// Will be deleted after returning true - only safe to do this if all callbacks have fired.  	BOOL tick() @@ -313,7 +313,7 @@ public:  		// been serviced, since it will result in this object being  		// deleted.  		bool all_done = (mPendingRequests==0); - +		  		if (!mWaitTimes.empty())  		{  			llwarns << "still waiting on " << mWaitTimes.size() << " items" << llendl; @@ -323,20 +323,20 @@ 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)  				{  					if (retries < mMaxRetries) -					{ +		{  						LL_DEBUGS("Avatar") << "Waited " << time_waited <<  							" for " << curr_it->first << ", retrying" << llendl;  						mRetryCount++;  						addItem(curr_it->first); -					} -					else -					{ +		} +		else +		{  						llwarns << "Giving up on " << curr_it->first << " after too many retries" << llendl;  						mWaitTimes.erase(curr_it);  						mFailCount++; @@ -347,8 +347,8 @@ public:  					onCompletionOrFailure();  				} -			}  		} +	}  		return all_done;  	} @@ -360,7 +360,7 @@ public:  		LL_DEBUGS("Avatar") << "Times: n " << mTimeStats.getCount() << " min " << mTimeStats.getMinValue() << " max " << mTimeStats.getMaxValue() << llendl;  		LL_DEBUGS("Avatar") << "Mean " << mTimeStats.getMean() << " stddev " << mTimeStats.getStdDev() << llendl;  	} -	 +  	virtual ~LLCallAfterInventoryBatchMgr()  	{  		LL_DEBUGS("Avatar") << "deleting" << llendl; @@ -397,9 +397,9 @@ public:  	{  		addItems(src_items);  	} -	 +  	virtual bool requestOperation(const LLUUID& item_id) -	{ +		{  		LLViewerInventoryItem *item = gInventory.getItem(item_id);  		llassert(item);  		LL_DEBUGS("Avatar") << "copying item " << item_id << llendl; @@ -479,9 +479,9 @@ public:  			LLAppearanceMgr::instance().purgeBaseOutfitLink(cof);  			if (catp && catp->getPreferredType() == LLFolderType::FT_OUTFIT) -			{ +	{  				if (ll_frand() < gSavedSettings.getF32("InventoryDebugSimulateOpFailureRate")) -				{ +		{  					LL_DEBUGS("Avatar") << "simulating failure by not sending request for item " << item_id << llendl;  					return true;  				} @@ -841,69 +841,69 @@ 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 (item) +		if (linked_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 -				); +			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 +					);  			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 item not found for recovered wearable" << llendl; +			llwarns << self_av_string() << "inventory link 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())  	{ -		llwarns << "called during shutdown, skipping" << llendl; -		return; -	} -	 -	LLSD key; -	 +		if (!LLApp::isRunning()) +		{ +			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(); -} +	}  void LLAppearanceMgr::removeItemFromAvatar(const LLUUID& id_to_remove)  { diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 97962b8705..3598e71feb 100755 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -1707,7 +1707,7 @@ bool LLAppViewer::cleanup()  		gAudiop->setStreamingAudioImpl(NULL);  		// shut down the audio subsystem -        gAudiop->shutdown(); +			gAudiop->shutdown();  		delete gAudiop;  		gAudiop = NULL; @@ -1780,7 +1780,7 @@ bool LLAppViewer::cleanup()  	llinfos << "Cleaning up Objects" << llendflush;  	LLViewerObject::cleanupVOClasses(); - +	  	LLAvatarAppearance::cleanupClass();  	LLPostProcess::cleanupClass(); @@ -3582,7 +3582,7 @@ 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())  	{ diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp index 4dbd6e1f99..8c9fd4152a 100755 --- a/indra/newview/lldrawable.cpp +++ b/indra/newview/lldrawable.cpp @@ -484,7 +484,7 @@ void LLDrawable::makeActive()  	}  	llassert(isAvatar() || isRoot() || mParent->isActive()); -	} +}  void LLDrawable::makeStatic(BOOL warning_enabled) diff --git a/indra/newview/lleventpoll.cpp b/indra/newview/lleventpoll.cpp index e0f7223a8c..c1630318e8 100755 --- 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/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp index 58817485fb..b40789db9c 100755 --- 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 49f36a2f32..56b0c15cb9 100755 --- 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 5c6ce9d311..16ed3f990c 100755 --- 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 2c20409381..3b72ad3cd9 100755 --- 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/llinventorymodelbackgroundfetch.cpp b/indra/newview/llinventorymodelbackgroundfetch.cpp index f2b39e7186..d88e0c3192 100755 --- 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 6533d55f2f..81acc31863 100755 --- 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/llpanelface.cpp b/indra/newview/llpanelface.cpp index be1561d9a0..67ef072508 100755 --- a/indra/newview/llpanelface.cpp +++ b/indra/newview/llpanelface.cpp @@ -396,10 +396,6 @@ struct LLPanelFaceSetTEFunctor : public LLSelectedTEFunctor  			if (valid)  			{  				value = ctrlTexScaleS->get(); -				//if( checkFlipScaleS->get() ) -				//{ -				//	value = -value; -				//}  				if (comboTexGen &&  				    comboTexGen->getCurrentIndex() == 1)  				{ @@ -634,20 +630,11 @@ void LLPanelFace::getState()  		}  		else  		{ -			llwarns << "failed getChild for 'combobox mattype'" << llendl; +			LL_WARNS("Materials") << "failed getChild for 'combobox mattype'" << LL_ENDL;  		}  		getChildView("combobox mattype")->setEnabled(editable);  		onCommitMaterialsMedia(NULL, this); -		 -		//if ( LLMediaEngine::getInstance()->getMediaRenderer () ) -		//	if ( LLMediaEngine::getInstance()->getMediaRenderer ()->isLoaded () ) -		//	{	 -		//		 -		//		//mLabelTexAutoFix->setEnabled ( editable ); -		//		 -		//		//mBtnAutoFix->setEnabled ( editable ); -		//	}  		bool identical;          bool identical_diffuse; diff --git a/indra/newview/llphysicsmotion.cpp b/indra/newview/llphysicsmotion.cpp index 3ee0746412..18b85cc9c3 100755 --- 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/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index 74fa5a87bb..df413ab849 100755 --- 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 762f557a80..b0a6b9cf91 100755 --- 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/llstartup.cpp b/indra/newview/llstartup.cpp index 9d5fd46a1d..f6da44d8a7 100755 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -644,7 +644,7 @@ bool idle_startup()  				gAudiop = (LLAudioEngine *) new LLAudioEngine_OpenAL();  			}  #endif -             +  			if (gAudiop)  			{  #if LL_WINDOWS diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index be5fde9e2b..6173e76a35 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/llvieweraudio.cpp b/indra/newview/llvieweraudio.cpp index 094694dc06..3da934b148 100755 --- a/indra/newview/llvieweraudio.cpp +++ b/indra/newview/llvieweraudio.cpp @@ -400,7 +400,7 @@ void audio_update_volume(bool force_update)  		gAudiop->setDopplerFactor(gSavedSettings.getF32("AudioLevelDoppler"));  		if(!LLViewerCamera::getInstance()->cameraUnderWater()) -			gAudiop->setRolloffFactor(gSavedSettings.getF32("AudioLevelRolloff")); +		gAudiop->setRolloffFactor(gSavedSettings.getF32("AudioLevelRolloff"));  		else  			gAudiop->setRolloffFactor(gSavedSettings.getF32("AudioLevelUnderwaterRolloff")); @@ -494,18 +494,18 @@ void audio_update_wind(bool force_update)  	LLViewerRegion* region = gAgent.getRegion();  	if (region)  	{ -		// Scale down the contribution of weather-simulation wind to the -		// ambient wind noise.  Wind velocity averages 3.5 m/s, with gusts to 7 m/s -		// whereas steady-state avatar walk velocity is only 3.2 m/s. -		// Without this the world feels desolate on first login when you are -		// standing still. -		static LLUICachedControl<F32> wind_level("AudioLevelWind", 0.5f); -		LLVector3 scaled_wind_vec = gWindVec * wind_level; - -		// Mix in the avatar's motion, subtract because when you walk north, -		// the apparent wind moves south. -		LLVector3 final_wind_vec = scaled_wind_vec - gAgent.getVelocity(); - +        // Scale down the contribution of weather-simulation wind to the +        // ambient wind noise.  Wind velocity averages 3.5 m/s, with gusts to 7 m/s +        // whereas steady-state avatar walk velocity is only 3.2 m/s. +        // Without this the world feels desolate on first login when you are +        // standing still. +        static LLUICachedControl<F32> wind_level("AudioLevelWind", 0.5f); +        LLVector3 scaled_wind_vec = gWindVec * wind_level; +         +        // Mix in the avatar's motion, subtract because when you walk north, +        // the apparent wind moves south. +        LLVector3 final_wind_vec = scaled_wind_vec - gAgent.getVelocity(); +          		// rotate the wind vector to be listener (agent) relative  		gRelativeWindVec = gAgent.getFrameAgent().rotateToLocal( final_wind_vec ); diff --git a/indra/newview/llviewerinventory.h b/indra/newview/llviewerinventory.h index 61b1b8d846..ab19a12014 100755 --- 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/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index 7543e8fabd..9366c901da 100755 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -201,6 +201,8 @@ LLViewerObject::LLViewerObject(const LLUUID &id, const LLPCode pcode, LLViewerRe  	mTotalCRC(0),  	mListIndex(-1),  	mTEImages(NULL), +	mTENormalMaps(NULL), +	mTESpecularMaps(NULL),  	mGLName(0),  	mbCanSelect(TRUE),  	mFlags(0), @@ -321,6 +323,18 @@ void LLViewerObject::deleteTEImages()  {  	delete[] mTEImages;  	mTEImages = NULL; +	 +	if (mTENormalMaps != NULL) +	{ +		delete[] mTENormalMaps; +		mTENormalMaps = NULL; +	} +	 +	if (mTESpecularMaps != NULL) +	{ +		delete[] mTESpecularMaps; +		mTESpecularMaps = NULL; +	}	  }  void LLViewerObject::markDead() @@ -4039,7 +4053,7 @@ void LLViewerObject::setTE(const U8 te, const LLTextureEntry &texture_entry)  {  	LLPrimitive::setTE(te, texture_entry); -		const LLUUID& image_id = getTE(te)->getID(); +	const LLUUID& image_id = getTE(te)->getID();  		mTEImages[te] = LLViewerTextureManager::getFetchedTexture(image_id, FTT_DEFAULT, TRUE, LLGLTexture::BOOST_NONE, LLViewerTexture::LOD_TEXTURE);  	if (getTE(te)->getMaterialParams().notNull()) @@ -4093,7 +4107,12 @@ S32 LLViewerObject::setTENormalMapCore(const U8 te, LLViewerTexture *image)  		uuid == LLUUID::null)  	{  		LLTextureEntry* tep = getTE(te); -		LLMaterial* mat = tep ? tep->getMaterialParams() : NULL; +		LLMaterial* mat = NULL; +		if (tep) +		{ +		   mat = tep->getMaterialParams(); +		} +  		if (mat)  		{  			mat->setNormalID(uuid); @@ -4118,11 +4137,16 @@ S32 LLViewerObject::setTESpecularMapCore(const U8 te, LLViewerTexture *image)  		uuid == LLUUID::null)  	{  		LLTextureEntry* tep = getTE(te); -		LLMaterial* mat = tep ? tep->getMaterialParams() : NULL; +		LLMaterial* mat = NULL; +		if (tep) +		{ +			mat = tep->getMaterialParams(); +		} +  		if (mat)  		{  			mat->setSpecularID(uuid); -		}		 +		}  		setChanged(TEXTURE);  		if (mDrawable.notNull())  		{ diff --git a/indra/newview/llviewerregion.h b/indra/newview/llviewerregion.h index b5fe4677b7..56cd0c9ea1 100755 --- 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/llviewerstatsrecorder.cpp b/indra/newview/llviewerstatsrecorder.cpp index f80abac0fb..3ff2dfa4fe 100755 --- a/indra/newview/llviewerstatsrecorder.cpp +++ b/indra/newview/llviewerstatsrecorder.cpp @@ -254,10 +254,10 @@ void LLViewerStatsRecorder::writeToLog( F32 interval )  		<< "\n";  	size_t data_size = data_msg.str().size(); -        if ( data_size != fwrite(data_msg.str().c_str(), 1, data_size, mObjectCacheFile )) -			{ +	if ( data_size != fwrite(data_msg.str().c_str(), 1, data_size, mObjectCacheFile )) +	{  				llwarns << "Unable to write complete column data to " << STATS_FILE_NAME << llendl; -			} +	}  	clearStats();  } diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index d35b1c8492..037e53484d 100755 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -564,7 +564,7 @@ void LLViewerTexture::updateClass(const F32 velocity, const F32 angular_velocity  		}  	}  	sDesiredDiscardBias = llclamp(sDesiredDiscardBias, desired_discard_bias_min, desired_discard_bias_max); -	 +		  	F32 camera_moving_speed = LLViewerCamera::getInstance()->getAverageSpeed() ;  	F32 camera_angular_speed = LLViewerCamera::getInstance()->getAverageAngularSpeed();  	sCameraMovingBias = llmax(0.2f * camera_moving_speed, 2.0f * camera_angular_speed - 1); @@ -871,10 +871,10 @@ void LLViewerTexture::reorganizeFaceList()  	for (U32 i = 0; i < LLRender::NUM_TEXTURE_CHANNELS; ++i)  	{  		if(mNumFaces[i] + MAX_EXTRA_BUFFER_SIZE > mFaceList[i].size()) -	        { -   		    return ; -	        } - +		{ +			return ; +		} +			  		mFaceList[i].erase(mFaceList[i].begin() + mNumFaces[i], mFaceList[i].end());  	} @@ -1373,7 +1373,7 @@ BOOL LLViewerFetchedTexture::createTexture(S32 usename/*= 0*/)  		return FALSE;  	} -		res = mGLTexturep->createGLTexture(mRawDiscardLevel, mRawImage, usename, TRUE, mBoostLevel); +	res = mGLTexturep->createGLTexture(mRawDiscardLevel, mRawImage, usename, TRUE, mBoostLevel);  	setActive() ; @@ -1668,27 +1668,27 @@ void LLViewerFetchedTexture::updateVirtualSize()  		llassert(mNumFaces[ch] <= mFaceList[ch].size());  		for(U32 i = 0 ; i < mNumFaces[ch]; i++) -	{				 +		{				  			LLFace* facep = mFaceList[ch][i] ; -		if( facep ) -		{ -			LLDrawable* drawable = facep->getDrawable(); -			if (drawable) +			if( facep )  			{ -				if(drawable->isRecentlyVisible()) +				LLDrawable* drawable = facep->getDrawable(); +				if (drawable)  				{ -					if (getBoostLevel() == LLViewerTexture::BOOST_NONE &&  -						drawable->getVObj() && drawable->getVObj()->isSelected()) +					if(drawable->isRecentlyVisible())  					{ -						setBoostLevel(LLViewerTexture::BOOST_SELECTED); +						if (getBoostLevel() == LLViewerTexture::BOOST_NONE &&  +							drawable->getVObj() && drawable->getVObj()->isSelected()) +						{ +							setBoostLevel(LLViewerTexture::BOOST_SELECTED); +						} +						addTextureStats(facep->getVirtualSize()) ; +						setAdditionalDecodePriority(facep->getImportanceToCamera()) ;  					} -					addTextureStats(facep->getVirtualSize()) ; -					setAdditionalDecodePriority(facep->getImportanceToCamera()) ;  				}  			}  		}  	} -	}  	//reset whether or not a face was selected after 10 seconds  	const F32 SELECTION_RESET_TIME = 10.f; @@ -3123,12 +3123,12 @@ BOOL LLViewerMediaTexture::findFaces()  		{  			const ll_face_list_t* face_list = tex->getFaceList(ch) ;  			U32 end = tex->getNumFaces(ch) ; -		for(U32 i = 0 ; i < end ; i++) -		{ -			mMediaFaceList.push_back((*face_list)[i]) ; +			for(U32 i = 0 ; i < end ; i++) +			{ +				mMediaFaceList.push_back((*face_list)[i]) ; +			}  		}  	} -	}  	if(!mMediaImplp)  	{ @@ -3271,9 +3271,9 @@ void LLViewerMediaTexture::removeFace(U32 ch, LLFace* facep)  			for (U32 ch = 0; ch < 3; ++ch)  			{ -			// -			//we have some trouble here: the texture of the face is changed. -			//we need to find the former texture, and remove it from the list to avoid memory leaking. +				// +				//we have some trouble here: the texture of the face is changed. +				//we need to find the former texture, and remove it from the list to avoid memory leaking.  				llassert(mNumFaces[ch] <= mFaceList[ch].size()); @@ -3447,14 +3447,14 @@ F32 LLViewerMediaTexture::getMaxVirtualSize()  		{  			llassert(mNumFaces[ch] <= mFaceList[ch].size());  			for(U32 i = 0 ; i < mNumFaces[ch] ; i++) -		{ -				LLFace* facep = mFaceList[ch][i] ; -			if(facep->getDrawable()->isRecentlyVisible())  			{ -				addTextureStats(facep->getVirtualSize()) ; -			} -		}		 -	} +				LLFace* facep = mFaceList[ch][i] ; +				if(facep->getDrawable()->isRecentlyVisible()) +				{ +					addTextureStats(facep->getVirtualSize()) ; +				} +			}		 +		}  	}  	else //media is not in playing  	{ diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h index bd219995c9..c96f89017f 100755 --- a/indra/newview/llviewertexture.h +++ b/indra/newview/llviewertexture.h @@ -184,8 +184,8 @@ protected:  	mutable F32 mAdditionalDecodePriority;  // priority add to mDecodePriority.  	LLFrameTimer mLastReferencedTimer;	 -	ll_face_list_t    mFaceList[LLRender::NUM_TEXTURE_CHANNELS] ; //reverse pointer pointing to the faces using this image as texture -	U32               mNumFaces[LLRender::NUM_TEXTURE_CHANNELS] ; +	ll_face_list_t    mFaceList[LLRender::NUM_TEXTURE_CHANNELS]; //reverse pointer pointing to the faces using this image as texture +	U32               mNumFaces[LLRender::NUM_TEXTURE_CHANNELS];  	LLFrameTimer      mLastFaceListUpdateTimer ;  	ll_volume_list_t  mVolumeList; @@ -216,7 +216,7 @@ public:  	static S32 sMaxSmallImageSize ;  	static BOOL sFreezeImageScalingDown ;//do not scale down image res if set.  	static F32  sCurrentTime ; - +	  	enum EDebugTexels  	{  		DEBUG_TEXELS_OFF, diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 8e0f8ed234..f190672847 100755 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -822,7 +822,7 @@ LLVOAvatar::~LLVOAvatar()  		}  	logPendingPhases(); -	 +  	lldebugs << "LLVOAvatar Destructor (0x" << this << ") id:" << mID << llendl;  	std::for_each(mAttachmentPoints.begin(), mAttachmentPoints.end(), DeletePairedPointer()); @@ -3999,7 +3999,7 @@ U32 LLVOAvatar::renderTransparent(BOOL first_pass)  			gGL.setAlphaRejectSettings(LLRender::CF_DEFAULT);  		}  	} - +	  	return num_indices;  } @@ -5835,18 +5835,18 @@ 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  			// gets baked into a texture that always exists (upper or lower).  			if (texture_dict->mIsUsedByBakedTexture) -			{ +	{  				const EBakedTextureIndex baked_index = texture_dict->mBakedTextureIndex;  				return isTextureDefined(LLAvatarAppearanceDictionary::getInstance()->getBakedTexture(baked_index)->mTextureIndex);  	}  			return FALSE; -		} +	}  	}  	return FALSE;  } @@ -5955,9 +5955,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 +5966,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;  	}  } @@ -6034,7 +6034,7 @@ void LLVOAvatar::stopPhase(const std::string& phase_name, bool err_check)  void LLVOAvatar::logPendingPhases()  {  	if (!isAgentAvatarValid()) -	{ +		{  		return;  	} @@ -6050,7 +6050,7 @@ void LLVOAvatar::logPendingPhases()  			if (!completed)  			{  				logMetricsTimerRecord(phase_name, elapsed, completed); -			} +		}  		}  	}  		} @@ -6071,7 +6071,7 @@ void LLVOAvatar::logPendingPhasesAllAvatars()  		}  void LLVOAvatar::logMetricsTimerRecord(const std::string& phase_name, F32 elapsed, bool completed) -{ +		{  	if (!isAgentAvatarValid())  		{  		return; @@ -6321,7 +6321,7 @@ void LLVOAvatar::updateMeshTextures()  				if (mesh)  		{  					mesh->setTexture( baked_img ); -				} +			}  			}  		}  		else if (!isUsingLocalAppearance() && is_layer_baked[i]) @@ -6366,8 +6366,8 @@ void LLVOAvatar::updateMeshTextures()  				{  					mesh->setLayerSet( layerset );  			} +			}  		} -	}  		else  		{  			debugColorizeSubMeshes(i,LLColor4::blue); @@ -6387,7 +6387,7 @@ void LLVOAvatar::updateMeshTextures()  		{  			LLAvatarJointMesh* mesh = (*iter);  			if (mesh) -			{ +		{  				mesh->setColor( color );  				mesh->setTexture( hair_img );  			} @@ -6481,8 +6481,8 @@ void LLVOAvatar::applyMorphMask(U8* tex_data, S32 width, S32 height, S32 num_com  		if (morph_target)  	{  			morph_target->applyMask(tex_data, width, height, num_components, maskedMorph->mInvert); -	}  } +	}  } @@ -6768,7 +6768,7 @@ void dump_visual_param(apr_file_t* file, LLVisualParam* viewer_param, F32 value)  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; @@ -7327,7 +7327,7 @@ 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)  			{ @@ -7375,7 +7375,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; @@ -7446,7 +7446,7 @@ void LLVOAvatar::dumpArchetypeXML(const std::string& prefix, bool group_by_weara  			}  		}  	} -	} +		}  	else   	{  		// Just dump all params sequentially. @@ -7629,7 +7629,7 @@ void LLVOAvatar::setIsUsingServerBakes(BOOL newval)  // virtual  void LLVOAvatar::removeMissingBakedTextures() -	{ +			{  }  //virtual @@ -7937,7 +7937,7 @@ const std::string LLVOAvatar::getBakedStatusForPrintout() const  		 ++iter)  	{  		const ETextureIndex index = iter->first; -		const LLAvatarAppearanceDictionary::TextureEntry *texture_dict = iter->second; +		const LLVOAvatarDictionary::TextureEntry *texture_dict = iter->second;  		if (texture_dict->mIsBakedTexture)  		{  			line += texture_dict->mName; diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index 85f6f25009..e7f249be69 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 d54eb5f040..15628d5ab2 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()); -				 -				imagep->setBoostLevel(getAvatarBoostLevel()); +		{ +			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/llvovolume.cpp b/indra/newview/llvovolume.cpp index 03c7441d93..a08a8a9676 100755 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -5386,7 +5386,7 @@ void LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, std::  					}  					else  					{ -					registerFace(group, facep, LLRenderPass::PASS_FULLBRIGHT); +						registerFace(group, facep, LLRenderPass::PASS_FULLBRIGHT);  					}  					if (LLPipeline::sRenderDeferred && !hud_group && LLPipeline::sRenderBump && te->getBumpmap())  					{ //if this is the deferred render and a bump map is present, register in post deferred bump @@ -5408,10 +5408,10 @@ void LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, std::  						}  						else  						{ -						registerFace(group, facep, LLRenderPass::PASS_SIMPLE); +							registerFace(group, facep, LLRenderPass::PASS_SIMPLE); +						}  					}  				} -				}  				if (!gPipeline.canUseVertexShaders() &&  diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index b7dd11e78d..f053d26172 100755 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -1677,7 +1677,7 @@ U32 LLPipeline::getPoolTypeFromTE(const LLTextureEntry* te, LLViewerTexture* ima  				alpha = false;  				break;  			default: //alpha mode set to "mask", go to alpha pool if fullbright -					alpha = false; // Material's alpha mode is set to none, mask, or emissive.  Toss it into the opaque material draw pool. +				alpha = false; // Material's alpha mode is set to none, mask, or emissive.  Toss it into the opaque material draw pool.  				break;  		}  	} diff --git a/indra/newview/pipeline.h b/indra/newview/pipeline.h index 835729c09f..fbfb2d012f 100755 --- a/indra/newview/pipeline.h +++ b/indra/newview/pipeline.h @@ -584,7 +584,7 @@ public:  	static BOOL				sRenderDeferred;  	static BOOL             sMemAllocationThrottled;  	static S32				sVisibleLightCount; -	static F32				sMinRenderSize;	 +	static F32				sMinRenderSize;  	static BOOL				sRenderingHUDs;  	//screen texture diff --git a/indra/newview/tests/llmediadataclient_test.cpp b/indra/newview/tests/llmediadataclient_test.cpp index 41cb344808..3e55336f2d 100755 --- a/indra/newview/tests/llmediadataclient_test.cpp +++ b/indra/newview/tests/llmediadataclient_test.cpp @@ -39,6 +39,7 @@  #include "../llvovolume.h"  #include "../../llprimitive/llmediaentry.cpp" +#include "../../llprimitive/llmaterialid.cpp"  #include "../../llprimitive/lltextureentry.cpp"  #include "../../llmessage/tests/llcurl_stub.cpp" diff --git a/indra/test/llsaleinfo_tut.cpp b/indra/test/llsaleinfo_tut.cpp index 2689eaa15e..2488af1d7f 100755 --- 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<> | 
