Commits

Scott Lawrence committed 00b00b9 Merge

merge changes for storm-1268

  • Participants
  • Parent commits 0bb0e5d, c9ab308

Comments (0)

Files changed (538)

 46a010f4885a9d223b511eac553ba5720284b1dc 3.0.0-start
 6b678ea52f90d5c14181661dcd2546e25bde483e 3.0.0-start
 82a2079ffcb57ecb1b3849cb41376b443e1eb912 3.0.1-start
+364fd63517fbacbbcb9129d096187171ba8c9e48 DRTVWR-81_3.0.1-beta1
+364fd63517fbacbbcb9129d096187171ba8c9e48 3.0.1-beta1
+f2412ecd6740803ea9452f1d17fd872e263a0df7 3.0.2-start
 snowstorm_viewer-development.login_channel = "Second Life Development"
 snowstorm_viewer-development.build_viewer_update_version_manager = false
 snowstorm_viewer-development.email = viewer-development-builds@lists.secondlife.com
+snowstorm_viewer-development.build_enforce_coding_policy = true
+
+Snowstorm_viewer-project-review.build_debug_release_separately = true
+Snowstorm_viewer-project-review.codeticket_add_context = true
+Snowstorm_viewer-project-review.viewer_channel = "Project Viewer - Snowstorm Team"
+Snowstorm_viewer-project-review.login_channel = "Project Viewer - Snowstorm Team"
 
 # ========================================
 # Viewer Beta
 
 oz_viewer-devreview.build_debug_release_separately = true
 oz_viewer-devreview.codeticket_add_context = false
+oz_viewer-devreview.build_enforce_coding_policy = true
 
 oz_project-1.build_debug_release_separately = true
 oz_project-1.codeticket_add_context = false
 oz_viewer-beta-review.viewer_channel = "Second Life Beta Viewer"
 oz_viewer-beta-review.login_channel = "Second Life Beta Viewer"
 
-oz_viewer-poreview.build_debug_release_separately = true
-oz_viewer-poreview.codeticket_add_context = false
-
 # =================================================================
 # asset delivery 2010 projects
 # =================================================================
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>0db10480362168f075c2af0ae302cb74</string>
+              <string>362654a472ef7368d4c803ae3fb89d95</string>
               <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/234943/arch/Darwin/installer/llconvexdecomposition-0.1-darwin-20110707.tar.bz2</string>
+              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/238959/arch/Darwin/installer/llconvexdecomposition-0.1-darwin-20110819.tar.bz2</string>
             </map>
             <key>name</key>
             <string>darwin</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>f3c667dc159c0537a9122ce6e72e16db</string>
+              <string>c7801d899daec5338fbe95053255b7e7</string>
               <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/234943/arch/Linux/installer/llconvexdecomposition-0.1-linux-20110707.tar.bz2</string>
+              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/238959/arch/Linux/installer/llconvexdecomposition-0.1-linux-20110819.tar.bz2</string>
             </map>
             <key>name</key>
             <string>linux</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>46cac4d667446bbbc9b5023f2848a5ac</string>
+              <string>6ecf2f85f03c5ae87fe45769566a5660</string>
               <key>url</key>
-              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/234943/arch/CYGWIN/installer/llconvexdecomposition-0.1-windows-20110707.tar.bz2</string>
+              <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/3p-llconvexdecomposition/rev/238959/arch/CYGWIN/installer/llconvexdecomposition-0.1-windows-20110819.tar.bz2</string>
             </map>
             <key>name</key>
             <string>windows</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>bc1388fc28dbb3bba1fe7cb8d09f49b4</string>
+              <string>a5f53e09f67271fd50f1131ffdda9d27</string>
               <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/227399/arch/Darwin/installer/llconvexdecompositionstub-0.3-darwin-20110421.tar.bz2</string>
+              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/238958/arch/Darwin/installer/llconvexdecompositionstub-0.3-darwin-20110819.tar.bz2</string>
             </map>
             <key>name</key>
             <string>darwin</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>3295bd4a0514b7c15dda9044f40c175e</string>
+              <string>0006a964f1497f55a5f181b7042d2d22</string>
               <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/227399/arch/Linux/installer/llconvexdecompositionstub-0.3-linux-20110422.tar.bz2</string>
+              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/238958/arch/Linux/installer/llconvexdecompositionstub-0.3-linux-20110819.tar.bz2</string>
             </map>
             <key>name</key>
             <string>linux</string>
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>92f1dff3249024c1534b55343ed79ea3</string>
+              <string>b859e7e3bb03ebb467f0309f46422995</string>
               <key>url</key>
-              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/227399/arch/CYGWIN/installer/llconvexdecompositionstub-0.3-windows-20110421.tar.bz2</string>
+              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llconvexdecompositionstub/rev/238958/arch/CYGWIN/installer/llconvexdecompositionstub-0.3-windows-20110819.tar.bz2</string>
             </map>
             <key>name</key>
             <string>windows</string>
             <map>
               <key>build</key>
               <map>
