aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden
diff options
context:
space:
mode:
authorMcCabe Maxsted2012-02-18 00:21:02 -0700
committerMcCabe Maxsted2012-02-18 00:21:02 -0700
commit584112aff112409e17c13e8d59ff483431696fcf (patch)
treec3cbb9fedfb8366c17375609ea2a6b4b7c3780b3 /linden
parentFixed tons of 'LLXMLTree invalid token' warnings spamming the log and made th... (diff)
parentdisable voice if ParcelVoiceInfoRequest response is malformed. (diff)
downloadmeta-impy-584112aff112409e17c13e8d59ff483431696fcf.zip
meta-impy-584112aff112409e17c13e8d59ff483431696fcf.tar.gz
meta-impy-584112aff112409e17c13e8d59ff483431696fcf.tar.bz2
meta-impy-584112aff112409e17c13e8d59ff483431696fcf.tar.xz
Merge remote-tracking branch 'armin/next' into next
Diffstat (limited to '')
-rw-r--r--linden/indra/cmake/00-Common.cmake12
-rw-r--r--linden/indra/cmake/GStreamer010Plugin.cmake23
-rw-r--r--linden/indra/cmake/Variables.cmake26
-rw-r--r--linden/indra/cmake/ViewerMiscLibs.cmake6
-rw-r--r--linden/indra/cmake/WebKitLibPlugin.cmake7
-rw-r--r--linden/indra/cmake/ZLIB.cmake6
-rwxr-xr-xlinden/indra/develop.py20
-rw-r--r--linden/indra/llui/llctrlselectioninterface.cpp4
-rw-r--r--linden/indra/llui/llctrlselectioninterface.h4
-rw-r--r--linden/indra/llxml/llxmlnode.cpp5
-rw-r--r--linden/indra/llxml/llxmlnode.h2
-rwxr-xr-xlinden/indra/media_plugins/webkit/media_plugin_webkit.cpp3
-rw-r--r--linden/indra/newview/llfloaterabout.cpp5
-rw-r--r--linden/indra/newview/llfloaterregioninfo.cpp11
-rw-r--r--linden/indra/newview/llvoiceclient.cpp31
-rwxr-xr-xlinden/indra/newview/viewer_manifest.py89
-rwxr-xr-xlinden/install.xml97
-rwxr-xr-xlinden/scripts/install.py7
18 files changed, 191 insertions, 167 deletions
diff --git a/linden/indra/cmake/00-Common.cmake b/linden/indra/cmake/00-Common.cmake
index 7d50f25..81bfbdf 100644
--- a/linden/indra/cmake/00-Common.cmake
+++ b/linden/indra/cmake/00-Common.cmake
@@ -195,7 +195,8 @@ if (LINUX)
195 # This rather needs to be done elsewhere 195 # This rather needs to be done elsewhere
196 # anyway these are the flags for the 64bit releases: 196 # anyway these are the flags for the 64bit releases:
197 add_definitions(-DLINUX64=1 -pipe) 197 add_definitions(-DLINUX64=1 -pipe)
198 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fomit-frame-pointer -mmmx -msse -mfpmath=sse -msse2 -ffast-math -ftree-vectorize -fweb -fexpensive-optimizations -frename-registers") 198 # with -ffast-math lloctree crashes teleporting to mega regions, and it didn't do much for us anyway
199 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fomit-frame-pointer -mmmx -msse -mfpmath=sse -msse2 -ftree-vectorize -fweb -fexpensive-optimizations -frename-registers")
199 endif (${ARCH} STREQUAL "x86_64") 200 endif (${ARCH} STREQUAL "x86_64")
200 set(CMAKE_CXX_FLAGS_RELEASESSE2 "${CMAKE_CXX_FLAGS_RELEASESSE2} -mfpmath=sse2 -msse2") 201 set(CMAKE_CXX_FLAGS_RELEASESSE2 "${CMAKE_CXX_FLAGS_RELEASESSE2} -mfpmath=sse2 -msse2")
201 endif (VIEWER) 202 endif (VIEWER)
@@ -232,6 +233,15 @@ if (LINUX OR DARWIN)
232 233
233 set(CMAKE_C_FLAGS "${GCC_WARNINGS} ${CMAKE_C_FLAGS}") 234 set(CMAKE_C_FLAGS "${GCC_WARNINGS} ${CMAKE_C_FLAGS}")
234 set(CMAKE_CXX_FLAGS "${GCC_CXX_WARNINGS} ${CMAKE_CXX_FLAGS}") 235 set(CMAKE_CXX_FLAGS "${GCC_CXX_WARNINGS} ${CMAKE_CXX_FLAGS}")
236
237 if (WORD_SIZE EQUAL 32)
238 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
239 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32")
240 elseif (WORD_SIZE EQUAL 64)
241 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64")
242 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64")
243 endif (WORD_SIZE EQUAL 32)
244
235endif (LINUX OR DARWIN) 245endif (LINUX OR DARWIN)
236 246
237 247
diff --git a/linden/indra/cmake/GStreamer010Plugin.cmake b/linden/indra/cmake/GStreamer010Plugin.cmake
index 9d2c553..d05cb9c 100644
--- a/linden/indra/cmake/GStreamer010Plugin.cmake
+++ b/linden/indra/cmake/GStreamer010Plugin.cmake
@@ -21,13 +21,22 @@ else (STANDALONE)
21 ${LIBS_PREBUILT_DIR}/include/libxml2 21 ${LIBS_PREBUILT_DIR}/include/libxml2
22 ) 22 )
23 else (WINDOWS) 23 else (WINDOWS)
24 use_prebuilt_binary(glib) # gstreamer needs glib 24 use_prebuilt_binary(glib) # gstreamer needs glib
25 use_prebuilt_binary(libxml) 25 if (DARWIN)
26 set(GSTREAMER010_INCLUDE_DIRS 26
27 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gstreamer-0.10 27 use_prebuilt_binary(libxml)
28 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0 28 set(GSTREAMER010_INCLUDE_DIRS
29 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2 29 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gstreamer-0.10
30 ) 30 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0
31 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2
32 )
33 else (DARWIN)
34 add_definitions(-DGST_DISABLE_XML -DGST_DISABLE_LOADSAVE)
35 set(GSTREAMER010_INCLUDE_DIRS
36 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gstreamer-0.10
37 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0
38 )
39 endif (DARWIN)
31 endif (WINDOWS) 40 endif (WINDOWS)
32 41
33endif (STANDALONE) 42endif (STANDALONE)
diff --git a/linden/indra/cmake/Variables.cmake b/linden/indra/cmake/Variables.cmake
index eb9c004..6b7ded3 100644
--- a/linden/indra/cmake/Variables.cmake
+++ b/linden/indra/cmake/Variables.cmake
@@ -50,8 +50,30 @@ endif (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
50 50
51if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") 51if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
52 set(LINUX ON BOOl FORCE) 52 set(LINUX ON BOOl FORCE)
53 execute_process(COMMAND uname -m COMMAND sed s/i.86/i686/ 53
54 OUTPUT_VARIABLE ARCH OUTPUT_STRIP_TRAILING_WHITESPACE) 54 # If someone has specified a word size, use that to determine the
55 # architecture. Otherwise, let the architecture specify the word size.
56
57 if ("$ENV{WORD_SIZE}" MATCHES "32")
58 set(WORD_SIZE 32)
59 elseif ("$ENV{WORD_SIZE}" MATCHES "64")
60 set(WORD_SIZE 64)
61 endif ()
62
63 if (WORD_SIZE EQUAL 32)
64 set(ARCH i686)
65 elseif (WORD_SIZE EQUAL 64)
66 set(ARCH x86_64)
67 else (WORD_SIZE EQUAL 32)
68 execute_process(COMMAND uname -m COMMAND sed s/i.86/i686/
69 OUTPUT_VARIABLE ARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
70 if (ARCH STREQUAL x86_64)
71 set(WORD_SIZE 64)
72 else (ARCH STREQUAL x86_64)
73 set(WORD_SIZE 32)
74 endif (ARCH STREQUAL x86_64)
75 endif (WORD_SIZE EQUAL 32)
76
55 set(LL_ARCH ${ARCH}_linux) 77 set(LL_ARCH ${ARCH}_linux)
56 set(LL_ARCH_DIR ${ARCH}-linux) 78 set(LL_ARCH_DIR ${ARCH}-linux)
57endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux") 79endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
diff --git a/linden/indra/cmake/ViewerMiscLibs.cmake b/linden/indra/cmake/ViewerMiscLibs.cmake
index 38d0444..bf33490 100644
--- a/linden/indra/cmake/ViewerMiscLibs.cmake
+++ b/linden/indra/cmake/ViewerMiscLibs.cmake
@@ -5,18 +5,12 @@ if (NOT STANDALONE)
5 use_prebuilt_binary(libuuid) 5 use_prebuilt_binary(libuuid)
6 use_prebuilt_binary(vivox) 6 use_prebuilt_binary(vivox)
7 if(LINUX) 7 if(LINUX)
8 if (${ARCH} STREQUAL "x86_64")
9 use_prebuilt_binary(32bitcompatibilitylibs)
10 endif (${ARCH} STREQUAL "x86_64")
11 use_prebuilt_binary(fontconfig) 8 use_prebuilt_binary(fontconfig)
12 endif(LINUX) 9 endif(LINUX)
13else (NOT STANDALONE) 10else (NOT STANDALONE)
14 # Download there even when using standalone. 11 # Download there even when using standalone.
15 set(STANDALONE OFF) 12 set(STANDALONE OFF)
16 use_prebuilt_binary(vivox) 13 use_prebuilt_binary(vivox)
17 if(LINUX AND ${ARCH} STREQUAL "x86_64")
18 use_prebuilt_binary(32bitcompatibilitylibs)
19 endif(LINUX AND ${ARCH} STREQUAL "x86_64")
20 set(STANDALONE ON) 14 set(STANDALONE ON)
21endif(NOT STANDALONE) 15endif(NOT STANDALONE)
22 16
diff --git a/linden/indra/cmake/WebKitLibPlugin.cmake b/linden/indra/cmake/WebKitLibPlugin.cmake
index a4befa4..034eed5 100644
--- a/linden/indra/cmake/WebKitLibPlugin.cmake
+++ b/linden/indra/cmake/WebKitLibPlugin.cmake
@@ -29,6 +29,9 @@ if (STANDALONE)
29 set(WEBKITLIBPLUGIN OFF CACHE BOOL 29 set(WEBKITLIBPLUGIN OFF CACHE BOOL
30 "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.") 30 "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.")
31else (STANDALONE) 31else (STANDALONE)
32 if(LINUX)
33 use_prebuilt_binary(kokua-qt)
34 endif(LINUX)
32 use_prebuilt_binary(llqtwebkit) 35 use_prebuilt_binary(llqtwebkit)
33 set(WEBKITLIBPLUGIN ON CACHE BOOL 36 set(WEBKITLIBPLUGIN ON CACHE BOOL
34 "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.") 37 "WEBKITLIBPLUGIN support for the llplugin/llmedia test apps.")
@@ -62,8 +65,6 @@ elseif (LINUX)
62 else (STANDALONE) 65 else (STANDALONE)
63 set(WEBKIT_PLUGIN_LIBRARIES 66 set(WEBKIT_PLUGIN_LIBRARIES
64 llqtwebkit 67 llqtwebkit
65 qgif
66 qjpeg
67 QtWebKit 68 QtWebKit
68 QtOpenGL 69 QtOpenGL
69 QtNetwork 70 QtNetwork
@@ -74,6 +75,8 @@ elseif (LINUX)
74 X11 75 X11
75 Xrender 76 Xrender
76 GL 77 GL
78 jscore
77 ) 79 )
80
78 endif (STANDALONE) 81 endif (STANDALONE)
79endif (WINDOWS) 82endif (WINDOWS)
diff --git a/linden/indra/cmake/ZLIB.cmake b/linden/indra/cmake/ZLIB.cmake
index 48e5130..8a16a0e 100644
--- a/linden/indra/cmake/ZLIB.cmake
+++ b/linden/indra/cmake/ZLIB.cmake
@@ -17,6 +17,10 @@ else (STANDALONE)
17 set(ZLIB_LIBRARIES z) 17 set(ZLIB_LIBRARIES z)
18 endif (WINDOWS) 18 endif (WINDOWS)
19 if (WINDOWS OR LINUX) 19 if (WINDOWS OR LINUX)
20 set(ZLIB_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/zlib) 20 if(LINUX AND ${ARCH} STREQUAL "x86_64")
21 set(ZLIB_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include)
22 else(LINUX AND ${ARCH} STREQUAL "x86_64")
23 set(ZLIB_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/zlib)
24 endif(LINUX AND ${ARCH} STREQUAL "x86_64")
21 endif (WINDOWS OR LINUX) 25 endif (WINDOWS OR LINUX)
22endif (STANDALONE) 26endif (STANDALONE)
diff --git a/linden/indra/develop.py b/linden/indra/develop.py
index 8b23b1d..2f07e9e 100755
--- a/linden/indra/develop.py
+++ b/linden/indra/develop.py
@@ -223,14 +223,26 @@ class UnixSetup(PlatformSetup):
223 223
224 def arch(self): 224 def arch(self):
225 cpu = os.uname()[-1] 225 cpu = os.uname()[-1]
226 word_size = os.environ.get('WORD_SIZE')
226 if cpu.endswith('386'): 227 if cpu.endswith('386'):
227 cpu = 'i386' 228 cpu = 'i386'
229 if word_size == '64':
230 cpu = 'x86_64'
228 elif cpu.endswith('86'): 231 elif cpu.endswith('86'):
229 cpu = 'i686' 232 if word_size == '64':
233 cpu = 'x86_64'
234 else:
235 cpu = 'i686'
230 elif cpu in ('x86_64'): 236 elif cpu in ('x86_64'):
231 cpu = 'x86_64' 237 if word_size == '32':
232 elif cpu in ('athlon',): 238 cpu = 'i686'
233 cpu = 'i686' 239 else:
240 cpu = 'x86_64'
241 elif cpu in ('athlon',):
242 if word_size == '64':
243 cpu = 'x86_64'
244 else:
245 cpu = 'i686'
234 elif cpu == 'Power Macintosh': 246 elif cpu == 'Power Macintosh':
235 cpu = 'ppc' 247 cpu = 'ppc'
236 return cpu 248 return cpu
diff --git a/linden/indra/llui/llctrlselectioninterface.cpp b/linden/indra/llui/llctrlselectioninterface.cpp
index dac0939..1111b9d 100644
--- a/linden/indra/llui/llctrlselectioninterface.cpp
+++ b/linden/indra/llui/llctrlselectioninterface.cpp
@@ -39,12 +39,12 @@
39LLCtrlSelectionInterface::~LLCtrlSelectionInterface() 39LLCtrlSelectionInterface::~LLCtrlSelectionInterface()
40{ } 40{ }
41 41
42BOOL LLCtrlSelectionInterface::selectByValue(LLSD value) 42BOOL LLCtrlSelectionInterface::selectByValue(const LLSD& value)
43{ 43{
44 return setSelectedByValue(value, TRUE); 44 return setSelectedByValue(value, TRUE);
45} 45}
46 46
47BOOL LLCtrlSelectionInterface::deselectByValue(LLSD value) 47BOOL LLCtrlSelectionInterface::deselectByValue(const LLSD& value)
48{ 48{
49 return setSelectedByValue(value, FALSE); 49 return setSelectedByValue(value, FALSE);
50} 50}
diff --git a/linden/indra/llui/llctrlselectioninterface.h b/linden/indra/llui/llctrlselectioninterface.h
index 45727d6..7b5cd66 100644
--- a/linden/indra/llui/llctrlselectioninterface.h
+++ b/linden/indra/llui/llctrlselectioninterface.h
@@ -67,8 +67,8 @@ public:
67 virtual BOOL setCurrentByID( const LLUUID& id ) = 0; 67 virtual BOOL setCurrentByID( const LLUUID& id ) = 0;
68 virtual LLUUID getCurrentID() const = 0; 68 virtual LLUUID getCurrentID() const = 0;
69 69
70 BOOL selectByValue(const LLSD value); 70 BOOL selectByValue(const LLSD& value);
71 BOOL deselectByValue(const LLSD value); 71 BOOL deselectByValue(const LLSD& value);
72 virtual BOOL setSelectedByValue(const LLSD& value, BOOL selected) = 0; 72 virtual BOOL setSelectedByValue(const LLSD& value, BOOL selected) = 0;
73 virtual LLSD getSelectedValue() = 0; 73 virtual LLSD getSelectedValue() = 0;
74 74
diff --git a/linden/indra/llxml/llxmlnode.cpp b/linden/indra/llxml/llxmlnode.cpp
index 5bb5012..0e2f9a2 100644
--- a/linden/indra/llxml/llxmlnode.cpp
+++ b/linden/indra/llxml/llxmlnode.cpp
@@ -499,10 +499,7 @@ void XMLCALL StartXMLNode(void *userData,
499 pos += 2; 499 pos += 2;
500 } 500 }
501 501
502 if (parent) 502 parent->addChild(new_node);
503 {
504 parent->addChild(new_node);
505 }
506} 503}
507 504
508void XMLCALL EndXMLNode(void *userData, 505void XMLCALL EndXMLNode(void *userData,
diff --git a/linden/indra/llxml/llxmlnode.h b/linden/indra/llxml/llxmlnode.h
index ab1a772..d71a221 100644
--- a/linden/indra/llxml/llxmlnode.h
+++ b/linden/indra/llxml/llxmlnode.h
@@ -245,7 +245,7 @@ public:
245 void setFloatValue(const F32 value, Encoding encoding = ENCODING_DEFAULT, U32 precision = 0) { setFloatValue(1, &value, encoding); } 245 void setFloatValue(const F32 value, Encoding encoding = ENCODING_DEFAULT, U32 precision = 0) { setFloatValue(1, &value, encoding); }
246 void setDoubleValue(const F64 value, Encoding encoding = ENCODING_DEFAULT, U32 precision = 0) { setDoubleValue(1, &value, encoding); } 246 void setDoubleValue(const F64 value, Encoding encoding = ENCODING_DEFAULT, U32 precision = 0) { setDoubleValue(1, &value, encoding); }
247 void setStringValue(const std::string& value) { setStringValue(1, &value); } 247 void setStringValue(const std::string& value) { setStringValue(1, &value); }
248 void setUUIDValue(const LLUUID value) { setUUIDValue(1, &value); } 248 void setUUIDValue(const LLUUID& value) { setUUIDValue(1, &value); }
249 void setNodeRefValue(const LLXMLNode *value) { setNodeRefValue(1, &value); } 249 void setNodeRefValue(const LLXMLNode *value) { setNodeRefValue(1, &value); }
250 250
251 void setBoolValue(U32 length, const BOOL *array); 251 void setBoolValue(U32 length, const BOOL *array);
diff --git a/linden/indra/media_plugins/webkit/media_plugin_webkit.cpp b/linden/indra/media_plugins/webkit/media_plugin_webkit.cpp
index 4a00557..2cae8d2 100755
--- a/linden/indra/media_plugins/webkit/media_plugin_webkit.cpp
+++ b/linden/indra/media_plugins/webkit/media_plugin_webkit.cpp
@@ -81,6 +81,7 @@ extern "C" {
81#ifdef LL_STANDALONE 81#ifdef LL_STANDALONE
82#include <qglobal.h> 82#include <qglobal.h>
83#elif defined(LL_LINUX) 83#elif defined(LL_LINUX)
84
84// We don't provide Qt headers for non-standalone, therefore define this here. 85// We don't provide Qt headers for non-standalone, therefore define this here.
85// Our prebuilt is built with QT_NAMESPACE undefined. 86// Our prebuilt is built with QT_NAMESPACE undefined.
86#define QT_MANGLE_NAMESPACE(name) name 87#define QT_MANGLE_NAMESPACE(name) name
@@ -1156,7 +1157,9 @@ void MediaPluginWebKit::receiveMessage(const char *message_string)
1156 std::string url = message_in.getValue("url"); 1157 std::string url = message_in.getValue("url");
1157 if ( 404 == code ) // browser lib only supports 404 right now 1158 if ( 404 == code ) // browser lib only supports 404 right now
1158 { 1159 {
1160#if LLQTWEBKIT_API_VERSION < 8
1159 LLQtWebKit::getInstance()->set404RedirectUrl( mBrowserWindowId, url ); 1161 LLQtWebKit::getInstance()->set404RedirectUrl( mBrowserWindowId, url );
1162#endif
1160 }; 1163 };
1161 } 1164 }
1162 else if(message_name == "set_user_agent") 1165 else if(message_name == "set_user_agent")
diff --git a/linden/indra/newview/llfloaterabout.cpp b/linden/indra/newview/llfloaterabout.cpp
index 13795e5..06bee7d 100644
--- a/linden/indra/newview/llfloaterabout.cpp
+++ b/linden/indra/newview/llfloaterabout.cpp
@@ -261,8 +261,11 @@ LLFloaterAbout::LLFloaterAbout()
261 support.append("\n"); 261 support.append("\n");
262 262
263 // TODO: Implement media plugin version query 263 // TODO: Implement media plugin version query
264 264#if LL_LINUX
265 support.append("Qt Webkit Version: 4.7.4 (version number hard-coded)");
266#else
265 support.append("Qt Webkit Version: 4.6 (version number hard-coded)"); 267 support.append("Qt Webkit Version: 4.6 (version number hard-coded)");
268#endif
266 support.append("\n"); 269 support.append("\n");
267 270
268 if (gPacketsIn > 0) 271 if (gPacketsIn > 0)
diff --git a/linden/indra/newview/llfloaterregioninfo.cpp b/linden/indra/newview/llfloaterregioninfo.cpp
index 60bdfcd..505f8e6 100644
--- a/linden/indra/newview/llfloaterregioninfo.cpp
+++ b/linden/indra/newview/llfloaterregioninfo.cpp
@@ -1739,11 +1739,7 @@ void LLPanelEstateInfo::onClickRemoveEstateManager(void* user_data)
1739//--------------------------------------------------------------------------- 1739//---------------------------------------------------------------------------
1740// Kick from estate methods 1740// Kick from estate methods
1741//--------------------------------------------------------------------------- 1741//---------------------------------------------------------------------------
1742struct LLKickFromEstateInfo 1742
1743{
1744 LLPanelEstateInfo *mEstatePanelp;
1745 LLUUID mAgentID;
1746};
1747 1743
1748void LLPanelEstateInfo::onClickKickUser(void *user_data) 1744void LLPanelEstateInfo::onClickKickUser(void *user_data)
1749{ 1745{
@@ -1770,10 +1766,7 @@ void LLPanelEstateInfo::onKickUserCommit(const std::vector<std::string>& names,
1770 LLPanelEstateInfo* self = (LLPanelEstateInfo*)userdata; 1766 LLPanelEstateInfo* self = (LLPanelEstateInfo*)userdata;
1771 if(!self) return; 1767 if(!self) return;
1772 1768
1773 //keep track of what user they want to kick and other misc info 1769
1774 LLKickFromEstateInfo *kick_info = new LLKickFromEstateInfo();
1775 kick_info->mEstatePanelp = self;
1776 kick_info->mAgentID = ids[0];
1777 1770
1778 //Bring up a confirmation dialog 1771 //Bring up a confirmation dialog
1779 LLSD args; 1772 LLSD args;
diff --git a/linden/indra/newview/llvoiceclient.cpp b/linden/indra/newview/llvoiceclient.cpp
index 7761605..2035b62 100644
--- a/linden/indra/newview/llvoiceclient.cpp
+++ b/linden/indra/newview/llvoiceclient.cpp
@@ -1054,6 +1054,11 @@ void LLVoiceClientCapResponder::result(const LLSD& content)
1054 1054
1055 gVoiceClient->setSpatialChannel(uri, credentials, mResponseID); 1055 gVoiceClient->setSpatialChannel(uri, credentials, mResponseID);
1056 } 1056 }
1057 else
1058 {
1059 llwarns << "ParcelVoiceInfoRequest response malformed, disabling voice." << llendl;
1060 gVoiceClient->close();
1061 }
1057} 1062}
1058 1063
1059 1064
@@ -1212,13 +1217,22 @@ void LLVoiceClient::terminate()
1212 // ms_sleep(2000); 1217 // ms_sleep(2000);
1213 gVoiceClient->connectorShutdown(); 1218 gVoiceClient->connectorShutdown();
1214 gVoiceClient->closeSocket(); // Need to do this now -- bad things happen if the destructor does it later. 1219 gVoiceClient->closeSocket(); // Need to do this now -- bad things happen if the destructor does it later.
1215 1220
1216 // This will do unpleasant things on windows. 1221 LL_DEBUGS("IdleCallbacks") << "IdleCallbacks deleteFunction "
1217// killGateway(); 1222 << "called from LLVoiceClient" << LL_ENDL;
1218 1223 gIdleCallbacks.deleteFunction(idle, gVoiceClient);
1224
1225 if (isGatewayRunning())
1226 {
1227 // This will do unpleasant things on windows.
1228 // AW: no unpleasant things observed on windows,
1229 // guess they came from sloppy cleanup.
1230 killGateway();
1231 }
1232
1219 // Don't do this anymore -- LLSingleton will take care of deleting the object. 1233 // Don't do this anymore -- LLSingleton will take care of deleting the object.
1220// delete gVoiceClient; 1234// delete gVoiceClient;
1221 1235
1222 // Hint to other code not to access the voice client anymore. 1236 // Hint to other code not to access the voice client anymore.
1223 gVoiceClient = NULL; 1237 gVoiceClient = NULL;
1224 } 1238 }
@@ -1765,11 +1779,13 @@ void LLVoiceClient::close()
1765{ 1779{
1766 LL_DEBUGS("VoiceSession") << "Cancel Session: LLVoiceClient::close() called." 1780 LL_DEBUGS("VoiceSession") << "Cancel Session: LLVoiceClient::close() called."
1767 << llendl; 1781 << llendl;
1782 mAccountActive = false;
1768 setState(stateDisableCleanup); 1783 setState(stateDisableCleanup);
1769} 1784}
1770 1785
1771void LLVoiceClient::start() 1786void LLVoiceClient::start()
1772{ 1787{
1788 mAccountActive = true;
1773 setState(stateStart); 1789 setState(stateStart);
1774} 1790}
1775 1791
@@ -7210,6 +7226,11 @@ class LLViewerParcelVoiceInfo : public LLHTTPNode
7210 gVoiceClient->setPIRCapResponseID(response_id); 7226 gVoiceClient->setPIRCapResponseID(response_id);
7211 gVoiceClient->setSpatialChannel(uri, credentials, response_id); 7227 gVoiceClient->setSpatialChannel(uri, credentials, response_id);
7212 } 7228 }
7229 else
7230 {
7231 llwarns << "ParcelVoiceInfoRequest response malformed, disabling voice." << llendl;
7232 gVoiceClient->close();
7233 }
7213 } 7234 }
7214 } 7235 }
7215}; 7236};
diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py
index a0b9d77..c13cf1a 100755
--- a/linden/indra/newview/viewer_manifest.py
+++ b/linden/indra/newview/viewer_manifest.py
@@ -933,13 +933,16 @@ class Linux_i686Manifest(LinuxManifest):
933 self.path("libSDL-1.2.so.0") 933 self.path("libSDL-1.2.so.0")
934 self.path("libELFIO.so") 934 self.path("libELFIO.so")
935 self.path("libopenjpeg.so.2") 935 self.path("libopenjpeg.so.2")
936 self.path("libxml2.so.2")
937 self.path("libz.so") 936 self.path("libz.so")
938 self.path("libz.so.1") 937 self.path("libz.so.1")
939 938
940 # OpenAL 939 # OpenAL
941 self.path("libopenal.so.1.12.854", "libopenal.so.1") 940 self.path("libalut.so")
942 self.path("libalut.so.0.1.0", "libalut.so.0") 941 self.path("libalut.so.0")
942 self.path("libalut.so.0.0.0")
943 self.path("libopenal.so")
944 self.path("libopenal.so.1")
945 self.path("libopenal.so.1.13.0")
943 946
944 # GTK+ and dependencies 947 # GTK+ and dependencies
945 ## Lets just use the system libraries for all of these: 948 ## Lets just use the system libraries for all of these:
@@ -1028,7 +1031,6 @@ class Linux_i686Manifest(LinuxManifest):
1028 self.end_prefix("bin") 1031 self.end_prefix("bin")
1029 1032
1030 if self.prefix(src="vivox-runtime/i686-linux", dst="lib"): 1033 if self.prefix(src="vivox-runtime/i686-linux", dst="lib"):
1031 self.path("libalut.so")
1032 self.path("libortp.so") 1034 self.path("libortp.so")
1033 self.path("libvivoxsdk.so") 1035 self.path("libvivoxsdk.so")
1034 self.end_prefix("lib") 1036 self.end_prefix("lib")
@@ -1057,22 +1059,37 @@ class Linux_x86_64Manifest(LinuxManifest):
1057 self.path("libapr-1.so.0") 1059 self.path("libapr-1.so.0")
1058 self.path("libaprutil-1.so.0") 1060 self.path("libaprutil-1.so.0")
1059 self.path("libdb-4.2.so") 1061 self.path("libdb-4.2.so")
1060 self.path("libcrypto.so.0.9.8") 1062 self.path("libcrypto.so")
1063 self.path("libcrypto.so.1.0.0")
1061 self.path("libexpat.so.1") 1064 self.path("libexpat.so.1")
1062 self.path("libhunspell-1.2.so.0.0.0", "libhunspell-1.2.so.0") 1065 self.path("libhunspell-1.2.so.0.0.0", "libhunspell-1.2.so.0")
1063 self.path("libssl.so.0.9.8") 1066 self.path("libssl.so")
1067 self.path("libssl.so.1.0.0")
1064 self.path("libuuid.so", "libuuid.so.1") 1068 self.path("libuuid.so", "libuuid.so.1")
1065 self.path("libSDL-1.2.so.0") 1069 self.path("libSDL-1.2.so.0")
1066 self.path("libELFIO.so") 1070 self.path("libELFIO.so")
1067 self.path("libjpeg.so.7") 1071 self.path("libjpeg.so.7")
1068 self.path("libpng12.so.0") 1072 self.path("libpng12.so.0")
1069 self.path("libopenjpeg.so.2") 1073 self.path("libopenjpeg.so.2")
1070 self.path("libxml2.so.2")
1071 #self.path("libz.so.1") #not needed
1072 1074
1075 self.path("libcares.so")
1076 self.path("libcares.so.2")
1077 self.path("libcares.so.2.0.0")
1078 self.path("libcurl.so")
1079 self.path("libcurl.so.4")
1080 self.path("libcurl.so.4.2.0")
1081 self.path("libz.so.1.2.5")
1082 self.path("libz.so.1")
1083 self.path("libz.so")
1073 # OpenAL 1084 # OpenAL
1074 self.path("libopenal.so.1.12.854", "libopenal.so.1") 1085
1075 self.path("libalut.so.0.1.0", "libalut.so.0") 1086 self.path("libopenal.so")
1087 self.path("libopenal.so.1")
1088 self.path("libopenal.so.1.13.0")
1089 self.path("libalut.so")
1090 self.path("libalut.so.0")
1091 self.path("libalut.so.0.0.0")
1092
1076 # GTK+ and dependencies 1093 # GTK+ and dependencies
1077 ## Lets just use the system libraries for all of these: 1094 ## Lets just use the system libraries for all of these:
1078 ##self.path("libatk-1.0.so.0") 1095 ##self.path("libatk-1.0.so.0")
@@ -1106,54 +1123,9 @@ class Linux_x86_64Manifest(LinuxManifest):
1106 #self.path("libgsttag-0.10.so.0") 1123 #self.path("libgsttag-0.10.so.0")
1107 #self.path("libgstvideo-0.10.so.0") 1124 #self.path("libgstvideo-0.10.so.0")
1108 1125
1109 ## Gstreamer plugin dependencies
1110 #self.path("libfaad.so.0")
1111 #self.path("libogg.so.0")
1112 #self.path("libtheora.so.0")
1113 #self.path("libvorbis.so.0")
1114 #self.path("libvorbisenc.so.2")
1115 #self.path("liboil-0.3.so.0")
1116 1126
1117 ## Gstreamer plugins
1118 #if self.prefix("gstreamer-plugins"):
1119 #self.path("libgstalsa.so")
1120 #self.path("libgstasf.so")
1121 #self.path("libgstaudioconvert.so")
1122 #self.path("libgstaudioresample.so")
1123 #self.path("libgstautodetect.so")
1124 #self.path("libgstavi.so")
1125 #self.path("libgstcoreelements.so")
1126 #self.path("libgstcoreindexers.so")
1127 #self.path("libgstdecodebin2.so")
1128 #self.path("libgstdecodebin.so")
1129 #self.path("libgstesd.so")
1130 #self.path("libgstfaad.so")
1131 #self.path("libgstffmpeg.so")
1132 #self.path("libgstffmpegcolorspace.so")
1133 #self.path("libgstgnomevfs.so")
1134 #self.path("libgsticydemux.so")
1135 #self.path("libgstid3demux.so")
1136 #self.path("libgstmpegdemux.so")
1137 #self.path("libgstmultifile.so")
1138 #self.path("libgstmultipart.so")
1139 #self.path("libgstogg.so")
1140 #self.path("libgstossaudio.so")
1141 #self.path("libgstplaybin.so")
1142 #self.path("libgstpulse.so")
1143 #self.path("libgstqtdemux.so")
1144 #self.path("libgstqueue2.so")
1145 #self.path("libgsttcp.so")
1146 #self.path("libgsttheora.so")
1147 #self.path("libgsttypefindfunctions.so")
1148 #self.path("libgstudp.so")
1149 #self.path("libgstvideoscale.so")
1150 #self.path("libgstvolume.so")
1151 #self.path("libgstvorbis.so")
1152 #self.path("libgstwavparse.so")
1153
1154 #self.end_prefix("gstreamer-plugins")
1155 self.end_prefix("lib64") 1127 self.end_prefix("lib64")
1156 1128
1157 1129
1158 # Vivox runtimes and libs 1130 # Vivox runtimes and libs
1159 if self.prefix(src="vivox-runtime/i686-linux", dst="bin"): 1131 if self.prefix(src="vivox-runtime/i686-linux", dst="bin"):
@@ -1169,9 +1141,12 @@ class Linux_x86_64Manifest(LinuxManifest):
1169 # 32bit libs needed for voice 1141 # 32bit libs needed for voice
1170 if self.prefix("../../libraries/x86_64-linux/lib_release_client/32bit-compat", dst="lib32"): 1142 if self.prefix("../../libraries/x86_64-linux/lib_release_client/32bit-compat", dst="lib32"):
1171 self.path("libalut.so") 1143 self.path("libalut.so")
1144 self.path("libalut.so.0")
1145 self.path("libalut.so.0.0.0")
1172 self.path("libidn.so.11") 1146 self.path("libidn.so.11")
1147 self.path("libopenal.so")
1173 self.path("libopenal.so.1") 1148 self.path("libopenal.so.1")
1174 # self.path("libortp.so") 1149 self.path("libopenal.so.1.13.0")
1175 self.path("libuuid.so.1") 1150 self.path("libuuid.so.1")
1176 self.end_prefix("lib32") 1151 self.end_prefix("lib32")
1177 1152
diff --git a/linden/install.xml b/linden/install.xml
index f757d80..e8fb391 100755
--- a/linden/install.xml
+++ b/linden/install.xml
@@ -153,9 +153,9 @@
153 <key>linux64</key> 153 <key>linux64</key>
154 <map> 154 <map>
155 <key>md5sum</key> 155 <key>md5sum</key>
156 <string>c4242416e0b2e642c0bf062a19a250e4</string> 156 <string>301a1317c7d5bebbdc396e1a4874175b</string>
157 <key>url</key> 157 <key>url</key>
158 <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/ares-1.3.0-linux64-20080909.tar.bz2</uri> 158 <uri>http://download.kokuaviewer.org/files/libs/ares-1.7.1-Linux-x86_64-20110405.tar.bz2</uri>
159 </map> 159 </map>
160 <key>windows</key> 160 <key>windows</key>
161 <map> 161 <map>
@@ -261,9 +261,9 @@
261 <key>linux64</key> 261 <key>linux64</key>
262 <map> 262 <map>
263 <key>md5sum</key> 263 <key>md5sum</key>
264 <string>6e9242d11d785f643f34d925a29967e7</string> 264 <string>7e698e37a1425d66f709163a36ce0b5a</string>
265 <key>url</key> 265 <key>url</key>
266 <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/curl-7.16.4-linux64-20080909.tar.bz2</uri> 266 <uri>http://download.kokuaviewer.org/files/libs/curl-7.21.4-Linux-x86_64-20110405.tar.bz2</uri>
267 </map> 267 </map>
268 <key>windows</key> 268 <key>windows</key>
269 <map> 269 <map>
@@ -416,9 +416,9 @@
416 <key>linux64</key> 416 <key>linux64</key>
417 <map> 417 <map>
418 <key>md5sum</key> 418 <key>md5sum</key>
419 <string>13b551e5deafbaa6cfd105fa072bdfba</string> 419 <string>d7242641aa40019af06214b1d2a10bec</string>
420 <key>url</key> 420 <key>url</key>
421 <uri>http://imprudenceviewer.org/download/libs/fontconfig-2.7.3-linux64-20091230.tar.bz2</uri> 421 <uri>http://download.kokuaviewer.org/files/test-builds/fontconfig-2.7.3-Linux-x86_64-20110805.tar.bz2</uri>
422 </map> 422 </map>
423 </map> 423 </map>
424 </map> 424 </map>
@@ -582,9 +582,9 @@
582 <key>linux64</key> 582 <key>linux64</key>
583 <map> 583 <map>
584 <key>md5sum</key> 584 <key>md5sum</key>
585 <string>58c11add6b275c163950364df5b2964a</string> 585 <string>f181d42b6f7b2e9ca68174dbf3d282a5</string>
586 <key>url</key> 586 <key>url</key>
587 <uri>http://imprudenceviewer.org/download/libs/glib-2.20.5-linux64-20100515.tar.bz2</uri> 587 <uri>http://download.kokuaviewer.org/files/test-builds/glib-2.24.2-Linux-x86_64-20110806.tar.bz2</uri>
588 </map> 588 </map>
589 </map> 589 </map>
590 </map> 590 </map>
@@ -714,9 +714,9 @@ cairo: Copyright © 2002 University of Southern California, Copyright © 2005 Re
714 <key>linux64</key> 714 <key>linux64</key>
715 <map> 715 <map>
716 <key>md5sum</key> 716 <key>md5sum</key>
717 <string>e8cb3f28379b7730004da44f04263936</string> 717 <string>e373ea5a705ec84de48c0dd9306d3dd5</string>
718 <key>url</key> 718 <key>url</key>
719 <uri>http://imprudenceviewer.org/download/libs/gtk-etc-linux64-20091231.tar.bz2</uri> 719 <uri>http://download.kokuaviewer.org/files/test-builds/gtk-etc-Linux-x86_64-20110806.tar.bz2</uri>
720 </map> 720 </map>
721 </map> 721 </map>
722 </map> 722 </map>
@@ -996,26 +996,34 @@ Portions copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura
996 <key>url</key> 996 <key>url</key>
997 <uri>http://imprudenceviewer.org/download/libs/libxml-2.6.27-darwin-20091107.tar.bz2</uri> 997 <uri>http://imprudenceviewer.org/download/libs/libxml-2.6.27-darwin-20091107.tar.bz2</uri>
998 </map> 998 </map>
999 </map>
1000 </map>
1001 <key>kokua-qt</key>
1002 <map>
1003 <key>license</key>
1004 <string>lgpl</string>
1005 <key>packages</key>
1006 <map>
999 <key>linux</key> 1007 <key>linux</key>
1000 <map> 1008 <map>
1001 <key>md5sum</key> 1009 <key>md5sum</key>
1002 <string>922f4bc6a8091d07a988b983cafe7a5a</string> 1010 <string>380775ee42191982c22fa5f5f5428250</string>
1003 <key>url</key> 1011 <key>url</key>
1004 <uri>http://imprudenceviewer.org/download/libs/libxml2-2.7.4-r1-linux-20091115.tar.bz2</uri> 1012 <uri>http://download.kokuaviewer.org/files/libs/kokua-qt4.7.4-Linux-i686-20110620.tar.bz2</uri>
1005 </map> 1013 </map>
1006 <key>linux64</key> 1014 <key>linux64</key>
1007 <map> 1015 <map>
1008 <key>md5sum</key> 1016 <key>md5sum</key>
1009 <string>631df56daeac6aaf5be4c1e39dba6859</string> 1017 <string>4c6c0f607f7cc9ebaa5446fd9ca3371a</string>
1010 <key>url</key> 1018 <key>url</key>
1011 <uri>http://imprudenceviewer.org/download/libs/libxml2-2.7.4-r1-linux64-20091230.tar.bz2</uri> 1019 <uri>http://download.kokuaviewer.org/files/libs/kokua-qt4.7.4-Linux-x86_64-20110620.tar.bz2</uri>
1012 </map> 1020 </map>
1013 </map> 1021 </map>
1014 </map> 1022 </map>
1015 <key>llqtwebkit</key> 1023 <key>llqtwebkit</key>
1016 <map> 1024 <map>
1017 <key>license</key> 1025 <key>license</key>
1018 <string>lgpl</string> 1026 <string>gpl</string>
1019 <key>packages</key> 1027 <key>packages</key>
1020 <map> 1028 <map>
1021 <key>darwin</key> 1029 <key>darwin</key>
@@ -1028,16 +1036,16 @@ Portions copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura
1028 <key>linux</key> 1036 <key>linux</key>
1029 <map> 1037 <map>
1030 <key>md5sum</key> 1038 <key>md5sum</key>
1031 <string>5d743c93b970abe685b185de83001a6e</string> 1039 <string>d2f69c0d72e28037f5377538d4ec8dfe</string>
1032 <key>url</key> 1040 <key>url</key>
1033 <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-linux-qt4.6-20100923.tar.bz2</uri> 1041 <uri>http://download.kokuaviewer.org/files/libs/kokua-llqtwebkit-Linux-i686-20110620.tar.bz2</uri>
1034 </map> 1042 </map>
1035 <key>linux64</key> 1043 <key>linux64</key>
1036 <map> 1044 <map>
1037 <key>md5sum</key> 1045 <key>md5sum</key>
1038 <string>d5deaf897fe8effa3d3537c875060379</string> 1046 <string>28fe808f318a2b66146e4bbcf1f96306</string>
1039 <key>url</key> 1047 <key>url</key>
1040 <uri>http://imprudenceviewer.org/download/libs/llqtwebkit-linux64-20100907.tar.bz2</uri> 1048 <uri>http://download.kokuaviewer.org/files/libs/kokua-llqtwebkit-Linux-x86_64-20110620.tar.bz2</uri>
1041 </map> 1049 </map>
1042 <key>windows</key> 1050 <key>windows</key>
1043 <map> 1051 <map>
@@ -1205,29 +1213,19 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn
1205 <key>url</key> 1213 <key>url</key>
1206 <uri>http://imprudenceviewer.org/download/libs/openal-darwin-20091118.tar.bz2</uri> 1214 <uri>http://imprudenceviewer.org/download/libs/openal-darwin-20091118.tar.bz2</uri>
1207 </map> 1215 </map>
1208<!-- openal compiled against pulse 0.9.10
1209 <key>linux</key>
1210 <map>
1211 <key>md5sum</key>
1212 <string>9dfdc055297355d04e04b905f92fbfad</string>
1213 <key>url</key>
1214 <uri>http://imprudenceviewer.org/download/libs/openal-linux32-20100426.tar.bz2</uri>
1215 </map>
1216-->
1217 <!-- openal compiled against pulse 0.9.21 -->
1218 <key>linux</key> 1216 <key>linux</key>
1219 <map> 1217 <map>
1220 <key>md5sum</key> 1218 <key>md5sum</key>
1221 <string>44f9bacc69a3d29ae0b46ed69ad7c2ce</string> 1219 <string>cb1acfef8c0c44e86b539bae0e255a2e</string>
1222 <key>url</key> 1220 <key>url</key>
1223 <uri>http://download.kokuaviewer.org/files/libs/openal-linux32-20110304.tar.bz2</uri> 1221 <uri>http://download.kokuaviewer.org/files/libs/openal-1.13-Linux-i686-20110708.tar.bz2</uri>
1224 </map> 1222 </map>
1225 <key>linux64</key> 1223 <key>linux64</key>
1226 <map> 1224 <map>
1227 <key>md5sum</key> 1225 <key>md5sum</key>
1228 <string>032848c2591a15e26c71998df3644cfc</string> 1226 <string>7b1039886ab997d2926604540426961f</string>
1229 <key>url</key> 1227 <key>url</key>
1230 <uri>http://download.kokuaviewer.org/files/libs/openal-linux64-pulse0.9.21-20110304.tar.bz2</uri> 1228 <uri>http://download.kokuaviewer.org/files/libs/openal-1.13-Linux-x86_64-20110708.tar.bz2</uri>
1231 </map> 1229 </map>
1232 <key>windows</key> 1230 <key>windows</key>
1233 <map> 1231 <map>
@@ -1268,9 +1266,9 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn
1268 <key>linux64</key> 1266 <key>linux64</key>
1269 <map> 1267 <map>
1270 <key>md5sum</key> 1268 <key>md5sum</key>
1271 <string>00b23f28a2457d9dabbaff0b29ee7323</string> 1269 <string>d02fd5e08e7300e418ac86f00a321b23</string>
1272 <key>url</key> 1270 <key>url</key>
1273 <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openSSL-0.9.8g-linux64-20080909.tar.bz2</uri> 1271 <uri>http://download.kokuaviewer.org/files/libs/openSSL-1.0.0-Linux-x86_64-20110405.tar.bz2</uri>
1274 </map> 1272 </map>
1275 <key>windows</key> 1273 <key>windows</key>
1276 <map> 1274 <map>
@@ -1508,29 +1506,6 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn
1508 </map> 1506 </map>
1509 </map> 1507 </map>
1510 </map> 1508 </map>
1511 <key>32bitcompatibilitylibs</key>
1512 <map>
1513 <key>copyright</key>
1514 <string>Copyrights: Libidn: Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
1515 Simon Josefsson. License GPL v3.0.
1516 Freealut, libuuid, openal-soft: see copyright and license of the
1517 according main packages.
1518 </string>
1519 <key>description</key>
1520 <string>32bit libraries needed for using voice</string>
1521 <key>license</key>
1522 <string>gpl</string>
1523 <key>packages</key>
1524 <map>
1525 <key>linux64</key>
1526 <map>
1527 <key>md5sum</key>
1528 <string>cbaafc55fb8b14283541791e82f13462</string>
1529 <key>url</key>
1530 <uri>http://imprudenceviewer.org/download/libs/linux64-32bitcompatibilitylibs-20100903.tar.bz2</uri>
1531 </map>
1532 </map>
1533 </map>
1534 <key>xmlrpc-epi</key> 1509 <key>xmlrpc-epi</key>
1535 <map> 1510 <map>
1536 <key>copyright</key> 1511 <key>copyright</key>
@@ -1598,9 +1573,9 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn
1598 <key>linux64</key> 1573 <key>linux64</key>
1599 <map> 1574 <map>
1600 <key>md5sum</key> 1575 <key>md5sum</key>
1601 <string>d085a173e3c05ff3bb0ee36ba42deb2c</string> 1576 <string>36716acbb29ed2adbc8d82d9ddbdec65</string>
1602 <key>url</key> 1577 <key>url</key>
1603 <uri>http://imprudenceviewer.org/download/libs/zlib-1.2.3-linux64-lenny-20091202.tar.bz2</uri> 1578 <uri>http://download.kokuaviewer.org/files/libs/z-lib-1.2.5-Linux-x86_64-20110405.tar.bz2</uri>
1604 </map> 1579 </map>
1605 <key>windows</key> 1580 <key>windows</key>
1606 <map> 1581 <map>
diff --git a/linden/scripts/install.py b/linden/scripts/install.py
index f09fc48..c69644b 100755
--- a/linden/scripts/install.py
+++ b/linden/scripts/install.py
@@ -805,11 +805,14 @@ def _get_platform():
805 } 805 }
806 this_platform = platform_map[sys.platform] 806 this_platform = platform_map[sys.platform]
807 if this_platform == 'linux': 807 if this_platform == 'linux':
808 if platform.architecture()[0] == '64bit': 808 word_size = os.environ.get('WORD_SIZE')
809 if platform.architecture()[0] == '64bit' or word_size == '64':
809 # TODO -- someday when install.py accepts a platform of the form 810 # TODO -- someday when install.py accepts a platform of the form
810 # os/arch/compiler/compiler_version then we can replace the 811 # os/arch/compiler/compiler_version then we can replace the
811 # 'linux64' platform with 'linux/x86_64/gcc/4.1' 812 # 'linux64' platform with 'linux/x86_64/gcc/4.1'
812 this_platform = 'linux64' 813 if not word_size == '32':
814 this_platform = 'linux64'
815
813 return this_platform 816 return this_platform
814 817
815def _getuser(): 818def _getuser():