+                <key>command</key>
+                <string>xcodebuild</string>
                 <key>filters</key>
                 <array>
                   <string>setenv</string>
                 </array>
-                <key>command</key>
-                <string>xcodebuild</string>
                 <key>options</key>
                 <array>
                   <string>-configuration Debug</string>
             <map>
               <key>build</key>
               <map>
+                <key>command</key>
+                <string>xcodebuild</string>
                 <key>filters</key>
                 <array>
                   <string>setenv</string>
                 </array>
-                <key>command</key>
-                <string>xcodebuild</string>
                 <key>options</key>
                 <array>
                   <string>-configuration RelWithDebInfo</string>
             <map>
               <key>build</key>
               <map>
+                <key>command</key>
+                <string>xcodebuild</string>
                 <key>filters</key>
                 <array>
                   <string>setenv</string>
                 </array>
-                <key>command</key>
-                <string>xcodebuild</string>
                 <key>options</key>
                 <array>
                   <string>-configuration Release</string>

doc/contributions.txt

 	STORM-1313
 	STORM-899
 	STORM-1273
+	STORM-1276
 	STORM-1462
 	STORM-1459
 Kadah Coba
 Satomi Ahn
 	STORM-501
 	STORM-229
+	VWR-24502
 Scrim Pinion
 Scrippy Scofield
 	VWR-3748

indra/cmake/Copy3rdPartyLibs.cmake

         ssleay32.dll
         libeay32.dll
         libcollada14dom22-d.dll
-        glod.dll	
+        glod.dll    
         )
 
     set(release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}")
 if (MSVC80)
     FIND_PATH(debug_msvc8_redist_path msvcr80d.dll
         PATHS
-		${MSVC_DEBUG_REDIST_PATH}
+        ${MSVC_DEBUG_REDIST_PATH}
          [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup\\VC;ProductDir]/redist/Debug_NonRedist/x86/Microsoft.VC80.DebugCRT
         NO_DEFAULT_PATH
         NO_DEFAULT_PATH
 
     FIND_PATH(release_msvc8_redist_path msvcr80.dll
         PATHS
-		${MSVC_REDIST_PATH}
+        ${MSVC_REDIST_PATH}
          [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup\\VC;ProductDir]/redist/x86/Microsoft.VC80.CRT
         NO_DEFAULT_PATH
         NO_DEFAULT_PATH
         libexpat.1.5.2.dylib
         libexpat.dylib
         libGLOD.dylib
-	libllqtwebkit.dylib
-	libminizip.a
+    libllqtwebkit.dylib
+    libminizip.a
         libndofdev.dylib
         libexception_handler.dylib
-	libcollada14dom.dylib
+    libcollada14dom.dylib
        )
 
     # fmod is statically linked on darwin
         libaprutil-1.so.0
         libatk-1.0.so
         libbreakpad_client.so.0
-       	libcollada14dom.so
+        libcollada14dom.so
         libcrypto.so.1.0.0
         libdb-5.1.so
         libexpat.so
         libexpat.so.1
-	libglod.so
+    libglod.so
         libgmock_main.so
         libgmock.so.0
         libgmodule-2.0.so
         libgobject-2.0.so
         libgtest_main.so
         libgtest.so.0
-	libminizip.so
+    libminizip.so
         libopenal.so
         libopenjpeg.so
         libssl.so

indra/cmake/FMOD.cmake

     include(FindFMOD)
   else (STANDALONE)
     if (FMOD_LIBRARY AND FMOD_INCLUDE_DIR)
-	  # If the path have been specified in the arguments, use that
+      # If the path have been specified in the arguments, use that
       set(FMOD_LIBRARIES ${FMOD_LIBRARY})
-	  MESSAGE(STATUS "Using FMOD path: ${FMOD_LIBRARIES}, ${FMOD_INCLUDE_DIR}")
+      MESSAGE(STATUS "Using FMOD path: ${FMOD_LIBRARIES}, ${FMOD_INCLUDE_DIR}")
     else (FMOD_LIBRARY AND FMOD_INCLUDE_DIR)
-	  # If not, we're going to try to get the package listed in autobuild.xml
-	  # Note: if you're not using INSTALL_PROPRIETARY, the package URL should be local (file:/// URL) 
-	  # as accessing the private LL location will fail if you don't have the credential
-	  include(Prebuilt)
-	  use_prebuilt_binary(fmod)    
+      # If not, we're going to try to get the package listed in autobuild.xml
+      # Note: if you're not using INSTALL_PROPRIETARY, the package URL should be local (file:/// URL) 
+      # as accessing the private LL location will fail if you don't have the credential
+      include(Prebuilt)
+      use_prebuilt_binary(fmod)    
       if (WINDOWS)
         set(FMOD_LIBRARY fmod)
       elseif (DARWIN)

indra/cmake/FindAutobuild.cmake

       AUTOBUILD_EXECUTABLE 
       NAMES ${AUTOBUILD_EXE_NAMES}
       PATHS 
-	ENV PATH
-	${CMAKE_SOURCE_DIR}/.. 
-	${CMAKE_SOURCE_DIR}/../..
-	${CMAKE_SOURCE_DIR}/../../..
+    ENV PATH
+    ${CMAKE_SOURCE_DIR}/.. 
+    ${CMAKE_SOURCE_DIR}/../..
+    ${CMAKE_SOURCE_DIR}/../../..
       PATH_SUFFIXES "/autobuild/bin/"
     )
 
       MESSAGE(STATUS "Using autobuild at: ${AUTOBUILD_EXECUTABLE}")
     ELSE (AUTOBUILD_EXECUTABLE)
       IF (AUTOBUILD_FIND_REQUIRED)
-	MESSAGE(FATAL_ERROR "Could not find autobuild executable")
+    MESSAGE(FATAL_ERROR "Could not find autobuild executable")
       ENDIF (AUTOBUILD_FIND_REQUIRED)
     ENDIF (AUTOBUILD_EXECUTABLE)
 

indra/cmake/FindJsonCpp.cmake

 # Try to find a library that was compiled with the same compiler version as we currently use.
 SET(JSONCPP_NAMES ${JSONCPP_NAMES} libjson_linux-gcc-${_gcc_COMPILER_VERSION}_libmt.so)
 IF (STANDALONE)
-	# On standalone, assume that the system installed library was compiled with the used compiler.
-	SET(JSONCPP_NAMES ${JSONCPP_NAMES} libjson.so)
+    # On standalone, assume that the system installed library was compiled with the used compiler.
+    SET(JSONCPP_NAMES ${JSONCPP_NAMES} libjson.so)
 ENDIF (STANDALONE)
 FIND_LIBRARY(JSONCPP_LIBRARY
   NAMES ${JSONCPP_NAMES}

indra/cmake/FindLLQtWebkit.cmake

 
 find_library(LLQTWEBKIT_LIBRARY NAMES llqtwebkit NO_SYSTEM_ENVIRONMENT_PATH HINTS ${LLQTWEBKIT_LIBRARY_DIRS})
 
-if (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND)	# If pkg-config couldn't find it, pretend we don't have pkg-config.
+if (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND)   # If pkg-config couldn't find it, pretend we don't have pkg-config.
    set(LLQTWEBKIT_LIBRARIES llqtwebkit)
    get_filename_component(LLQTWEBKIT_LIBRARY_DIRS ${LLQTWEBKIT_LIBRARY} PATH)
 endif (NOT PKG_CONFIG_FOUND OR NOT LLQTWEBKIT_FOUND)

indra/cmake/FindZLIB.cmake

 
 if (ZLIB_FOUND)
   if (NOT ZLIB_FIND_QUIETLY)
-	message(STATUS "Found ZLIB: ${ZLIB_LIBRARIES}")
-	SET(ZLIB_FIND_QUIETLY TRUE)
+    message(STATUS "Found ZLIB: ${ZLIB_LIBRARIES}")
+    SET(ZLIB_FIND_QUIETLY TRUE)
   endif (NOT ZLIB_FIND_QUIETLY)
 else (ZLIB_FOUND)
   if (ZLIB_FIND_REQUIRED)
-	message(FATAL_ERROR "Could not find ZLIB library")
+    message(FATAL_ERROR "Could not find ZLIB library")
   endif (ZLIB_FIND_REQUIRED)
 endif (ZLIB_FOUND)
 

indra/cmake/GoogleMock.cmake

     ${LIBS_PREBUILT_DIR}/include)
 
 if (LINUX)
-	# VWR-24366: gmock is underlinked, it needs gtest.
+    # VWR-24366: gmock is underlinked, it needs gtest.
     set(GOOGLEMOCK_LIBRARIES 
         gmock -Wl,--no-as-needed
         gtest -Wl,--as-needed)

indra/cmake/GooglePerfTools.cmake

   if (LINUX)
     use_prebuilt_binary(tcmalloc)
     set(TCMALLOC_LIBRARIES 
-	tcmalloc)
+    tcmalloc)
     set(PROFILER_LIBRARIES profiler)
     set(GOOGLE_PERFTOOLS_INCLUDE_DIR
         ${LIBS_PREBUILT_DIR}/include)

indra/cmake/LLPlugin.cmake

 if (LINUX)
     # In order to support using ld.gold on linux, we need to explicitely
     # specify all libraries that llplugin uses.
-	set(LLPLUGIN_LIBRARIES llplugin pthread)
+    set(LLPLUGIN_LIBRARIES llplugin pthread)
 else (LINUX)
-	set(LLPLUGIN_LIBRARIES llplugin)
+    set(LLPLUGIN_LIBRARIES llplugin)
 endif (LINUX)

indra/cmake/LLPrimitive.cmake

     ${LIBS_OPEN_DIR}/llprimitive
     )
 if (WINDOWS)
-	set(LLPRIMITIVE_LIBRARIES 
+    set(LLPRIMITIVE_LIBRARIES 
         debug llprimitive
         optimized llprimitive
         debug libcollada14dom22-d

indra/cmake/LScript.cmake

     lscript_library
     )
 
-set(LSCRIPT_EXECUTE_MONO_LIBRARIES lscript_execute_mono)
+set(LSCRIPT_EXECUTE_MONO_LIBRARIES lscript_execute_mono)

indra/cmake/NDOF.cmake

 
 if (NDOF)
   if (STANDALONE)
-	set(NDOF_FIND_REQUIRED ON)
-	include(FindNDOF)
+    set(NDOF_FIND_REQUIRED ON)
+    include(FindNDOF)
   else (STANDALONE)
-	use_prebuilt_binary(ndofdev)
+    use_prebuilt_binary(ndofdev)
 
-	if (WINDOWS)
-	  set(NDOF_LIBRARY libndofdev)
-	elseif (DARWIN OR LINUX)
-	  set(NDOF_LIBRARY ndofdev)
-	endif (WINDOWS)
+    if (WINDOWS)
+      set(NDOF_LIBRARY libndofdev)
+    elseif (DARWIN OR LINUX)
+      set(NDOF_LIBRARY ndofdev)
+    endif (WINDOWS)
 
-	set(NDOF_INCLUDE_DIR ${ARCH_PREBUILT_DIRS}/include/ndofdev)
-	set(NDOF_FOUND 1)
+    set(NDOF_INCLUDE_DIR ${ARCH_PREBUILT_DIRS}/include/ndofdev)
+    set(NDOF_FOUND 1)
   endif (STANDALONE)
 endif (NDOF)
 

indra/cmake/WebKitLibPlugin.cmake

   include(${QT_USE_FILE})
   set(QTDIR $ENV{QTDIR})
   if (QTDIR AND NOT "${QT_BINARY_DIR}" STREQUAL "${QTDIR}/bin")
-	message(FATAL_ERROR "\"${QT_BINARY_DIR}\" is unequal \"${QTDIR}/bin\"; "
-	  "Qt is found by looking for qmake in your PATH. "
-	  "Please set your PATH such that 'qmake' is found in \$QTDIR/bin, "
-	  "or unset QTDIR if the found Qt is correct.")
-	endif (QTDIR AND NOT "${QT_BINARY_DIR}" STREQUAL "${QTDIR}/bin")
+    message(FATAL_ERROR "\"${QT_BINARY_DIR}\" is unequal \"${QTDIR}/bin\"; "
+      "Qt is found by looking for qmake in your PATH. "
+      "Please set your PATH such that 'qmake' is found in \$QTDIR/bin, "
+      "or unset QTDIR if the found Qt is correct.")
+    endif (QTDIR AND NOT "${QT_BINARY_DIR}" STREQUAL "${QTDIR}/bin")
   find_package(LLQtWebkit REQUIRED QUIET)
   # Add the plugins.
   set(QT_PLUGIN_LIBRARIES)
   foreach(qlibname qgif qjpeg)
-	find_library(QT_PLUGIN_${qlibname} ${qlibname} PATHS ${QT_PLUGINS_DIR}/imageformats NO_DEFAULT_PATH)
-	if (QT_PLUGIN_${qlibname})
-	  list(APPEND QT_PLUGIN_LIBRARIES ${QT_PLUGIN_${qlibname}})
-	else (QT_PLUGIN_${qtlibname})
-	  message(FATAL_ERROR "Could not find the Qt plugin ${qlibname} in \"${QT_PLUGINS_DIR}/imageformats\"!")
-	endif (QT_PLUGIN_${qlibname})
+    find_library(QT_PLUGIN_${qlibname} ${qlibname} PATHS ${QT_PLUGINS_DIR}/imageformats NO_DEFAULT_PATH)
+    if (QT_PLUGIN_${qlibname})
+      list(APPEND QT_PLUGIN_LIBRARIES ${QT_PLUGIN_${qlibname}})
+    else (QT_PLUGIN_${qtlibname})
+      message(FATAL_ERROR "Could not find the Qt plugin ${qlibname} in \"${QT_PLUGINS_DIR}/imageformats\"!")
+    endif (QT_PLUGIN_${qlibname})
   endforeach(qlibname)
   # qjpeg depends on libjpeg
   list(APPEND QT_PLUGIN_LIBRARIES jpeg)

indra/fix-incredibuild.py

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

indra/integration_tests/llimage_libtest/CMakeLists.txt

 # Libraries on which this application depends on
 # Sort by high-level to low-level
 target_link_libraries(llimage_libtest
-	${LLCOMMON_LIBRARIES}
-	${LLVFS_LIBRARIES}
+    ${LLCOMMON_LIBRARIES}
+    ${LLVFS_LIBRARIES}
     ${LLIMAGE_LIBRARIES}
     ${LLKDU_LIBRARIES}
     ${KDU_LIBRARY}
     ${LLIMAGEJ2COJ_LIBRARIES}
     ${OS_LIBRARIES}
     )
-	
+    
 if (DARWIN)
   # Path inside the app bundle where we'll need to copy libraries
   set(LLIMAGE_LIBTEST_DESTINATION_DIR

indra/lib/python/indra/base/cllsd_test.py

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

indra/lib/python/indra/base/lluuid.py

     def setFromMemoryDump(self, gdb_string):
         """
         We expect to get gdb_string as four hex units. eg:
-        0x147d54db		0xc34b3f1b		0x714f989b		0x0a892fd2
+        0x147d54db      0xc34b3f1b      0x714f989b      0x0a892fd2
         Which will be translated to:
         db547d14-1b3f4bc3-9b984f71-d22f890a
         Returns self.
     def getAsString(self):
         """
         Return a different string representation of the form
-        AAAAAAAA-AAAABBBB-BBBBBBBB-BBCCCCCC	 (a 128-bit number in hex)
+        AAAAAAAA-AAAABBBB-BBBBBBBB-BBCCCCCC  (a 128-bit number in hex)
         where A=network address, B=timestamp, C=random.
         """
         i1 = _binstr2int(self._bits[0:4])
 def printTranslatedMemory(four_hex_uints):
     """
     We expect to get the string as four hex units. eg:
-    0x147d54db		0xc34b3f1b		0x714f989b		0x0a892fd2
+    0x147d54db      0xc34b3f1b      0x714f989b      0x0a892fd2
     Which will be translated to:
     db547d14-1b3f4bc3-9b984f71-d22f890a
     """

indra/lib/python/indra/ipc/httputil.py

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

indra/lib/python/indra/ipc/russ.py

 
 def _find_sub_matches(format_str):
     """@brief Find all of the substitution matches.
-@param format_str the RUSS conformant format string.	
+@param format_str the RUSS conformant format string.    
 @return Returns an array of depths of arrays of positional matches in input.
 """
     depth = 0

indra/lib/python/indra/ipc/siesta_test.py

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

indra/lib/python/uuid.py

+#!/usr/bin/python
+## $LicenseInfo:firstyear=2011&license=viewerlgpl$
+## Second Life Viewer Source Code
+## Copyright (C) 2011, Linden Research, Inc.
+## 
+## This library is free software; you can redistribute it and/or
+## modify it under the terms of the GNU Lesser General Public
+## License as published by the Free Software Foundation;
+## version 2.1 of the License only.
+## 
+## This library is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## Lesser General Public License for more details.
+## 
+## You should have received a copy of the GNU Lesser General Public
+## License along with this library; if not, write to the Free Software
+## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+## 
+## Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA
+## $/LicenseInfo$
 r"""UUID objects (universally unique identifiers) according to RFC 4122.
 
 This module provides immutable UUID objects (class UUID) and the functions

indra/llcharacter/CMakeLists.txt

 
 # Add tests
 if (LL_TESTS)
-	include(LLAddBuildTest)
-	# UNIT TESTS
-	SET(llcharacter_TEST_SOURCE_FILES
-	  lljoint.cpp
-	  )
-	LL_ADD_PROJECT_UNIT_TESTS(llcharacter "${llcharacter_TEST_SOURCE_FILES}")
+    include(LLAddBuildTest)
+    # UNIT TESTS
+    SET(llcharacter_TEST_SOURCE_FILES
+      lljoint.cpp
+      )
+    LL_ADD_PROJECT_UNIT_TESTS(llcharacter "${llcharacter_TEST_SOURCE_FILES}")
 endif (LL_TESTS)
 

indra/llcommon/llerror.cpp

 	{
 		/* This pattern, of returning a reference to a static function
 		   variable, is to ensure that this global is constructed before
-		   it is used, no matter what the global initializeation sequence
+		   it is used, no matter what the global initialization sequence
 		   is.
 		   See C++ FAQ Lite, sections 10.12 through 10.14
 		*/

indra/llcommon/llerror.h

 
 	Information for most users:
 	
-	Code can log messages with constuctions like this:
+	Code can log messages with constructions like this:
 	
 		LL_INFOS("StringTag") << "request to fizzbip agent " << agent_id
 			<< " denied due to timeout" << LL_ENDL;
 	Messages can be logged to one of four increasing levels of concern,
 	using one of four "streams":
 
-		LL_DEBUGS("StringTag")	- debug messages that are normally supressed
-		LL_INFOS("StringTag")	- informational messages that are normall shown
-		LL_WARNS("StringTag")	- warning messages that singal a problem
+		LL_DEBUGS("StringTag")	- debug messages that are normally suppressed
+		LL_INFOS("StringTag")	- informational messages that are normal shown
+		LL_WARNS("StringTag")	- warning messages that signal a problem
 		LL_ERRS("StringTag")	- error messages that are major, unrecoverable failures
 		
 	The later (LL_ERRS("StringTag")) automatically crashes the process after the message
 	
 		WARN: LLFoo::doSomething: called with a big value for i: 283
 	
-	Which messages are logged and which are supressed can be controled at run
+	Which messages are logged and which are suppressed can be controlled at run
 	time from the live file logcontrol.xml based on function, class and/or 
 	source file.  See etc/logcontrol-dev.xml for details.
 	
 	enum ELevel
 	{
 		LEVEL_ALL = 0,
-			// used to indicate that all messagess should be logged
+			// used to indicate that all messages should be logged
 			
 		LEVEL_DEBUG = 0,
 		LEVEL_INFO = 1,
 	// See top of file for example of how to use this
 	
 typedef LLError::NoClassInfo _LL_CLASS_TO_LOG;
-	// Outside a class declartion, or in class without LOG_CLASS(), this
+	// Outside a class declaration, or in class without LOG_CLASS(), this
 	// typedef causes the messages to not be associated with any class.
 
 

indra/llcommon/llinstancetracker.h

 	public:
 		typedef boost::iterator_facade<key_iter, KEY, boost::forward_traversal_tag> super_t;
 
-		key_iter(typename InstanceMap::iterator& it)
+		key_iter(typename InstanceMap::iterator it)
 			:	mIterator(it)
 		{
 			++sIterationNestDepth;

indra/llcommon/llsdserialize.cpp

 LLSDParser::~LLSDParser()
 { }
 
-LLFastTimer::DeclareTimer FTM_SD_PARSE("LLSD Parsing");
 S32 LLSDParser::parse(std::istream& istr, LLSD& data, S32 max_bytes)
 {
-	LLFastTimer _(FTM_SD_PARSE);
 	mCheckLimits = (LLSDSerialize::SIZE_UNLIMITED == max_bytes) ? false : true;
 	mMaxBytesLeft = max_bytes;
 	return doParse(istr, data);

indra/llcommon/llsdserialize_xml.cpp

 		case ELEMENT_INTEGER:
 			{
 				S32 i;
+				// sscanf okay here with different locales - ints don't change for different locale settings like floats do.
 				if ( sscanf(mCurrentContent.c_str(), "%d", &i ) == 1 )
 				{	// See if sscanf works - it's faster
 					value = i;
 		
 		case ELEMENT_REAL:
 			{
-				F64 r;
-				if ( sscanf(mCurrentContent.c_str(), "%lf", &r ) == 1 )
-				{	// See if sscanf works - it's faster
-					value = r;
-				}
-				else
-				{
-					value = LLSD(mCurrentContent).asReal();
-				}
+				value = LLSD(mCurrentContent).asReal();
+				// removed since this breaks when locale has decimal separator that isn't '.'
+				// investigated changing local to something compatible each time but deemed higher
+				// risk that just using LLSD.asReal() each time.
+				//F64 r;
+				//if ( sscanf(mCurrentContent.c_str(), "%lf", &r ) == 1 )
+				//{	// See if sscanf works - it's faster
+				//	value = r;
+				//}
+				//else
+				//{
+				//	value = LLSD(mCurrentContent).asReal();
+				//}
 			}
 			break;
 		

indra/llcommon/llsingleton.h

 		DELETED
 	} EInitState;
 	
-	static void deleteSingleton()
-	{
-		delete getData().mSingletonInstance;
-		getData().mSingletonInstance = NULL;
-	}
-	
 	// stores pointer to singleton instance
 	// and tracks initialization state of singleton
 	struct SingletonInstanceData
 
 		~SingletonInstanceData()
 		{
-			deleteSingleton();
+			SingletonInstanceData& data = getData();
+			if (data.mInitState != DELETED)
+			{
+				deleteSingleton();
+			}
 		}
 	};
 	
 		data.mInitState = DELETED;
 	}
 
+	// Can be used to control when the singleton is deleted.  Not normally needed.
+	static void deleteSingleton()
+	{
+		delete getData().mSingletonInstance;
+		getData().mSingletonInstance = NULL;
+		getData().mInitState = DELETED;
+	}
+
 	static SingletonInstanceData& getData()
 	{
 		// this is static to cache the lookup results

indra/llcommon/llversionviewer.h

 
 const S32 LL_VERSION_MAJOR = 3;
 const S32 LL_VERSION_MINOR = 0;
-const S32 LL_VERSION_PATCH = 2;
+const S32 LL_VERSION_PATCH = 3;
 const S32 LL_VERSION_BUILD = 0;
 
 const char * const LL_CHANNEL = "Second Life Developer";

indra/llcommon/tests/llinstancetracker_test.cpp

         ensure_equals(Keyed::instanceCount(), 0);
     }
 
-  //  template<> template<>
-  //  void object::test<2>()
-  //  {
-  //      ensure_equals(Unkeyed::instanceCount(), 0);
-  //      {
-  //          Unkeyed one;
-  //          ensure_equals(Unkeyed::instanceCount(), 1);
-  //          Unkeyed* found = Unkeyed::getInstance(&one);
-  //          ensure_equals(found, &one);
-  //          {
-  //              boost::scoped_ptr<Unkeyed> two(new Unkeyed);
-  //              ensure_equals(Unkeyed::instanceCount(), 2);
-  //              Unkeyed* found = Unkeyed::getInstance(two.get());
-  //              ensure_equals(found, two.get());
-  //          }
-  //          ensure_equals(Unkeyed::instanceCount(), 1);
-  //      }
-  //      ensure_equals(Unkeyed::instanceCount(), 0);
-  //  }
+    template<> template<>
+    void object::test<2>()
+    {
+        ensure_equals(Unkeyed::instanceCount(), 0);
+        {
+            Unkeyed one;
+            ensure_equals(Unkeyed::instanceCount(), 1);
+            Unkeyed* found = Unkeyed::getInstance(&one);
+            ensure_equals(found, &one);
+            {
+                boost::scoped_ptr<Unkeyed> two(new Unkeyed);
+                ensure_equals(Unkeyed::instanceCount(), 2);
+                Unkeyed* found = Unkeyed::getInstance(two.get());
+                ensure_equals(found, two.get());
+            }
+            ensure_equals(Unkeyed::instanceCount(), 1);
+        }
+        ensure_equals(Unkeyed::instanceCount(), 0);
+    }
 
-  //  template<> template<>
-  //  void object::test<3>()
-  //  {
-  //      Keyed one("one"), two("two"), three("three");
-  //      // We don't want to rely on the underlying container delivering keys
-  //      // in any particular order. That allows us the flexibility to
-  //      // reimplement LLInstanceTracker using, say, a hash map instead of a
-  //      // std::map. We DO insist that every key appear exactly once.
-  //      typedef std::vector<std::string> StringVector;
-  //      StringVector keys(Keyed::beginKeys(), Keyed::endKeys());
-  //      std::sort(keys.begin(), keys.end());
-  //      StringVector::const_iterator ki(keys.begin());
-  //      ensure_equals(*ki++, "one");
-  //      ensure_equals(*ki++, "three");
-  //      ensure_equals(*ki++, "two");
-  //      // Use ensure() here because ensure_equals would want to display
-  //      // mismatched values, and frankly that wouldn't help much.
-  //      ensure("didn't reach end", ki == keys.end());
+    template<> template<>
+    void object::test<3>()
+    {
+        Keyed one("one"), two("two"), three("three");
+        // We don't want to rely on the underlying container delivering keys
+        // in any particular order. That allows us the flexibility to
+        // reimplement LLInstanceTracker using, say, a hash map instead of a
+        // std::map. We DO insist that every key appear exactly once.
+        typedef std::vector<std::string> StringVector;
+        StringVector keys(Keyed::beginKeys(), Keyed::endKeys());
+        std::sort(keys.begin(), keys.end());
+        StringVector::const_iterator ki(keys.begin());
+        ensure_equals(*ki++, "one");
+        ensure_equals(*ki++, "three");
+        ensure_equals(*ki++, "two");
+        // Use ensure() here because ensure_equals would want to display
+        // mismatched values, and frankly that wouldn't help much.
+        ensure("didn't reach end", ki == keys.end());
 
-  //      // Use a somewhat different approach to order independence with
-  //      // beginInstances(): explicitly capture the instances we know in a
-  //      // set, and delete them as we iterate through.
-  //      typedef std::set<Keyed*> InstanceSet;
-  //      InstanceSet instances;
-  //      instances.insert(&one);
-  //      instances.insert(&two);
-  //      instances.insert(&three);
-  //      for (Keyed::instance_iter ii(Keyed::beginInstances()), iend(Keyed::endInstances());
-  //           ii != iend; ++ii)
-  //      {
-  //          Keyed& ref = *ii;
-  //          ensure_equals("spurious instance", instances.erase(&ref), 1);
-  //      }
-  //      ensure_equals("unreported instance", instances.size(), 0);
-  //  }
+        // Use a somewhat different approach to order independence with
+        // beginInstances(): explicitly capture the instances we know in a
+        // set, and delete them as we iterate through.
+        typedef std::set<Keyed*> InstanceSet;
+        InstanceSet instances;
+        instances.insert(&one);
+        instances.insert(&two);
+        instances.insert(&three);
+        for (Keyed::instance_iter ii(Keyed::beginInstances()), iend(Keyed::endInstances());
+             ii != iend; ++ii)
+        {
+            Keyed& ref = *ii;
+            ensure_equals("spurious instance", instances.erase(&ref), 1);
+        }
+        ensure_equals("unreported instance", instances.size(), 0);
+    }
 
-  //  template<> template<>
-  //  void object::test<4>()
-  //  {
-  //      Unkeyed one, two, three;
-  //      typedef std::set<Unkeyed*> KeySet;
-  //  
-  //      KeySet instances;
-  //      instances.insert(&one);
-  //      instances.insert(&two);
-  //      instances.insert(&three);
-	
-		//for (Unkeyed::instance_iter ii(Unkeyed::beginInstances()), iend(Unkeyed::endInstances()); ii != iend; ++ii)
-		//{
-		//	Unkeyed& ref = *ii;
-		//	ensure_equals("spurious instance", instances.erase(&ref), 1);
-		//}
-	
-  //      ensure_equals("unreported instance", instances.size(), 0);
-  //  }
+    template<> template<>
+    void object::test<4>()
+    {
+        Unkeyed one, two, three;
+        typedef std::set<Unkeyed*> KeySet;
+    
+        KeySet instances;
+        instances.insert(&one);
+        instances.insert(&two);
+        instances.insert(&three);
+
+		for (Unkeyed::instance_iter ii(Unkeyed::beginInstances()), iend(Unkeyed::endInstances()); ii != iend; ++ii)
+		{
+			Unkeyed& ref = *ii;
+			ensure_equals("spurious instance", instances.erase(&ref), 1);
+		}
+
+        ensure_equals("unreported instance", instances.size(), 0);
+    }
 } // namespace tut

indra/llinventory/CMakeLists.txt

 
 #add unit tests
 if (LL_TESTS)
-	INCLUDE(LLAddBuildTest)
-	SET(llinventory_TEST_SOURCE_FILES
-	  # no real unit tests yet!
-	  )
-	LL_ADD_PROJECT_UNIT_TESTS(llinventory "${llinventory_TEST_SOURCE_FILES}")
+    INCLUDE(LLAddBuildTest)
+    SET(llinventory_TEST_SOURCE_FILES
+      # no real unit tests yet!
+      )
+    LL_ADD_PROJECT_UNIT_TESTS(llinventory "${llinventory_TEST_SOURCE_FILES}")
 
-	#set(TEST_DEBUG on)
-	set(test_libs llinventory ${LLMESSAGE_LIBRARIES} ${LLVFS_LIBRARIES} ${LLMATH_LIBRARIES} ${LLCOMMON_LIBRARIES} ${WINDOWS_LIBRARIES})
-	LL_ADD_INTEGRATION_TEST(inventorymisc "" "${test_libs}")
-	LL_ADD_INTEGRATION_TEST(llparcel "" "${test_libs}")
+    #set(TEST_DEBUG on)
+    set(test_libs llinventory ${LLMESSAGE_LIBRARIES} ${LLVFS_LIBRARIES} ${LLMATH_LIBRARIES} ${LLCOMMON_LIBRARIES} ${WINDOWS_LIBRARIES})
+    LL_ADD_INTEGRATION_TEST(inventorymisc "" "${test_libs}")
+    LL_ADD_INTEGRATION_TEST(llparcel "" "${test_libs}")
 endif (LL_TESTS)

indra/llkdu/CMakeLists.txt

 
 set(llkdu_HEADER_FILES
     CMakeLists.txt
-	
+    
     llimagej2ckdu.h
     llkdumem.h
     )

indra/llmath/llcalc.cpp

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

indra/llmath/llcalc.h

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

indra/llmath/llcalcparser.cpp

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

indra/llmath/llcalcparser.h

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

indra/llmessage/CMakeLists.txt

     llpacketbuffer.cpp
     llpacketring.cpp
     llpartdata.cpp
+    llproxy.cpp
     llpumpio.cpp
     llregionpresenceverifier.cpp
     llsdappservices.cpp
     llpacketring.h
     llpartdata.h
     llpumpio.h
+    llproxy.h
     llqueryflags.h
     llregionflags.h
     llregionhandle.h

indra/llmessage/llcurl.cpp

 /**
- * @file llcurl.h
+ * @file llcurl.cpp
  * @author Zero / Donovan
  * @date 2006-10-15
  * @brief Implementation of wrapper around libcurl.
  * $/LicenseInfo$