aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden
diff options
context:
space:
mode:
Diffstat (limited to 'linden')
-rw-r--r--linden/indra/CMakeLists.txt4
-rw-r--r--linden/indra/cmake/00-Common.cmake2
-rw-r--r--linden/indra/cmake/UnixInstall.cmake4
-rw-r--r--linden/indra/cmake/Variables.cmake2
-rwxr-xr-x[-rw-r--r--]linden/indra/copy_win_scripts/start-client.py2
-rwxr-xr-xlinden/indra/develop.py8
-rw-r--r--linden/indra/linux_crash_logger/llcrashloggerlinux.cpp6
-rw-r--r--linden/indra/llcommon/llversionviewer.h9
-rwxr-xr-xlinden/indra/llcrashlogger/llcrashlogger.cpp6
-rw-r--r--linden/indra/mac_updater/mac_updater.cpp10
-rw-r--r--linden/indra/newview/CMakeLists.txt54
-rw-r--r--linden/indra/newview/English.lproj/InfoPlist.strings12
-rw-r--r--linden/indra/newview/Info-SecondLife.plist78
-rw-r--r--linden/indra/newview/SecondLife.nib/objects.xib518
-rw-r--r--linden/indra/newview/ViewerInstall.cmake2
-rw-r--r--linden/indra/newview/app_settings/settings.xml2
-rw-r--r--linden/indra/newview/installers/windows/installer_template.nsi1980
-rw-r--r--linden/indra/newview/installers/windows/lang_de.nsi114
-rw-r--r--linden/indra/newview/installers/windows/lang_en-us.nsi104
-rw-r--r--linden/indra/newview/installers/windows/lang_ja.nsi114
-rw-r--r--linden/indra/newview/installers/windows/lang_ko.nsi114
-rwxr-xr-xlinden/indra/newview/linux_tools/handle_secondlifeprotocol.sh2
-rwxr-xr-xlinden/indra/newview/linux_tools/wrapper.sh14
-rw-r--r--linden/indra/newview/llappviewer.cpp42
-rw-r--r--linden/indra/newview/llfloaterabout.cpp13
-rw-r--r--linden/indra/newview/llpanellogin.cpp17
-rw-r--r--linden/indra/newview/res/viewerRes.rc576
-rwxr-xr-xlinden/indra/newview/viewer_manifest.py52
-rw-r--r--linden/indra/win_updater/updater.cpp10
29 files changed, 1945 insertions, 1926 deletions
diff --git a/linden/indra/CMakeLists.txt b/linden/indra/CMakeLists.txt
index fac2afa..eb06191 100644
--- a/linden/indra/CMakeLists.txt
+++ b/linden/indra/CMakeLists.txt
@@ -13,7 +13,7 @@ if(COMMAND cmake_policy)
13 cmake_policy(SET CMP0003 OLD) 13 cmake_policy(SET CMP0003 OLD)
14endif(COMMAND cmake_policy) 14endif(COMMAND cmake_policy)
15 15
16project(SecondLife) 16project(Imprudence)
17 17
18set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") 18set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
19 19
@@ -77,7 +77,7 @@ if (VIEWER)
77 endif (LINUX) 77 endif (LINUX)
78 78
79 add_subdirectory(${VIEWER_PREFIX}newview) 79 add_subdirectory(${VIEWER_PREFIX}newview)
80 add_dependencies(viewer secondlife-bin) 80 add_dependencies(viewer imprudence-bin)
81endif (VIEWER) 81endif (VIEWER)
82 82
83# Linux builds the viewer and server in 2 separate projects 83# Linux builds the viewer and server in 2 separate projects
diff --git a/linden/indra/cmake/00-Common.cmake b/linden/indra/cmake/00-Common.cmake
index 240853a..977e588 100644
--- a/linden/indra/cmake/00-Common.cmake
+++ b/linden/indra/cmake/00-Common.cmake
@@ -146,7 +146,7 @@ if (LINUX)
146 endif (SERVER) 146 endif (SERVER)
147 147
148 if (VIEWER) 148 if (VIEWER)
149 add_definitions(-DAPPID=secondlife) 149 add_definitions(-DAPPID=imprudence)
150 add_definitions(-fvisibility=hidden) 150 add_definitions(-fvisibility=hidden)
151 if (NOT STANDALONE) 151 if (NOT STANDALONE)
152 # this stops us requiring a really recent glibc at runtime 152 # this stops us requiring a really recent glibc at runtime
diff --git a/linden/indra/cmake/UnixInstall.cmake b/linden/indra/cmake/UnixInstall.cmake
index 139be0a..0234dee 100644
--- a/linden/indra/cmake/UnixInstall.cmake
+++ b/linden/indra/cmake/UnixInstall.cmake
@@ -21,11 +21,11 @@ if (INSTALL)
21 set(INSTALL_SHARE_DIR ${INSTALL_PREFIX}/share CACHE PATH 21 set(INSTALL_SHARE_DIR ${INSTALL_PREFIX}/share CACHE PATH
22 "Installation directory for read-only shared files.") 22 "Installation directory for read-only shared files.")
23 23
24 set(APP_BINARY_DIR ${INSTALL_LIBRARY_DIR}/secondlife-${viewer_VERSION} 24 set(APP_BINARY_DIR ${INSTALL_LIBRARY_DIR}/imprudence-${viewer_VERSION}
25 CACHE PATH 25 CACHE PATH
26 "Installation directory for binaries.") 26 "Installation directory for binaries.")
27 27
28 set(APP_SHARE_DIR ${INSTALL_SHARE_DIR}/secondlife-${viewer_VERSION} 28 set(APP_SHARE_DIR ${INSTALL_SHARE_DIR}/imprudence-${viewer_VERSION}
29 CACHE PATH 29 CACHE PATH
30 "Installation directory for read-only data files.") 30 "Installation directory for read-only data files.")
31endif (INSTALL) 31endif (INSTALL)
diff --git a/linden/indra/cmake/Variables.cmake b/linden/indra/cmake/Variables.cmake
index 5868e4d..8f33a95 100644
--- a/linden/indra/cmake/Variables.cmake
+++ b/linden/indra/cmake/Variables.cmake
@@ -79,7 +79,7 @@ endif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
79set(GRID agni CACHE STRING "Target Grid") 79set(GRID agni CACHE STRING "Target Grid")
80 80
81set(VIEWER ON CACHE BOOL "Build Second Life viewer.") 81set(VIEWER ON CACHE BOOL "Build Second Life viewer.")
82set(VIEWER_CHANNEL "Developer" CACHE STRING "Viewer Channel Name") 82set(VIEWER_CHANNEL "Imprudence" CACHE STRING "Viewer Channel Name")
83set(VIEWER_LOGIN_CHANNEL ${VIEWER_CHANNEL} CACHE STRING "Fake login channel for A/B Testing") 83set(VIEWER_LOGIN_CHANNEL ${VIEWER_CHANNEL} CACHE STRING "Fake login channel for A/B Testing")
84 84
85set(STANDALONE OFF CACHE BOOL "Do not use Linden-supplied prebuilt libraries.") 85set(STANDALONE OFF CACHE BOOL "Do not use Linden-supplied prebuilt libraries.")
diff --git a/linden/indra/copy_win_scripts/start-client.py b/linden/indra/copy_win_scripts/start-client.py
index 5f7ff2f..ea2b67a 100644..100755
--- a/linden/indra/copy_win_scripts/start-client.py
+++ b/linden/indra/copy_win_scripts/start-client.py
@@ -32,7 +32,7 @@ def start_client(grid, slurl, build_config, my_args):
32 f = open("start-client.log", "w") 32 f = open("start-client.log", "w")
33 print >>f, "Viewer startup arguments:" 33 print >>f, "Viewer startup arguments:"
34 llstart.start("viewer", "../../newview", 34 llstart.start("viewer", "../../newview",
35 "%s/newview/%s/secondlife-bin.exe" % (build_path, build_config), 35 "%s/newview/%s/imprudence-bin.exe" % (build_path, build_config),
36 viewer_args, f) 36 viewer_args, f)
37 f.close() 37 f.close()
38 38
diff --git a/linden/indra/develop.py b/linden/indra/develop.py
index 8edfccc..a0b11c6 100755
--- a/linden/indra/develop.py
+++ b/linden/indra/develop.py
@@ -503,10 +503,10 @@ class WindowsSetup(PlatformSetup):
503 if self.gens[self.generator]['ver'] in [ r'8.0', r'9.0' ]: 503 if self.gens[self.generator]['ver'] in [ r'8.0', r'9.0' ]:
504 config = '\"%s|Win32\"' % config 504 config = '\"%s|Win32\"' % config
505 505
506 return "buildconsole Secondlife.sln /build %s" % config 506 return "buildconsole Imprudence.sln /build %s" % config
507 507
508 # devenv.com is CLI friendly, devenv.exe... not so much. 508 # devenv.com is CLI friendly, devenv.exe... not so much.
509 return ('"%sdevenv.com" Secondlife.sln /build %s' % 509 return ('"%sdevenv.com" Imprudence.sln /build %s' %
510 (self.find_visual_studio(), self.build_type)) 510 (self.find_visual_studio(), self.build_type))
511 511
512 # this override of run exists because the PlatformSetup version 512 # this override of run exists because the PlatformSetup version
@@ -527,9 +527,9 @@ class WindowsSetup(PlatformSetup):
527 for build_dir in self.build_dirs(): 527 for build_dir in self.build_dirs():
528 vstool_cmd = os.path.join('tools','vstool','VSTool.exe') \ 528 vstool_cmd = os.path.join('tools','vstool','VSTool.exe') \
529 + ' --solution ' \ 529 + ' --solution ' \
530 + os.path.join(build_dir,'SecondLife.sln') \ 530 + os.path.join(build_dir,'Imprudence.sln') \
531 + ' --config RelWithDebInfo' \ 531 + ' --config RelWithDebInfo' \
532 + ' --startup secondlife-bin' 532 + ' --startup imprudence-bin'
533 print 'Running %r in %r' % (vstool_cmd, os.getcwd()) 533 print 'Running %r in %r' % (vstool_cmd, os.getcwd())
534 self.run(vstool_cmd) 534 self.run(vstool_cmd)
535 535
diff --git a/linden/indra/linux_crash_logger/llcrashloggerlinux.cpp b/linden/indra/linux_crash_logger/llcrashloggerlinux.cpp
index aa2b82c..6ac9831 100644
--- a/linden/indra/linux_crash_logger/llcrashloggerlinux.cpp
+++ b/linden/indra/linux_crash_logger/llcrashloggerlinux.cpp
@@ -53,13 +53,13 @@
53 53
54// These need to be localized. 54// These need to be localized.
55static const char dialog_text[] = 55static const char dialog_text[] =
56"Second Life appears to have crashed or frozen last time it ran.\n" 56"Imprudence appears to have crashed or frozen last time it ran.\n"
57"This crash reporter collects information about your computer's hardware, operating system, and some Second Life logs, all of which are used for debugging purposes only.\n" 57"This crash reporter collects information about your computer's hardware, operating system, and some Imprudence logs, all of which are used for debugging purposes only.\n"
58"\n" 58"\n"
59"Send crash report?"; 59"Send crash report?";
60 60
61static const char dialog_title[] = 61static const char dialog_title[] =
62"Second Life Crash Logger"; 62"Imprudence Crash Logger";
63 63
64#if LL_GTK 64#if LL_GTK
65static void response_callback (GtkDialog *dialog, 65static void response_callback (GtkDialog *dialog,
diff --git a/linden/indra/llcommon/llversionviewer.h b/linden/indra/llcommon/llversionviewer.h
index 66462b3..bc42359 100644
--- a/linden/indra/llcommon/llversionviewer.h
+++ b/linden/indra/llcommon/llversionviewer.h
@@ -37,6 +37,13 @@ const S32 LL_VERSION_MINOR = 21;
37const S32 LL_VERSION_PATCH = 6; 37const S32 LL_VERSION_PATCH = 6;
38const S32 LL_VERSION_BUILD = 0; 38const S32 LL_VERSION_BUILD = 0;
39 39
40const char * const LL_CHANNEL = "Second Life Release"; 40const char * const LL_CHANNEL = "Imprudence";
41
42const char * const LL_VIEWER_NAME = "Second Life";
43const char * const IMP_VIEWER_NAME = "Imprudence";
44
45const S32 IMP_VERSION_MAJOR = 1;
46const S32 IMP_VERSION_MINOR = 0;
47const S32 IMP_VERSION_PATCH = 0;
41 48
42#endif 49#endif
diff --git a/linden/indra/llcrashlogger/llcrashlogger.cpp b/linden/indra/llcrashlogger/llcrashlogger.cpp
index 77274b0..b9a182c 100755
--- a/linden/indra/llcrashlogger/llcrashlogger.cpp
+++ b/linden/indra/llcrashlogger/llcrashlogger.cpp
@@ -172,7 +172,7 @@ void LLCrashLogger::gatherFiles()
172 { 172 {
173 // Figure out the filename of the second life log 173 // Figure out the filename of the second life log
174 LLCurl::setCAFile(gDirUtilp->getCAFile()); 174 LLCurl::setCAFile(gDirUtilp->getCAFile());
175 mFileMap["SecondLifeLog"] = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,"SecondLife.log"); 175 mFileMap["SecondLifeLog"] = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,"Imprudence.log");
176 mFileMap["SettingsXml"] = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS,"settings.xml"); 176 mFileMap["SettingsXml"] = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS,"settings.xml");
177 } 177 }
178 178
@@ -293,7 +293,7 @@ bool LLCrashLogger::sendCrashLogs()
293 updateApplication("Sending reports..."); 293 updateApplication("Sending reports...");
294 294
295 std::string dump_path = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, 295 std::string dump_path = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,
296 "SecondLifeCrashReport"); 296 "ImprudenceCrashReport");
297 std::string report_file = dump_path + ".log"; 297 std::string report_file = dump_path + ".log";
298 298
299 std::ofstream out_file(report_file.c_str()); 299 std::ofstream out_file(report_file.c_str());
@@ -330,7 +330,7 @@ bool LLCrashLogger::init()
330 gDirUtilp->initAppDirs("SecondLife"); 330 gDirUtilp->initAppDirs("SecondLife");
331 331
332 // Default to the product name "Second Life" (this is overridden by the -name argument) 332 // Default to the product name "Second Life" (this is overridden by the -name argument)
333 mProductName = "Second Life"; 333 mProductName = "Imprudence";
334 334
335 mCrashSettings.declareS32(CRASH_BEHAVIOR_SETTING, CRASH_BEHAVIOR_ASK, "Controls behavior when viewer crashes " 335 mCrashSettings.declareS32(CRASH_BEHAVIOR_SETTING, CRASH_BEHAVIOR_ASK, "Controls behavior when viewer crashes "
336 "(0 = ask before sending crash report, 1 = always send crash report, 2 = never send crash report)"); 336 "(0 = ask before sending crash report, 1 = always send crash report, 2 = never send crash report)");
diff --git a/linden/indra/mac_updater/mac_updater.cpp b/linden/indra/mac_updater/mac_updater.cpp
index c2f9f4d..7bffff5 100644
--- a/linden/indra/mac_updater/mac_updater.cpp
+++ b/linden/indra/mac_updater/mac_updater.cpp
@@ -378,7 +378,7 @@ int main(int argc, char **argv)
378 } 378 }
379 else 379 else
380 { 380 {
381 gProductName = "Second Life"; 381 gProductName = "Imprudence";
382 } 382 }
383 } 383 }
384 384
@@ -471,7 +471,7 @@ int main(int argc, char **argv)
471 err = CreateStandardAlert( 471 err = CreateStandardAlert(
472 kAlertStopAlert, 472 kAlertStopAlert,
473 CFSTR("Error"), 473 CFSTR("Error"),
474 CFSTR("An error occurred while updating Second Life. Please download the latest version from www.secondlife.com."), 474 CFSTR("An error occurred while updating Imprudence. Please download the latest version from http://imprudenceviewer.org/download/"),
475 &params, 475 &params,
476 &alert); 476 &alert);
477 477
@@ -934,7 +934,7 @@ void *updatethreadproc(void*)
934 934
935#endif // 0 *HACK for DEV-11935 935#endif // 0 *HACK for DEV-11935
936 936
937 strncat(temp, "/SecondLifeUpdate_XXXXXX", (sizeof(temp) - strlen(temp)) - 1); 937 strncat(temp, "/ImprudenceUpdate_XXXXXX", (sizeof(temp) - strlen(temp)) - 1);
938 if(mkdtemp(temp) == NULL) 938 if(mkdtemp(temp) == NULL)
939 { 939 {
940 throw 0; 940 throw 0;
@@ -952,7 +952,7 @@ void *updatethreadproc(void*)
952 952
953 chdir(tempDir); 953 chdir(tempDir);
954 954
955 snprintf(temp, sizeof(temp), "SecondLife.dmg"); 955 snprintf(temp, sizeof(temp), "Imprudence.dmg");
956 956
957 downloadFile = LLFile::fopen(temp, "wb"); /* Flawfinder: ignore */ 957 downloadFile = LLFile::fopen(temp, "wb"); /* Flawfinder: ignore */
958 if(downloadFile == NULL) 958 if(downloadFile == NULL)
@@ -999,7 +999,7 @@ void *updatethreadproc(void*)
999 // NOTE: we could add -private at the end of this command line to keep the image from showing up in the Finder, 999 // NOTE: we could add -private at the end of this command line to keep the image from showing up in the Finder,
1000 // but if our cleanup fails, this makes it much harder for the user to unmount the image. 1000 // but if our cleanup fails, this makes it much harder for the user to unmount the image.
1001 std::string mountOutput; 1001 std::string mountOutput;
1002 FILE* mounter = popen("hdiutil attach SecondLife.dmg -mountpoint mnt", "r"); /* Flawfinder: ignore */ 1002 FILE* mounter = popen("hdiutil attach Imprudence.dmg -mountpoint mnt", "r"); /* Flawfinder: ignore */
1003 1003
1004 if(mounter == NULL) 1004 if(mounter == NULL)
1005 { 1005 {
diff --git a/linden/indra/newview/CMakeLists.txt b/linden/indra/newview/CMakeLists.txt
index ae0feb6..af7812c 100644
--- a/linden/indra/newview/CMakeLists.txt
+++ b/linden/indra/newview/CMakeLists.txt
@@ -1265,15 +1265,15 @@ list(APPEND viewer_SOURCE_FILES ${viewer_HEADER_FILES})
1265set_source_files_properties(${viewer_HEADER_FILES} 1265set_source_files_properties(${viewer_HEADER_FILES}
1266 PROPERTIES HEADER_FILE_ONLY TRUE) 1266 PROPERTIES HEADER_FILE_ONLY TRUE)
1267 1267
1268add_executable(secondlife-bin 1268add_executable(imprudence-bin
1269 WIN32 1269 WIN32
1270 MACOSX_BUNDLE 1270 MACOSX_BUNDLE
1271 ${viewer_SOURCE_FILES} 1271 ${viewer_SOURCE_FILES}
1272 ) 1272 )
1273check_message_template(secondlife-bin) 1273check_message_template(imprudence-bin)
1274 1274
1275if (LLKDU_LIBRARY) 1275if (LLKDU_LIBRARY)
1276 add_dependencies(secondlife-bin ${LLKDU_LIBRARY}) 1276 add_dependencies(imprudence-bin ${LLKDU_LIBRARY})
1277endif (LLKDU_LIBRARY) 1277endif (LLKDU_LIBRARY)
1278 1278
1279set(PACKAGE OFF CACHE BOOL 1279set(PACKAGE OFF CACHE BOOL
@@ -1281,12 +1281,12 @@ set(PACKAGE OFF CACHE BOOL
1281 1281
1282if (WINDOWS) 1282if (WINDOWS)
1283 if(MSVC71) 1283 if(MSVC71)
1284 set(release_flags "/MAP:Release/secondlife-bin.map /MAPINFO:LINES") 1284 set(release_flags "/MAP:Release/imprudence-bin.map /MAPINFO:LINES")
1285 else(MSVC71) 1285 else(MSVC71)
1286 set(release_flags "/MAP:Release/secondlife-bin.map") 1286 set(release_flags "/MAP:Release/imprudence-bin.map")
1287 endif(MSVC71) 1287 endif(MSVC71)
1288 1288
1289 set_target_properties(secondlife-bin 1289 set_target_properties(imprudence-bin
1290 PROPERTIES 1290 PROPERTIES
1291 LINK_FLAGS "/debug /NODEFAULTLIB:MSVCRT /SUBSYSTEM:WINDOWS" 1291 LINK_FLAGS "/debug /NODEFAULTLIB:MSVCRT /SUBSYSTEM:WINDOWS"
1292 LINK_FLAGS_DEBUG "/NODEFAULTLIB:LIBCMT /NODEFAULTLIB:MSVCRTD" 1292 LINK_FLAGS_DEBUG "/NODEFAULTLIB:LIBCMT /NODEFAULTLIB:MSVCRTD"
@@ -1296,20 +1296,20 @@ if (WINDOWS)
1296 # sets the 'working directory' for debugging from visual studio. 1296 # sets the 'working directory' for debugging from visual studio.
1297 if (NOT UNATTENDED) 1297 if (NOT UNATTENDED)
1298 add_custom_command( 1298 add_custom_command(
1299 TARGET secondlife-bin PRE_BUILD 1299 TARGET imprudence-bin PRE_BUILD
1300 COMMAND ${CMAKE_SOURCE_DIR}/tools/vstool/vstool.exe 1300 COMMAND ${CMAKE_SOURCE_DIR}/tools/vstool/vstool.exe
1301 ARGS 1301 ARGS
1302 --solution 1302 --solution
1303 ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.sln 1303 ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.sln
1304 --workingdir 1304 --workingdir
1305 secondlife-bin 1305 imprudence-bin
1306 ${CMAKE_CURRENT_SOURCE_DIR} 1306 ${CMAKE_CURRENT_SOURCE_DIR}
1307 COMMENT "Setting the secondlife-bin working directory for debugging." 1307 COMMENT "Setting the imprudence-bin working directory for debugging."
1308 ) 1308 )
1309 endif (NOT UNATTENDED) 1309 endif (NOT UNATTENDED)
1310 1310
1311 add_custom_command( 1311 add_custom_command(
1312 TARGET secondlife-bin PRE_BUILD 1312 TARGET imprudence-bin PRE_BUILD
1313 COMMAND ${CMAKE_COMMAND} 1313 COMMAND ${CMAKE_COMMAND}
1314 ARGS 1314 ARGS
1315 -E 1315 -E
@@ -1320,7 +1320,7 @@ if (WINDOWS)
1320 ) 1320 )
1321 1321
1322 add_custom_command( 1322 add_custom_command(
1323 TARGET secondlife-bin PRE_BUILD 1323 TARGET imprudence-bin PRE_BUILD
1324 COMMAND ${CMAKE_COMMAND} 1324 COMMAND ${CMAKE_COMMAND}
1325 ARGS 1325 ARGS
1326 -E 1326 -E
@@ -1330,10 +1330,10 @@ if (WINDOWS)
1330 COMMENT "Copying message.xml to the runtime folder." 1330 COMMENT "Copying message.xml to the runtime folder."
1331 ) 1331 )
1332 1332
1333 add_dependencies(secondlife-bin copy_win_libs) 1333 add_dependencies(imprudence-bin copy_win_libs)
1334 1334
1335 if (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts) 1335 if (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)
1336 add_dependencies(secondlife-bin copy_win_scripts) 1336 add_dependencies(imprudence-bin copy_win_scripts)
1337 endif (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts) 1337 endif (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)
1338 1338
1339 add_custom_command( 1339 add_custom_command(
@@ -1350,7 +1350,7 @@ if (WINDOWS)
1350 --build=${CMAKE_CURRENT_BINARY_DIR} 1350 --build=${CMAKE_CURRENT_BINARY_DIR}
1351 --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR} 1351 --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
1352 --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat 1352 --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat
1353 DEPENDS secondlife-bin ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py 1353 DEPENDS imprudence-bin ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
1354 ) 1354 )
1355 if (PACKAGE) 1355 if (PACKAGE)
1356 add_custom_target(package ALL DEPENDS ${CMAKE_CFG_INTDIR}/touched.bat) 1356 add_custom_target(package ALL DEPENDS ${CMAKE_CFG_INTDIR}/touched.bat)
@@ -1358,7 +1358,7 @@ if (WINDOWS)
1358 endif (PACKAGE) 1358 endif (PACKAGE)
1359endif (WINDOWS) 1359endif (WINDOWS)
1360 1360
1361target_link_libraries(secondlife-bin 1361target_link_libraries(imprudence-bin
1362 ${LLAUDIO_LIBRARIES} 1362 ${LLAUDIO_LIBRARIES}
1363 ${LLCHARACTER_LIBRARIES} 1363 ${LLCHARACTER_LIBRARIES}
1364 ${LLIMAGE_LIBRARIES} 1364 ${LLIMAGE_LIBRARIES}
@@ -1403,13 +1403,13 @@ set(ARTWORK_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH
1403 1403
1404if (LINUX) 1404if (LINUX)
1405 add_custom_command( 1405 add_custom_command(
1406 OUTPUT secondlife-stripped 1406 OUTPUT imprudence-stripped
1407 COMMAND strip 1407 COMMAND strip
1408 ARGS --strip-debug -o secondlife-stripped secondlife-bin 1408 ARGS --strip-debug -o imprudence-stripped imprudence-bin
1409 DEPENDS secondlife-bin 1409 DEPENDS imprudence-bin
1410 ) 1410 )
1411 1411
1412 set(product SecondLife-${ARCH}-${viewer_VERSION}) 1412 set(product Imprudence-${ARCH}-${viewer_VERSION})
1413 1413
1414 add_custom_command( 1414 add_custom_command(
1415 OUTPUT ${product}.tar.bz2 1415 OUTPUT ${product}.tar.bz2
@@ -1426,7 +1426,7 @@ if (LINUX)
1426 --build=${CMAKE_CURRENT_BINARY_DIR} 1426 --build=${CMAKE_CURRENT_BINARY_DIR}
1427 --dest=${CMAKE_CURRENT_BINARY_DIR}/packaged 1427 --dest=${CMAKE_CURRENT_BINARY_DIR}/packaged
1428 --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched 1428 --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
1429 DEPENDS secondlife-stripped ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py 1429 DEPENDS imprudence-stripped ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
1430 ) 1430 )
1431 1431
1432 if (NOT INSTALL) 1432 if (NOT INSTALL)
@@ -1436,23 +1436,23 @@ if (LINUX)
1436endif (LINUX) 1436endif (LINUX)
1437 1437
1438if (DARWIN) 1438if (DARWIN)
1439 set(product "Second Life") 1439 set(product "Imprudence")
1440 set_target_properties( 1440 set_target_properties(
1441 secondlife-bin 1441 imprudence-bin
1442 PROPERTIES 1442 PROPERTIES
1443 OUTPUT_NAME "${product}" 1443 OUTPUT_NAME "${product}"
1444 MACOSX_BUNDLE_INFO_STRING "info string - localize me" 1444 MACOSX_BUNDLE_INFO_STRING "info string - localize me"
1445 MACOSX_BUNDLE_ICON_FILE "secondlife.icns" 1445 MACOSX_BUNDLE_ICON_FILE "secondlife.icns"
1446 MACOSX_BUNDLE_GUI_IDENTIFIER "Second Life" 1446 MACOSX_BUNDLE_GUI_IDENTIFIER "Imprudence"
1447 MACOSX_BUNDLE_LONG_VERSION_STRING "ververver" 1447 MACOSX_BUNDLE_LONG_VERSION_STRING "ververver"
1448 MACOSX_BUNDLE_BUNDLE_NAME "Second Life" 1448 MACOSX_BUNDLE_BUNDLE_NAME "Imprudence"
1449 MACOSX_BUNDLE_SHORT_VERSION_STRING "asdf" 1449 MACOSX_BUNDLE_SHORT_VERSION_STRING "asdf"
1450 MACOSX_BUNDLE_BUNDLE_VERSION "asdf" 1450 MACOSX_BUNDLE_BUNDLE_VERSION "asdf"
1451 MACOSX_BUNDLE_COPYRIGHT "copyright linden lab 2007 - localize me and run me through a legal wringer" 1451 MACOSX_BUNDLE_COPYRIGHT "copyright linden lab 2007 - localize me and run me through a legal wringer"
1452 ) 1452 )
1453 1453
1454 add_custom_command( 1454 add_custom_command(
1455 TARGET secondlife-bin POST_BUILD 1455 TARGET imprudence-bin POST_BUILD
1456 COMMAND ${PYTHON_EXECUTABLE} 1456 COMMAND ${PYTHON_EXECUTABLE}
1457 ARGS 1457 ARGS
1458 ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py 1458 ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
@@ -1463,7 +1463,7 @@ if (DARWIN)
1463 --artwork=${ARTWORK_DIR} 1463 --artwork=${ARTWORK_DIR}
1464 --build=${CMAKE_CURRENT_BINARY_DIR} 1464 --build=${CMAKE_CURRENT_BINARY_DIR}
1465 --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app 1465 --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
1466 DEPENDS secondlife-bin ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py 1466 DEPENDS imprudence-bin ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
1467 ) 1467 )
1468 1468
1469 if (PACKAGE) 1469 if (PACKAGE)
@@ -1481,7 +1481,7 @@ if (DARWIN)
1481 --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app 1481 --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
1482 --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched 1482 --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
1483 DEPENDS 1483 DEPENDS
1484 secondlife-bin 1484 imprudence-bin
1485 ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py 1485 ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
1486 ) 1486 )
1487 add_dependencies(package mac-updater mac-crash-logger) 1487 add_dependencies(package mac-updater mac-crash-logger)
diff --git a/linden/indra/newview/English.lproj/InfoPlist.strings b/linden/indra/newview/English.lproj/InfoPlist.strings
index 881483e..784a1b7 100644
--- a/linden/indra/newview/English.lproj/InfoPlist.strings
+++ b/linden/indra/newview/English.lproj/InfoPlist.strings
@@ -1,6 +1,6 @@
1/* Localized versions of Info.plist keys */ 1/* Localized versions of Info.plist keys */
2 2
3CFBundleName = "Second Life"; 3CFBundleName = "Imprudence";
4CFBundleShortVersionString = "Second Life version 1.20.9.87416"; 4CFBundleShortVersionString = "Imprudence version 1.0.0";
5CFBundleGetInfoString = "Second Life version 1.20.9.87416, Copyright 2004-2008 Linden Research, Inc."; 5CFBundleGetInfoString = "Imprudence version 1.0.0, Copyright 2004-2008 Linden Research, Inc.";
6 6
diff --git a/linden/indra/newview/Info-SecondLife.plist b/linden/indra/newview/Info-SecondLife.plist
index b889d45..32bba70 100644
--- a/linden/indra/newview/Info-SecondLife.plist
+++ b/linden/indra/newview/Info-SecondLife.plist
@@ -1,39 +1,39 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 2<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3<plist version="1.0"> 3<plist version="1.0">
4<dict> 4<dict>
5 <key>CFBundleDevelopmentRegion</key> 5 <key>CFBundleDevelopmentRegion</key>
6 <string>English</string> 6 <string>English</string>
7 <key>CFBundleExecutable</key> 7 <key>CFBundleExecutable</key>
8 <string>Second Life</string> 8 <string>Imprudence</string>
9 <key>CFBundleIconFile</key> 9 <key>CFBundleIconFile</key>
10 <string>secondlife.icns</string> 10 <string>secondlife.icns</string>
11 <key>CFBundleIdentifier</key> 11 <key>CFBundleIdentifier</key>
12 <string>com.secondlife.indra.viewer</string> 12 <string>com.secondlife.indra.viewer</string>
13 <key>CFBundleInfoDictionaryVersion</key> 13 <key>CFBundleInfoDictionaryVersion</key>
14 <string>6.0</string> 14 <string>6.0</string>
15 <key>CFBundleName</key> 15 <key>CFBundleName</key>
16 <string>Second Life</string> 16 <string>Imprudence</string>
17 <key>CFBundlePackageType</key> 17 <key>CFBundlePackageType</key>
18 <string>APPL</string> 18 <string>APPL</string>
19 <key>CFBundleSignature</key> 19 <key>CFBundleSignature</key>
20 <string>????</string> 20 <string>????</string>
21 <key>CFBundleURLTypes</key> 21 <key>CFBundleURLTypes</key>
22 <array> 22 <array>
23 <dict> 23 <dict>
24 <key>CFBundleURLName</key> 24 <key>CFBundleURLName</key>
25 <string>Second Life URL</string> 25 <string>Second Life URL</string>
26 <key>CFBundleURLSchemes</key> 26 <key>CFBundleURLSchemes</key>
27 <array> 27 <array>
28 <string>secondlife</string> 28 <string>secondlife</string>
29 </array> 29 </array>
30 <key>LSIsAppleDefaultForScheme</key> 30 <key>LSIsAppleDefaultForScheme</key>
31 <true/> 31 <true/>
32 </dict> 32 </dict>
33 </array> 33 </array>
34 <key>CFBundleVersion</key> 34 <key>CFBundleVersion</key>
35 <string>1.20.9.87416</string> 35 <string>1.0.0</string>
36 <key>CSResourcesFileMapped</key> 36 <key>CSResourcesFileMapped</key>
37 <true/> 37 <true/>
38</dict> 38</dict>
39</plist> 39</plist>
diff --git a/linden/indra/newview/SecondLife.nib/objects.xib b/linden/indra/newview/SecondLife.nib/objects.xib
index b7ff30f..07af643 100644
--- a/linden/indra/newview/SecondLife.nib/objects.xib
+++ b/linden/indra/newview/SecondLife.nib/objects.xib
@@ -1,259 +1,259 @@
1<?xml version="1.0" standalone="yes"?> 1<?xml version="1.0" standalone="yes"?>
2<object class="NSIBObjectData"> 2<object class="NSIBObjectData">
3 <string name="targetFramework">IBCarbonFramework</string> 3 <string name="targetFramework">IBCarbonFramework</string>
4 <object name="rootObject" class="NSCustomObject" id="1"> 4 <object name="rootObject" class="NSCustomObject" id="1">
5 <string name="customClass">NSApplication</string> 5 <string name="customClass">NSApplication</string>
6 </object> 6 </object>
7 <array count="31" name="allObjects"> 7 <array count="31" name="allObjects">
8 <object class="IBCarbonMenu" id="29"> 8 <object class="IBCarbonMenu" id="29">
9 <string name="title">SecondLife</string> 9 <string name="title">Imprudence</string>
10 <array count="4" name="items"> 10 <array count="4" name="items">
11 <object class="IBCarbonMenuItem" id="182"> 11 <object class="IBCarbonMenuItem" id="182">
12 <string name="title">Second Life</string> 12 <string name="title">Imprudence</string>
13 <object name="submenu" class="IBCarbonMenu" id="181"> 13 <object name="submenu" class="IBCarbonMenu" id="181">
14 <string name="title">Second Life</string> 14 <string name="title">Imprudence</string>
15 <array count="1" name="items"> 15 <array count="1" name="items">
16 <object class="IBCarbonMenuItem" id="183"> 16 <object class="IBCarbonMenuItem" id="183">
17 <boolean name="disabled">TRUE</boolean> 17 <boolean name="disabled">TRUE</boolean>
18 <boolean name="updateSingleItem">TRUE</boolean> 18 <boolean name="updateSingleItem">TRUE</boolean>
19 <string name="title">About Second Life</string> 19 <string name="title">About Imprudence</string>
20 <int name="keyEquivalentModifier">0</int> 20 <int name="keyEquivalentModifier">0</int>
21 <ostype name="command">abou</ostype> 21 <ostype name="command">abou</ostype>
22 </object> 22 </object>
23 </array> 23 </array>
24 <string name="name">_NSAppleMenu</string> 24 <string name="name">_NSAppleMenu</string>
25 </object> 25 </object>
26 </object> 26 </object>
27 <object class="IBCarbonMenuItem" id="127"> 27 <object class="IBCarbonMenuItem" id="127">
28 <string name="title">File</string> 28 <string name="title">File</string>
29 <object name="submenu" class="IBCarbonMenu" id="131"> 29 <object name="submenu" class="IBCarbonMenu" id="131">
30 <string name="title">File</string> 30 <string name="title">File</string>
31 </object> 31 </object>
32 </object> 32 </object>
33 <object class="IBCarbonMenuItem" id="152"> 33 <object class="IBCarbonMenuItem" id="152">
34 <string name="title">Edit</string> 34 <string name="title">Edit</string>
35 <object name="submenu" class="IBCarbonMenu" id="147"> 35 <object name="submenu" class="IBCarbonMenu" id="147">
36 <string name="title">Edit</string> 36 <string name="title">Edit</string>
37 <array count="10" name="items"> 37 <array count="10" name="items">
38 <object class="IBCarbonMenuItem" id="141"> 38 <object class="IBCarbonMenuItem" id="141">
39 <boolean name="updateSingleItem">TRUE</boolean> 39 <boolean name="updateSingleItem">TRUE</boolean>
40 <string name="title">Undo</string> 40 <string name="title">Undo</string>
41 <string name="keyEquivalent">z</string> 41 <string name="keyEquivalent">z</string>
42 <ostype name="command">undo</ostype> 42 <ostype name="command">undo</ostype>
43 </object> 43 </object>
44 <object class="IBCarbonMenuItem" id="146"> 44 <object class="IBCarbonMenuItem" id="146">
45 <boolean name="updateSingleItem">TRUE</boolean> 45 <boolean name="updateSingleItem">TRUE</boolean>
46 <string name="title">Redo</string> 46 <string name="title">Redo</string>
47 <string name="keyEquivalent">Z</string> 47 <string name="keyEquivalent">Z</string>
48 <ostype name="command">redo</ostype> 48 <ostype name="command">redo</ostype>
49 </object> 49 </object>
50 <object class="IBCarbonMenuItem" id="142"> 50 <object class="IBCarbonMenuItem" id="142">
51 <boolean name="separator">TRUE</boolean> 51 <boolean name="separator">TRUE</boolean>
52 </object> 52 </object>
53 <object class="IBCarbonMenuItem" id="143"> 53 <object class="IBCarbonMenuItem" id="143">
54 <boolean name="updateSingleItem">TRUE</boolean> 54 <boolean name="updateSingleItem">TRUE</boolean>
55 <string name="title">Cut</string> 55 <string name="title">Cut</string>
56 <string name="keyEquivalent">x</string> 56 <string name="keyEquivalent">x</string>
57 <ostype name="command">cut </ostype> 57 <ostype name="command">cut </ostype>
58 </object> 58 </object>
59 <object class="IBCarbonMenuItem" id="149"> 59 <object class="IBCarbonMenuItem" id="149">
60 <boolean name="updateSingleItem">TRUE</boolean> 60 <boolean name="updateSingleItem">TRUE</boolean>
61 <string name="title">Copy</string> 61 <string name="title">Copy</string>
62 <string name="keyEquivalent">c</string> 62 <string name="keyEquivalent">c</string>
63 <ostype name="command">copy</ostype> 63 <ostype name="command">copy</ostype>
64 </object> 64 </object>
65 <object class="IBCarbonMenuItem" id="144"> 65 <object class="IBCarbonMenuItem" id="144">
66 <boolean name="updateSingleItem">TRUE</boolean> 66 <boolean name="updateSingleItem">TRUE</boolean>
67 <string name="title">Paste</string> 67 <string name="title">Paste</string>
68 <string name="keyEquivalent">v</string> 68 <string name="keyEquivalent">v</string>
69 <ostype name="command">past</ostype> 69 <ostype name="command">past</ostype>
70 </object> 70 </object>
71 <object class="IBCarbonMenuItem" id="151"> 71 <object class="IBCarbonMenuItem" id="151">
72 <boolean name="updateSingleItem">TRUE</boolean> 72 <boolean name="updateSingleItem">TRUE</boolean>
73 <string name="title">Delete</string> 73 <string name="title">Delete</string>
74 <ostype name="command">clea</ostype> 74 <ostype name="command">clea</ostype>
75 </object> 75 </object>
76 <object class="IBCarbonMenuItem" id="148"> 76 <object class="IBCarbonMenuItem" id="148">
77 <boolean name="updateSingleItem">TRUE</boolean> 77 <boolean name="updateSingleItem">TRUE</boolean>
78 <string name="title">Select All</string> 78 <string name="title">Select All</string>
79 <string name="keyEquivalent">a</string> 79 <string name="keyEquivalent">a</string>
80 <ostype name="command">sall</ostype> 80 <ostype name="command">sall</ostype>
81 </object> 81 </object>
82 <object class="IBCarbonMenuItem" id="188"> 82 <object class="IBCarbonMenuItem" id="188">
83 <boolean name="separator">TRUE</boolean> 83 <boolean name="separator">TRUE</boolean>
84 </object> 84 </object>
85 <object class="IBCarbonMenuItem" id="187"> 85 <object class="IBCarbonMenuItem" id="187">
86 <boolean name="updateSingleItem">TRUE</boolean> 86 <boolean name="updateSingleItem">TRUE</boolean>
87 <string name="title">Special Characters…</string> 87 <string name="title">Special Characters…</string>
88 <ostype name="command">chrp</ostype> 88 <ostype name="command">chrp</ostype>
89 </object> 89 </object>
90 </array> 90 </array>
91 </object> 91 </object>
92 </object> 92 </object>
93 <object class="IBCarbonMenuItem" id="153"> 93 <object class="IBCarbonMenuItem" id="153">
94 <string name="title">Window</string> 94 <string name="title">Window</string>
95 <object name="submenu" class="IBCarbonMenu" id="154"> 95 <object name="submenu" class="IBCarbonMenu" id="154">
96 <string name="title">Window</string> 96 <string name="title">Window</string>
97 <array count="6" name="items"> 97 <array count="6" name="items">
98 <object class="IBCarbonMenuItem" id="155"> 98 <object class="IBCarbonMenuItem" id="155">
99 <boolean name="dynamic">TRUE</boolean> 99 <boolean name="dynamic">TRUE</boolean>
100 <boolean name="updateSingleItem">TRUE</boolean> 100 <boolean name="updateSingleItem">TRUE</boolean>
101 <string name="title">Minimize Window</string> 101 <string name="title">Minimize Window</string>
102 <string name="keyEquivalent">m</string> 102 <string name="keyEquivalent">m</string>
103 <ostype name="command">mini</ostype> 103 <ostype name="command">mini</ostype>
104 </object> 104 </object>
105 <object class="IBCarbonMenuItem" id="184"> 105 <object class="IBCarbonMenuItem" id="184">
106 <boolean name="dynamic">TRUE</boolean> 106 <boolean name="dynamic">TRUE</boolean>
107 <boolean name="updateSingleItem">TRUE</boolean> 107 <boolean name="updateSingleItem">TRUE</boolean>
108 <string name="title">Minimize All Windows</string> 108 <string name="title">Minimize All Windows</string>
109 <string name="keyEquivalent">m</string> 109 <string name="keyEquivalent">m</string>
110 <int name="keyEquivalentModifier">1572864</int> 110 <int name="keyEquivalentModifier">1572864</int>
111 <ostype name="command">mina</ostype> 111 <ostype name="command">mina</ostype>
112 </object> 112 </object>
113 <object class="IBCarbonMenuItem" id="186"> 113 <object class="IBCarbonMenuItem" id="186">
114 <boolean name="updateSingleItem">TRUE</boolean> 114 <boolean name="updateSingleItem">TRUE</boolean>
115 <string name="title">Zoom</string> 115 <string name="title">Zoom</string>
116 <ostype name="command">zoom</ostype> 116 <ostype name="command">zoom</ostype>
117 </object> 117 </object>
118 <object class="IBCarbonMenuItem" id="156"> 118 <object class="IBCarbonMenuItem" id="156">
119 <boolean name="separator">TRUE</boolean> 119 <boolean name="separator">TRUE</boolean>
120 </object> 120 </object>
121 <object class="IBCarbonMenuItem" id="157"> 121 <object class="IBCarbonMenuItem" id="157">
122 <boolean name="dynamic">TRUE</boolean> 122 <boolean name="dynamic">TRUE</boolean>
123 <boolean name="updateSingleItem">TRUE</boolean> 123 <boolean name="updateSingleItem">TRUE</boolean>
124 <string name="title">Bring All to Front</string> 124 <string name="title">Bring All to Front</string>
125 <ostype name="command">bfrt</ostype> 125 <ostype name="command">bfrt</ostype>
126 </object> 126 </object>
127 <object class="IBCarbonMenuItem" id="185"> 127 <object class="IBCarbonMenuItem" id="185">
128 <boolean name="dynamic">TRUE</boolean> 128 <boolean name="dynamic">TRUE</boolean>
129 <boolean name="updateSingleItem">TRUE</boolean> 129 <boolean name="updateSingleItem">TRUE</boolean>
130 <string name="title">Arrange in Front</string> 130 <string name="title">Arrange in Front</string>
131 <int name="keyEquivalentModifier">1572864</int> 131 <int name="keyEquivalentModifier">1572864</int>
132 <ostype name="command">frnt</ostype> 132 <ostype name="command">frnt</ostype>
133 </object> 133 </object>
134 </array> 134 </array>
135 <string name="name">_NSWindowsMenu</string> 135 <string name="name">_NSWindowsMenu</string>
136 </object> 136 </object>
137 </object> 137 </object>
138 </array> 138 </array>
139 <string name="name">_NSMainMenu</string> 139 <string name="name">_NSMainMenu</string>
140 </object> 140 </object>
141 <reference idRef="127"/> 141 <reference idRef="127"/>
142 <reference idRef="131"/> 142 <reference idRef="131"/>
143 <reference idRef="141"/> 143 <reference idRef="141"/>
144 <reference idRef="142"/> 144 <reference idRef="142"/>
145 <reference idRef="143"/> 145 <reference idRef="143"/>
146 <reference idRef="144"/> 146 <reference idRef="144"/>
147 <reference idRef="146"/> 147 <reference idRef="146"/>
148 <reference idRef="147"/> 148 <reference idRef="147"/>
149 <reference idRef="148"/> 149 <reference idRef="148"/>
150 <reference idRef="149"/> 150 <reference idRef="149"/>
151 <reference idRef="151"/> 151 <reference idRef="151"/>
152 <reference idRef="152"/> 152 <reference idRef="152"/>
153 <reference idRef="153"/> 153 <reference idRef="153"/>
154 <reference idRef="154"/> 154 <reference idRef="154"/>
155 <reference idRef="155"/> 155 <reference idRef="155"/>
156 <reference idRef="156"/> 156 <reference idRef="156"/>
157 <reference idRef="157"/> 157 <reference idRef="157"/>
158 <reference idRef="181"/> 158 <reference idRef="181"/>
159 <reference idRef="182"/> 159 <reference idRef="182"/>
160 <reference idRef="183"/> 160 <reference idRef="183"/>
161 <reference idRef="184"/> 161 <reference idRef="184"/>
162 <reference idRef="185"/> 162 <reference idRef="185"/>
163 <reference idRef="186"/> 163 <reference idRef="186"/>
164 <reference idRef="187"/> 164 <reference idRef="187"/>
165 <reference idRef="188"/> 165 <reference idRef="188"/>
166 <object class="IBCarbonRootControl" id="190"> 166 <object class="IBCarbonRootControl" id="190">
167 <string name="bounds">0 0 482 694 </string> 167 <string name="bounds">0 0 482 694 </string>
168 <string name="viewFrame">0 0 694 482 </string> 168 <string name="viewFrame">0 0 694 482 </string>
169 <array count="2" name="subviews"> 169 <array count="2" name="subviews">
170 <object class="IBCarbonButton" id="192"> 170 <object class="IBCarbonButton" id="192">
171 <string name="bounds">442 604 462 674 </string> 171 <string name="bounds">442 604 462 674 </string>
172 <string name="viewFrame">604 442 70 20 </string> 172 <string name="viewFrame">604 442 70 20 </string>
173 <string name="title">OK</string> 173 <string name="title">OK</string>
174 <ostype name="command">ok </ostype> 174 <ostype name="command">ok </ostype>
175 <object name="layoutInfo" class="IBCarbonHILayoutInfo"> 175 <object name="layoutInfo" class="IBCarbonHILayoutInfo">
176 <int name="bindingBottomKind">2</int> 176 <int name="bindingBottomKind">2</int>
177 <int name="bindingRightKind">2</int> 177 <int name="bindingRightKind">2</int>
178 </object> 178 </object>
179 <int name="buttonType">1</int> 179 <int name="buttonType">1</int>
180 </object> 180 </object>
181 <object class="IBCarbonScrollView" id="201"> 181 <object class="IBCarbonScrollView" id="201">
182 <string name="bounds">20 20 422 674 </string> 182 <string name="bounds">20 20 422 674 </string>
183 <string name="viewFrame">20 20 654 402 </string> 183 <string name="viewFrame">20 20 654 402 </string>
184 <array count="1" name="subviews"> 184 <array count="1" name="subviews">
185 <object class="IBCarbonTextView" id="200"> 185 <object class="IBCarbonTextView" id="200">
186 <string name="bounds">20 20 422 659 </string> 186 <string name="bounds">20 20 422 659 </string>
187 <string name="viewFrame">0 0 639 402 </string> 187 <string name="viewFrame">0 0 639 402 </string>
188 <ostype name="controlSignature">text</ostype> 188 <ostype name="controlSignature">text</ostype>
189 <int name="fontStyle">5</int> 189 <int name="fontStyle">5</int>
190 <boolean name="readOnly">TRUE</boolean> 190 <boolean name="readOnly">TRUE</boolean>
191 </object> 191 </object>
192 </array> 192 </array>
193 <boolean name="scrollHorizontally">FALSE</boolean> 193 <boolean name="scrollHorizontally">FALSE</boolean>
194 </object> 194 </object>
195 </array> 195 </array>
196 </object> 196 </object>
197 <object class="IBCarbonWindow" id="191"> 197 <object class="IBCarbonWindow" id="191">
198 <string name="windowRect">84 72 566 766 </string> 198 <string name="windowRect">84 72 566 766 </string>
199 <string name="title">Release Notes</string> 199 <string name="title">Release Notes</string>
200 <reference name="rootControl" idRef="190"/> 200 <reference name="rootControl" idRef="190"/>
201 <boolean name="receiveUpdates">FALSE</boolean> 201 <boolean name="receiveUpdates">FALSE</boolean>
202 <boolean name="hasCloseBox">FALSE</boolean> 202 <boolean name="hasCloseBox">FALSE</boolean>
203 <boolean name="hasCollapseBox">FALSE</boolean> 203 <boolean name="hasCollapseBox">FALSE</boolean>
204 <boolean name="hasHorizontalZoom">FALSE</boolean> 204 <boolean name="hasHorizontalZoom">FALSE</boolean>
205 <boolean name="isResizable">FALSE</boolean> 205 <boolean name="isResizable">FALSE</boolean>
206 <boolean name="hasVerticalZoom">FALSE</boolean> 206 <boolean name="hasVerticalZoom">FALSE</boolean>
207 <boolean name="liveResize">TRUE</boolean> 207 <boolean name="liveResize">TRUE</boolean>
208 <boolean name="compositing">TRUE</boolean> 208 <boolean name="compositing">TRUE</boolean>
209 <int name="carbonWindowClass">4</int> 209 <int name="carbonWindowClass">4</int>
210 <int name="windowPosition">1</int> 210 <int name="windowPosition">1</int>
211 <boolean name="isConstrained">FALSE</boolean> 211 <boolean name="isConstrained">FALSE</boolean>
212 </object> 212 </object>
213 <reference idRef="192"/> 213 <reference idRef="192"/>
214 <reference idRef="200"/> 214 <reference idRef="200"/>
215 <reference idRef="201"/> 215 <reference idRef="201"/>
216 </array> 216 </array>
217 <array count="31" name="allParents"> 217 <array count="31" name="allParents">
218 <reference idRef="1"/> 218 <reference idRef="1"/>
219 <reference idRef="29"/> 219 <reference idRef="29"/>
220 <reference idRef="127"/> 220 <reference idRef="127"/>
221 <reference idRef="147"/> 221 <reference idRef="147"/>
222 <reference idRef="147"/> 222 <reference idRef="147"/>
223 <reference idRef="147"/> 223 <reference idRef="147"/>
224 <reference idRef="147"/> 224 <reference idRef="147"/>
225 <reference idRef="147"/> 225 <reference idRef="147"/>
226 <reference idRef="152"/> 226 <reference idRef="152"/>
227 <reference idRef="147"/> 227 <reference idRef="147"/>
228 <reference idRef="147"/> 228 <reference idRef="147"/>
229 <reference idRef="147"/> 229 <reference idRef="147"/>
230 <reference idRef="29"/> 230 <reference idRef="29"/>
231 <reference idRef="29"/> 231 <reference idRef="29"/>
232 <reference idRef="153"/> 232 <reference idRef="153"/>
233 <reference idRef="154"/> 233 <reference idRef="154"/>
234 <reference idRef="154"/> 234 <reference idRef="154"/>
235 <reference idRef="154"/> 235 <reference idRef="154"/>
236 <reference idRef="182"/> 236 <reference idRef="182"/>
237 <reference idRef="29"/> 237 <reference idRef="29"/>
238 <reference idRef="181"/> 238 <reference idRef="181"/>
239 <reference idRef="154"/> 239 <reference idRef="154"/>
240 <reference idRef="154"/> 240 <reference idRef="154"/>
241 <reference idRef="154"/> 241 <reference idRef="154"/>
242 <reference idRef="147"/> 242 <reference idRef="147"/>
243 <reference idRef="147"/> 243 <reference idRef="147"/>
244 <reference idRef="191"/> 244 <reference idRef="191"/>
245 <reference idRef="1"/> 245 <reference idRef="1"/>
246 <reference idRef="190"/> 246 <reference idRef="190"/>
247 <reference idRef="201"/> 247 <reference idRef="201"/>
248 <reference idRef="190"/> 248 <reference idRef="190"/>
249 </array> 249 </array>
250 <dictionary count="3" name="nameTable"> 250 <dictionary count="3" name="nameTable">
251 <string>Files Owner</string> 251 <string>Files Owner</string>
252 <reference idRef="1"/> 252 <reference idRef="1"/>
253 <string>MenuBar</string> 253 <string>MenuBar</string>
254 <reference idRef="29"/> 254 <reference idRef="29"/>
255 <string>Release Notes</string> 255 <string>Release Notes</string>
256 <reference idRef="191"/> 256 <reference idRef="191"/>
257 </dictionary> 257 </dictionary>
258 <unsigned_int name="nextObjectID">202</unsigned_int> 258 <unsigned_int name="nextObjectID">202</unsigned_int>
259</object> 259</object>
diff --git a/linden/indra/newview/ViewerInstall.cmake b/linden/indra/newview/ViewerInstall.cmake
index 55069ad..bc839c4 100644
--- a/linden/indra/newview/ViewerInstall.cmake
+++ b/linden/indra/newview/ViewerInstall.cmake
@@ -1,4 +1,4 @@
1install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/secondlife-bin 1install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/imprudence-bin
2 DESTINATION ${APP_BINARY_DIR} 2 DESTINATION ${APP_BINARY_DIR}
3 ) 3 )
4 4
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml
index 2083877..550a30d 100644
--- a/linden/indra/newview/app_settings/settings.xml
+++ b/linden/indra/newview/app_settings/settings.xml
@@ -9533,7 +9533,7 @@
9533 <key>Type</key> 9533 <key>Type</key>
9534 <string>String</string> 9534 <string>String</string>
9535 <key>Value</key> 9535 <key>Value</key>
9536 <string>Second Life Release</string> 9536 <string>Imprudence</string>
9537 </map> 9537 </map>
9538 <key>VertexShaderEnable</key> 9538 <key>VertexShaderEnable</key>
9539 <map> 9539 <map>
diff --git a/linden/indra/newview/installers/windows/installer_template.nsi b/linden/indra/newview/installers/windows/installer_template.nsi
index c795507..53c607c 100644
--- a/linden/indra/newview/installers/windows/installer_template.nsi
+++ b/linden/indra/newview/installers/windows/installer_template.nsi
@@ -1,990 +1,990 @@
1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2;; secondlife setup.nsi 2;; imprudence setup.nsi
3;; Copyright 2004-2007, Linden Research, Inc. 3;; Copyright 2004-2007, Linden Research, Inc.
4;; For info, see http://www.nullsoft.com/free/nsis/ 4;; For info, see http://www.nullsoft.com/free/nsis/
5;; 5;;
6;; NSIS 2.22 or higher required 6;; NSIS 2.22 or higher required
7;; Author: James Cook, Don Kjer, Callum Prentice 7;; Author: James Cook, Don Kjer, Callum Prentice
8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
9 9
10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11;;; Detect NSIS compiler version 11;;; Detect NSIS compiler version
12!define "NSIS${NSIS_VERSION}" 12!define "NSIS${NSIS_VERSION}"
13!ifdef "NSISv2.02" | "NSISv2.03" | "NSISv2.04" | "NSISv2.05" | "NSISv2.06" 13!ifdef "NSISv2.02" | "NSISv2.03" | "NSISv2.04" | "NSISv2.05" | "NSISv2.06"
14 ;; before 2.07 defaulted lzma to solid (whole file) 14 ;; before 2.07 defaulted lzma to solid (whole file)
15 SetCompressor lzma 15 SetCompressor lzma
16!else 16!else
17 ;; after 2.07 required /solid for whole file compression 17 ;; after 2.07 required /solid for whole file compression
18 SetCompressor /solid lzma 18 SetCompressor /solid lzma
19!endif 19!endif
20 20
21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
22;; Compiler flags 22;; Compiler flags
23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
24SetOverwrite on ; overwrite files 24SetOverwrite on ; overwrite files
25SetCompress auto ; compress iff saves space 25SetCompress auto ; compress iff saves space
26SetDatablockOptimize off ; only saves us 0.1%, not worth it 26SetDatablockOptimize off ; only saves us 0.1%, not worth it
27XPStyle on ; add an XP manifest to the installer 27XPStyle on ; add an XP manifest to the installer
28 28
29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
30;;; Project flags 30;;; Project flags
31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
32 32
33%%VERSION%% 33%%VERSION%%
34 34
35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
36;; - language files - one for each language (or flavor thereof) 36;; - language files - one for each language (or flavor thereof)
37;; (these files are in the same place as the nsi template but the python script generates a new nsi file in the 37;; (these files are in the same place as the nsi template but the python script generates a new nsi file in the
38;; application directory so we have to add a path to these include files) 38;; application directory so we have to add a path to these include files)
39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
40!include "%%SOURCE%%\installers\windows\lang_de.nsi" 40!include "%%SOURCE%%\installers\windows\lang_de.nsi"
41!include "%%SOURCE%%\installers\windows\lang_en-us.nsi" 41!include "%%SOURCE%%\installers\windows\lang_en-us.nsi"
42!include "%%SOURCE%%\installers\windows\lang_ja.nsi" 42!include "%%SOURCE%%\installers\windows\lang_ja.nsi"
43!include "%%SOURCE%%\installers\windows\lang_ko.nsi" 43!include "%%SOURCE%%\installers\windows\lang_ko.nsi"
44 44
45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
46;; Tweak for different servers/builds (this placeholder is replaced by viewer_manifest.py) 46;; Tweak for different servers/builds (this placeholder is replaced by viewer_manifest.py)
47%%GRID_VARS%% 47%%GRID_VARS%%
48 48
49Name ${INSTNAME} 49Name ${INSTNAME}
50 50
51SubCaption 0 $(LicenseSubTitleSetup) ; override "license agreement" text 51SubCaption 0 $(LicenseSubTitleSetup) ; override "license agreement" text
52 52
53BrandingText " " ; bottom of window text 53BrandingText " " ; bottom of window text
54Icon %%SOURCE%%\res\install_icon.ico ; our custom icon 54Icon %%SOURCE%%\res\install_icon.ico ; our custom icon
55UninstallIcon %%SOURCE%%\res\uninstall_icon.ico ; our custom icon 55UninstallIcon %%SOURCE%%\res\uninstall_icon.ico ; our custom icon
56WindowIcon on ; show our icon in left corner 56WindowIcon on ; show our icon in left corner
57BGGradient off ; no big background window 57BGGradient off ; no big background window
58CRCCheck on ; make sure CRC is OK 58CRCCheck on ; make sure CRC is OK
59InstProgressFlags smooth colored ; new colored smooth look 59InstProgressFlags smooth colored ; new colored smooth look
60ShowInstDetails nevershow ; no details, no "show" button 60ShowInstDetails nevershow ; no details, no "show" button
61SetOverwrite on ; stomp files by default 61SetOverwrite on ; stomp files by default
62AutoCloseWindow true ; after all files install, close window 62AutoCloseWindow true ; after all files install, close window
63 63
64InstallDir "$PROGRAMFILES\${INSTNAME}" 64InstallDir "$PROGRAMFILES\${INSTNAME}"
65InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "" 65InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" ""
66!ifdef UPDATE 66!ifdef UPDATE
67DirText $(DirectoryChooseTitle) $(DirectoryChooseUpdate) 67DirText $(DirectoryChooseTitle) $(DirectoryChooseUpdate)
68!else 68!else
69DirText $(DirectoryChooseTitle) $(DirectoryChooseSetup) 69DirText $(DirectoryChooseTitle) $(DirectoryChooseSetup)
70!endif 70!endif
71 71
72 72
73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
74;;; Variables 74;;; Variables
75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
76Var INSTPROG 76Var INSTPROG
77Var INSTEXE 77Var INSTEXE
78Var INSTFLAGS 78Var INSTFLAGS
79Var LANGFLAGS 79Var LANGFLAGS
80Var INSTSHORTCUT 80Var INSTSHORTCUT
81 81
82;;; Function definitions should go before file includes, because the NSIS package 82;;; Function definitions should go before file includes, because the NSIS package
83;;; is a single stream of bytecodes + file data. So if your function definitions are at 83;;; is a single stream of bytecodes + file data. So if your function definitions are at
84;;; the end of the file it has to decompress the whole thing before it can call a function. JC 84;;; the end of the file it has to decompress the whole thing before it can call a function. JC
85 85
86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
87; PostInstallExe 87; PostInstallExe
88; This just runs any post installation scripts. 88; This just runs any post installation scripts.
89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
90Function PostInstallExe 90Function PostInstallExe
91push $0 91push $0
92 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "PostInstallExe" 92 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "PostInstallExe"
93 ;MessageBox MB_OK '$0' 93 ;MessageBox MB_OK '$0'
94 ExecWait '$0' 94 ExecWait '$0'
95pop $0 95pop $0
96FunctionEnd 96FunctionEnd
97 97
98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
99; CheckStartupParameters 99; CheckStartupParameters
100; Sets INSTFLAGS, INSTPROG, and INSTEXE. 100; Sets INSTFLAGS, INSTPROG, and INSTEXE.
101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
102Function CheckStartupParams 102Function CheckStartupParams
103push $0 103push $0
104push $R0 104push $R0
105 105
106 ; Look for a registry entry with info about where to update. 106 ; Look for a registry entry with info about where to update.
107 Call GetProgramName 107 Call GetProgramName
108 pop $R0 108 pop $R0
109 StrCpy $INSTPROG "$R0" 109 StrCpy $INSTPROG "$R0"
110 StrCpy $INSTEXE "$R0.exe" 110 StrCpy $INSTEXE "$R0.exe"
111 111
112 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" 112 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" ""
113 ; If key doesn't exist, skip install 113 ; If key doesn't exist, skip install
114 IfErrors ABORT 114 IfErrors ABORT
115 StrCpy $INSTDIR "$0" 115 StrCpy $INSTDIR "$0"
116 116
117 ; We now have a directory to install to. Get the startup parameters and shortcut as well. 117 ; We now have a directory to install to. Get the startup parameters and shortcut as well.
118 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags" 118 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags"
119 IfErrors +2 119 IfErrors +2
120 StrCpy $INSTFLAGS "$0" 120 StrCpy $INSTFLAGS "$0"
121 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut" 121 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut"
122 IfErrors +2 122 IfErrors +2
123 StrCpy $INSTSHORTCUT "$0" 123 StrCpy $INSTSHORTCUT "$0"
124 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe" 124 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe"
125 IfErrors +2 125 IfErrors +2
126 StrCpy $INSTEXE "$0" 126 StrCpy $INSTEXE "$0"
127 Goto FINISHED 127 Goto FINISHED
128 128
129ABORT: 129ABORT:
130 MessageBox MB_OK $(CheckStartupParamsMB) 130 MessageBox MB_OK $(CheckStartupParamsMB)
131 Quit 131 Quit
132 132
133FINISHED: 133FINISHED:
134 ;MessageBox MB_OK "INSTPROG: $INSTPROG, INSTEXE: $INSTEXE, INSTFLAGS: $INSTFLAGS" 134 ;MessageBox MB_OK "INSTPROG: $INSTPROG, INSTEXE: $INSTEXE, INSTFLAGS: $INSTFLAGS"
135pop $R0 135pop $R0
136pop $0 136pop $0
137FunctionEnd 137FunctionEnd
138 138
139;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 139;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
140;; 140;;
141;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 141;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
142Function un.CheckStartupParams 142Function un.CheckStartupParams
143push $0 143push $0
144push $R0 144push $R0
145 145
146 ; Look for a registry entry with info about where to update. 146 ; Look for a registry entry with info about where to update.
147 Call un.GetProgramName 147 Call un.GetProgramName
148 pop $R0 148 pop $R0
149 StrCpy $INSTPROG "$R0" 149 StrCpy $INSTPROG "$R0"
150 StrCpy $INSTEXE "$R0.exe" 150 StrCpy $INSTEXE "$R0.exe"
151 151
152 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" 152 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" ""
153 ; If key doesn't exist, skip install 153 ; If key doesn't exist, skip install
154 IfErrors ABORT 154 IfErrors ABORT
155 StrCpy $INSTDIR "$0" 155 StrCpy $INSTDIR "$0"
156 156
157 ; We now have a directory to install to. Get the startup parameters and shortcut as well. 157 ; We now have a directory to install to. Get the startup parameters and shortcut as well.
158 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags" 158 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags"
159 IfErrors +2 159 IfErrors +2
160 StrCpy $INSTFLAGS "$0" 160 StrCpy $INSTFLAGS "$0"
161 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut" 161 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut"
162 IfErrors +2 162 IfErrors +2
163 StrCpy $INSTSHORTCUT "$0" 163 StrCpy $INSTSHORTCUT "$0"
164 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe" 164 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe"
165 IfErrors +2 165 IfErrors +2
166 StrCpy $INSTEXE "$0" 166 StrCpy $INSTEXE "$0"
167 Goto FINISHED 167 Goto FINISHED
168 168
169ABORT: 169ABORT:
170 MessageBox MB_OK $(CheckStartupParamsMB) 170 MessageBox MB_OK $(CheckStartupParamsMB)
171 Quit 171 Quit
172 172
173FINISHED: 173FINISHED:
174 ;MessageBox MB_OK "INSTPROG: $INSTPROG, INSTEXE: $INSTEXE, INSTFLAGS: $INSTFLAGS" 174 ;MessageBox MB_OK "INSTPROG: $INSTPROG, INSTEXE: $INSTEXE, INSTFLAGS: $INSTFLAGS"
175pop $R0 175pop $R0
176pop $0 176pop $0
177FunctionEnd 177FunctionEnd
178 178
179;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 179;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
180;;; After install completes, offer readme file 180;;; After install completes, offer readme file
181;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 181;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
182Function .onInstSuccess 182Function .onInstSuccess
183 MessageBox MB_YESNO \ 183 MessageBox MB_YESNO \
184 $(InstSuccesssQuestion) /SD IDYES IDNO NoReadme 184 $(InstSuccesssQuestion) /SD IDYES IDNO NoReadme
185 ; Assumes SetOutPath $INSTDIR 185 ; Assumes SetOutPath $INSTDIR
186 Exec '"$INSTDIR\$INSTEXE" $INSTFLAGS' 186 Exec '"$INSTDIR\$INSTEXE" $INSTFLAGS'
187 NoReadme: 187 NoReadme:
188FunctionEnd 188FunctionEnd
189 189
190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
191; Remove old NSIS version. Modifies no variables. 191; Remove old NSIS version. Modifies no variables.
192; Does NOT delete the LindenWorld directory, or any 192; Does NOT delete the LindenWorld directory, or any
193; user files in that directory. 193; user files in that directory.
194;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 194;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
195Function RemoveNSIS 195Function RemoveNSIS
196 Push $0 196 Push $0
197 ; Grab the installation directory of the old version 197 ; Grab the installation directory of the old version
198 DetailPrint $(RemoveOldNSISVersion) 198 DetailPrint $(RemoveOldNSISVersion)
199 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" 199 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" ""
200 200
201 ; If key doesn't exist, skip uninstall 201 ; If key doesn't exist, skip uninstall
202 IfErrors NO_NSIS 202 IfErrors NO_NSIS
203 203
204 ; Clean up legacy beta shortcuts 204 ; Clean up legacy beta shortcuts
205 Delete "$SMPROGRAMS\Second Life Beta.lnk" 205 Delete "$SMPROGRAMS\Second Life Beta.lnk"
206 Delete "$DESKTOP\Second Life Beta.lnk" 206 Delete "$DESKTOP\Second Life Beta.lnk"
207 Delete "$SMPROGRAMS\Second Life.lnk" 207 Delete "$SMPROGRAMS\Second Life.lnk"
208 208
209 ; Clean up old newview.exe file 209 ; Clean up old newview.exe file
210 Delete "$INSTDIR\newview.exe" 210 Delete "$INSTDIR\newview.exe"
211 211
212 ; Intentionally don't delete the stuff in 212 ; Intentionally don't delete the stuff in
213 ; Documents and Settings, so we keep the user's settings 213 ; Documents and Settings, so we keep the user's settings
214 214
215 NO_NSIS: 215 NO_NSIS:
216 Pop $0 216 Pop $0
217FunctionEnd 217FunctionEnd
218 218
219;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 219;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
220; Make sure we're not on Windows 98 / ME 220; Make sure we're not on Windows 98 / ME
221;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 221;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
222Function CheckWindowsVersion 222Function CheckWindowsVersion
223 DetailPrint "Checking Windows version..." 223 DetailPrint "Checking Windows version..."
224 Call GetWindowsVersion 224 Call GetWindowsVersion
225 Pop $R0 225 Pop $R0
226 ; Just get first two characters, ignore 4.0 part of "NT 4.0" 226 ; Just get first two characters, ignore 4.0 part of "NT 4.0"
227 StrCpy $R0 $R0 2 227 StrCpy $R0 $R0 2
228 ; Blacklist certain OS versions 228 ; Blacklist certain OS versions
229 StrCmp $R0 "95" win_ver_bad 229 StrCmp $R0 "95" win_ver_bad
230 StrCmp $R0 "98" win_ver_bad 230 StrCmp $R0 "98" win_ver_bad
231 StrCmp $R0 "ME" win_ver_bad 231 StrCmp $R0 "ME" win_ver_bad
232 StrCmp $R0 "NT" win_ver_bad 232 StrCmp $R0 "NT" win_ver_bad
233 Return 233 Return
234win_ver_bad: 234win_ver_bad:
235 MessageBox MB_YESNO $(CheckWindowsVersionMB) IDNO win_ver_abort 235 MessageBox MB_YESNO $(CheckWindowsVersionMB) IDNO win_ver_abort
236 Return 236 Return
237win_ver_abort: 237win_ver_abort:
238 Quit 238 Quit
239FunctionEnd 239FunctionEnd
240 240
241;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 241;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
242; Make sure the user can install/uninstall 242; Make sure the user can install/uninstall
243;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 243;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
244Function CheckIfAdministrator 244Function CheckIfAdministrator
245 DetailPrint $(CheckAdministratorInstDP) 245 DetailPrint $(CheckAdministratorInstDP)
246 UserInfo::GetAccountType 246 UserInfo::GetAccountType
247 Pop $R0 247 Pop $R0
248 StrCmp $R0 "Admin" is_admin 248 StrCmp $R0 "Admin" is_admin
249 MessageBox MB_OK $(CheckAdministratorInstMB) 249 MessageBox MB_OK $(CheckAdministratorInstMB)
250 Quit 250 Quit
251is_admin: 251is_admin:
252 Return 252 Return
253FunctionEnd 253FunctionEnd
254 254
255;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 255;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
256;; 256;;
257;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 257;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
258Function un.CheckIfAdministrator 258Function un.CheckIfAdministrator
259 DetailPrint $(CheckAdministratorUnInstDP) 259 DetailPrint $(CheckAdministratorUnInstDP)
260 UserInfo::GetAccountType 260 UserInfo::GetAccountType
261 Pop $R0 261 Pop $R0
262 StrCmp $R0 "Admin" is_admin 262 StrCmp $R0 "Admin" is_admin
263 MessageBox MB_OK $(CheckAdministratorUnInstMB) 263 MessageBox MB_OK $(CheckAdministratorUnInstMB)
264 Quit 264 Quit
265is_admin: 265is_admin:
266 Return 266 Return
267FunctionEnd 267FunctionEnd
268 268
269;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 269;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
270; Checks to see if the current version has already been installed (according to the registry). 270; Checks to see if the current version has already been installed (according to the registry).
271; If it has, allow user to bail out of install process. 271; If it has, allow user to bail out of install process.
272;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 272;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
273Function CheckIfAlreadyCurrent 273Function CheckIfAlreadyCurrent
274 Push $0 274 Push $0
275 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" 275 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version"
276 StrCmp $0 ${VERSION_LONG} 0 DONE 276 StrCmp $0 ${VERSION_LONG} 0 DONE
277 MessageBox MB_OKCANCEL $(CheckIfCurrentMB) /SD IDOK IDOK DONE 277 MessageBox MB_OKCANCEL $(CheckIfCurrentMB) /SD IDOK IDOK DONE
278 Quit 278 Quit
279 279
280 DONE: 280 DONE:
281 Pop $0 281 Pop $0
282 Return 282 Return
283FunctionEnd 283FunctionEnd
284 284
285;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 285;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
286; Close the program, if running. Modifies no variables. 286; Close the program, if running. Modifies no variables.
287; Allows user to bail out of install process. 287; Allows user to bail out of install process.
288;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 288;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
289Function CloseSecondLife 289Function CloseSecondLife
290 Push $0 290 Push $0
291 FindWindow $0 "Second Life" "" 291 FindWindow $0 "Imprudence" ""
292 IntCmp $0 0 DONE 292 IntCmp $0 0 DONE
293 MessageBox MB_OKCANCEL $(CloseSecondLifeInstMB) IDOK CLOSE IDCANCEL CANCEL_INSTALL 293 MessageBox MB_OKCANCEL $(CloseSecondLifeInstMB) IDOK CLOSE IDCANCEL CANCEL_INSTALL
294 294
295 CANCEL_INSTALL: 295 CANCEL_INSTALL:
296 Quit 296 Quit
297 297
298 CLOSE: 298 CLOSE:
299 DetailPrint $(CloseSecondLifeInstDP) 299 DetailPrint $(CloseSecondLifeInstDP)
300 SendMessage $0 16 0 0 300 SendMessage $0 16 0 0
301 301
302 LOOP: 302 LOOP:
303 FindWindow $0 "Second Life" "" 303 FindWindow $0 "Imprudence" ""
304 IntCmp $0 0 DONE 304 IntCmp $0 0 DONE
305 Sleep 500 305 Sleep 500
306 Goto LOOP 306 Goto LOOP
307 307
308 DONE: 308 DONE:
309 Pop $0 309 Pop $0
310 Return 310 Return
311FunctionEnd 311FunctionEnd
312 312
313 313
314;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 314;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
315; Delete files in Documents and Settings\<user>\SecondLife\cache 315; Delete files in Documents and Settings\<user>\SecondLife\cache
316; Delete files in Documents and Settings\All Users\SecondLife\cache 316; Delete files in Documents and Settings\All Users\SecondLife\cache
317;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 317;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
318;Function RemoveCacheFiles 318;Function RemoveCacheFiles
319; 319;
320;; Delete files in Documents and Settings\<user>\SecondLife 320;; Delete files in Documents and Settings\<user>\SecondLife
321;Push $0 321;Push $0
322;Push $1 322;Push $1
323;Push $2 323;Push $2
324; DetailPrint $(RemoveCacheFilesDP) 324; DetailPrint $(RemoveCacheFilesDP)
325; 325;
326; StrCpy $0 0 ; Index number used to iterate via EnumRegKey 326; StrCpy $0 0 ; Index number used to iterate via EnumRegKey
327; 327;
328; LOOP: 328; LOOP:
329; EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0 329; EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0
330; StrCmp $1 "" DONE ; no more users 330; StrCmp $1 "" DONE ; no more users
331; 331;
332; ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath" 332; ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath"
333; StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing 333; StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing
334; 334;
335; ; Required since ProfileImagePath is of type REG_EXPAND_SZ 335; ; Required since ProfileImagePath is of type REG_EXPAND_SZ
336; ExpandEnvStrings $2 $2 336; ExpandEnvStrings $2 $2
337; 337;
338; ; When explicitly uninstalling, everything goes away 338; ; When explicitly uninstalling, everything goes away
339; RMDir /r "$2\Application Data\SecondLife\cache" 339; RMDir /r "$2\Application Data\SecondLife\cache"
340; 340;
341; CONTINUE: 341; CONTINUE:
342; IntOp $0 $0 + 1 342; IntOp $0 $0 + 1
343; Goto LOOP 343; Goto LOOP
344; DONE: 344; DONE:
345;Pop $2 345;Pop $2
346;Pop $1 346;Pop $1
347;Pop $0 347;Pop $0
348; 348;
349;; Delete files in Documents and Settings\All Users\SecondLife 349;; Delete files in Documents and Settings\All Users\SecondLife
350;Push $0 350;Push $0
351; ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData" 351; ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData"
352; StrCmp $0 "" +2 352; StrCmp $0 "" +2
353; RMDir /r "$0\SecondLife\cache" 353; RMDir /r "$0\SecondLife\cache"
354;Pop $0 354;Pop $0
355; 355;
356;; Delete filse in C:\Windows\Application Data\SecondLife 356;; Delete filse in C:\Windows\Application Data\SecondLife
357;; If the user is running on a pre-NT system, Application Data lives here instead of 357;; If the user is running on a pre-NT system, Application Data lives here instead of
358;; in Documents and Settings. 358;; in Documents and Settings.
359;RMDir /r "$WINDIR\Application Data\SecondLife\cache" 359;RMDir /r "$WINDIR\Application Data\SecondLife\cache"
360; 360;
361;FunctionEnd 361;FunctionEnd
362 362
363;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 363;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
364;;; Delete the installed shader files 364;;; Delete the installed shader files
365;;; Since shaders are in active development, we'll likely need to shuffle them 365;;; Since shaders are in active development, we'll likely need to shuffle them
366;;; around a bit from build to build. This ensures that shaders that we move 366;;; around a bit from build to build. This ensures that shaders that we move
367;;; or rename in the dev tree don't get left behind in the install. 367;;; or rename in the dev tree don't get left behind in the install.
368;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 368;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
369Function RemoveOldShaders 369Function RemoveOldShaders
370 370
371;; Remove old shader files first so fallbacks will work. see DEV-5663 371;; Remove old shader files first so fallbacks will work. see DEV-5663
372RMDir /r "$INSTDIR\app_settings\shaders\*" 372RMDir /r "$INSTDIR\app_settings\shaders\*"
373 373
374FunctionEnd 374FunctionEnd
375 375
376;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 376;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
377;;; Delete the installed XUI files 377;;; Delete the installed XUI files
378;;; We've changed the directory hierarchy for skins, putting all XUI and texture 378;;; We've changed the directory hierarchy for skins, putting all XUI and texture
379;;; files under a specific skin directory, i.e. skins/default/xui/en-us as opposed 379;;; files under a specific skin directory, i.e. skins/default/xui/en-us as opposed
380;;; to skins/xui/en-us. Need to clean up the old path when upgrading 380;;; to skins/xui/en-us. Need to clean up the old path when upgrading
381;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 381;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
382Function RemoveOldXUI 382Function RemoveOldXUI
383 383
384;; remove old XUI and texture files 384;; remove old XUI and texture files
385RmDir /r "$INSTDIR\skins\html" 385RmDir /r "$INSTDIR\skins\html"
386RmDir /r "$INSTDIR\skins\xui" 386RmDir /r "$INSTDIR\skins\xui"
387RmDir /r "$INSTDIR\skins\textures" 387RmDir /r "$INSTDIR\skins\textures"
388Delete "$INSTDIR\skins\*.txt" 388Delete "$INSTDIR\skins\*.txt"
389 389
390FunctionEnd 390FunctionEnd
391 391
392;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 392;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
393;;; Remove any releasenotes files. 393;;; Remove any releasenotes files.
394;;; We are no longer including release notes with the viewer. This will delete 394;;; We are no longer including release notes with the viewer. This will delete
395;;; any that were left behind by an older installer. Delete will not fail if 395;;; any that were left behind by an older installer. Delete will not fail if
396;;; the files do not exist 396;;; the files do not exist
397;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 397;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
398Function RemoveOldReleaseNotes 398Function RemoveOldReleaseNotes
399 399
400;; remove releasenotes.txt file from application directory, and the shortcut 400;; remove releasenotes.txt file from application directory, and the shortcut
401;; from the start menu. 401;; from the start menu.
402Delete "$SMPROGRAMS\$INSTSHORTCUT\SL Release Notes.lnk" 402Delete "$SMPROGRAMS\$INSTSHORTCUT\SL Release Notes.lnk"
403Delete "$INSTDIR\releasenotes.txt" 403Delete "$INSTDIR\releasenotes.txt"
404 404
405FunctionEnd 405FunctionEnd
406 406
407 407
408;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 408;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
409; Delete files in Documents and Settings\<user>\SecondLife 409; Delete files in Documents and Settings\<user>\SecondLife
410; Delete files in Documents and Settings\All Users\SecondLife 410; Delete files in Documents and Settings\All Users\SecondLife
411;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 411;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
412Function un.DocumentsAndSettingsFolder 412Function un.DocumentsAndSettingsFolder
413 413
414; Delete files in Documents and Settings\<user>\SecondLife 414; Delete files in Documents and Settings\<user>\SecondLife
415Push $0 415Push $0
416Push $1 416Push $1
417Push $2 417Push $2
418 418
419 DetailPrint "Deleting files in Documents and Settings folder" 419 DetailPrint "Deleting files in Documents and Settings folder"
420 420
421 StrCpy $0 0 ; Index number used to iterate via EnumRegKey 421 StrCpy $0 0 ; Index number used to iterate via EnumRegKey
422 422
423 LOOP: 423 LOOP:
424 EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0 424 EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0
425 StrCmp $1 "" DONE ; no more users 425 StrCmp $1 "" DONE ; no more users
426 426
427 ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath" 427 ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath"
428 StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing 428 StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing
429 429
430 ; Required since ProfileImagePath is of type REG_EXPAND_SZ 430 ; Required since ProfileImagePath is of type REG_EXPAND_SZ
431 ExpandEnvStrings $2 $2 431 ExpandEnvStrings $2 $2
432 432
433 ; If uninstalling a normal install remove everything 433 ; If uninstalling a normal install remove everything
434 ; Otherwise (preview/dmz etc) just remove cache 434 ; Otherwise (preview/dmz etc) just remove cache
435 StrCmp $INSTFLAGS "" RM_ALL RM_CACHE 435 StrCmp $INSTFLAGS "" RM_ALL RM_CACHE
436 RM_ALL: 436 RM_ALL:
437 RMDir /r "$2\Application Data\SecondLife" 437 RMDir /r "$2\Application Data\SecondLife"
438 GoTo CONTINUE 438 GoTo CONTINUE
439 RM_CACHE: 439 RM_CACHE:
440 RMDir /r "$2\Application Data\SecondLife\Cache" 440 RMDir /r "$2\Application Data\SecondLife\Cache"
441 Delete "$2\Application Data\SecondLife\user_settings\settings_windlight.xml" 441 Delete "$2\Application Data\SecondLife\user_settings\settings_windlight.xml"
442 442
443 CONTINUE: 443 CONTINUE:
444 IntOp $0 $0 + 1 444 IntOp $0 $0 + 1
445 Goto LOOP 445 Goto LOOP
446 DONE: 446 DONE:
447 447
448Pop $2 448Pop $2
449Pop $1 449Pop $1
450Pop $0 450Pop $0
451 451
452; Delete files in Documents and Settings\All Users\SecondLife 452; Delete files in Documents and Settings\All Users\SecondLife
453Push $0 453Push $0
454 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData" 454 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData"
455 StrCmp $0 "" +2 455 StrCmp $0 "" +2
456 RMDir /r "$0\SecondLife" 456 RMDir /r "$0\SecondLife"
457Pop $0 457Pop $0
458 458
459; Delete filse in C:\Windows\Application Data\SecondLife 459; Delete filse in C:\Windows\Application Data\SecondLife
460; If the user is running on a pre-NT system, Application Data lives here instead of 460; If the user is running on a pre-NT system, Application Data lives here instead of
461; in Documents and Settings. 461; in Documents and Settings.
462RMDir /r "$WINDIR\Application Data\SecondLife" 462RMDir /r "$WINDIR\Application Data\SecondLife"
463 463
464FunctionEnd 464FunctionEnd
465 465
466;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 466;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
467; Close the program, if running. Modifies no variables. 467; Close the program, if running. Modifies no variables.
468; Allows user to bail out of uninstall process. 468; Allows user to bail out of uninstall process.
469;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 469;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
470Function un.CloseSecondLife 470Function un.CloseSecondLife
471 Push $0 471 Push $0
472 FindWindow $0 "Second Life" "" 472 FindWindow $0 "Imprudence" ""
473 IntCmp $0 0 DONE 473 IntCmp $0 0 DONE
474 MessageBox MB_OKCANCEL $(CloseSecondLifeUnInstMB) IDOK CLOSE IDCANCEL CANCEL_UNINSTALL 474 MessageBox MB_OKCANCEL $(CloseSecondLifeUnInstMB) IDOK CLOSE IDCANCEL CANCEL_UNINSTALL
475 475
476 CANCEL_UNINSTALL: 476 CANCEL_UNINSTALL:
477 Quit 477 Quit
478 478
479 CLOSE: 479 CLOSE:
480 DetailPrint $(CloseSecondLifeUnInstDP) 480 DetailPrint $(CloseSecondLifeUnInstDP)
481 SendMessage $0 16 0 0 481 SendMessage $0 16 0 0
482 482
483 LOOP: 483 LOOP:
484 FindWindow $0 "Second Life" "" 484 FindWindow $0 "Imprudence" ""
485 IntCmp $0 0 DONE 485 IntCmp $0 0 DONE
486 Sleep 500 486 Sleep 500
487 Goto LOOP 487 Goto LOOP
488 488
489 DONE: 489 DONE:
490 Pop $0 490 Pop $0
491 Return 491 Return
492FunctionEnd 492FunctionEnd
493 493
494 494
495;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 495;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
496; 496;
497; Delete the stored password for the current Windows user 497; Delete the stored password for the current Windows user
498; DEV-10821 -- Unauthorised user can gain access to an SL account after a real user has uninstalled 498; DEV-10821 -- Unauthorised user can gain access to an SL account after a real user has uninstalled
499; 499;
500Function un.RemovePassword 500Function un.RemovePassword
501 501
502DetailPrint "Removing Second Life password" 502DetailPrint "Removing Second Life password"
503 503
504SetShellVarContext current 504SetShellVarContext current
505Delete "$APPDATA\SecondLife\user_settings\password.dat" 505Delete "$APPDATA\SecondLife\user_settings\password.dat"
506SetShellVarContext all 506SetShellVarContext all
507 507
508FunctionEnd 508FunctionEnd
509 509
510;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 510;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
511;;; Delete the installed files 511;;; Delete the installed files
512;;; This deletes the uninstall executable, but it works 512;;; This deletes the uninstall executable, but it works
513;;; because it is copied to temp directory before running 513;;; because it is copied to temp directory before running
514;;; 514;;;
515;;; Note: You must list all files here, because we only 515;;; Note: You must list all files here, because we only
516;;; want to delete our files, not things users left in the 516;;; want to delete our files, not things users left in the
517;;; application directories. 517;;; application directories.
518;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 518;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
519Function un.ProgramFiles 519Function un.ProgramFiles
520 520
521;; Remove mozilla file first so recursive directory deletion doesn't get hung up 521;; Remove mozilla file first so recursive directory deletion doesn't get hung up
522Delete "$INSTDIR\app_settings\mozilla\components" 522Delete "$INSTDIR\app_settings\mozilla\components"
523 523
524;; This placeholder is replaced by the complete list of files to uninstall by viewer_manifest.py 524;; This placeholder is replaced by the complete list of files to uninstall by viewer_manifest.py
525%%DELETE_FILES%% 525%%DELETE_FILES%%
526 526
527;; Optional/obsolete files. Delete won't fail if they don't exist. 527;; Optional/obsolete files. Delete won't fail if they don't exist.
528Delete "$INSTDIR\dronesettings.ini" 528Delete "$INSTDIR\dronesettings.ini"
529Delete "$INSTDIR\message_template.msg" 529Delete "$INSTDIR\message_template.msg"
530Delete "$INSTDIR\newview.pdb" 530Delete "$INSTDIR\newview.pdb"
531Delete "$INSTDIR\newview.map" 531Delete "$INSTDIR\newview.map"
532Delete "$INSTDIR\SecondLife.pdb" 532Delete "$INSTDIR\SecondLife.pdb"
533Delete "$INSTDIR\SecondLife.map" 533Delete "$INSTDIR\SecondLife.map"
534Delete "$INSTDIR\comm.dat" 534Delete "$INSTDIR\comm.dat"
535Delete "$INSTDIR\*.glsl" 535Delete "$INSTDIR\*.glsl"
536Delete "$INSTDIR\motions\*.lla" 536Delete "$INSTDIR\motions\*.lla"
537Delete "$INSTDIR\trial\*.html" 537Delete "$INSTDIR\trial\*.html"
538Delete "$INSTDIR\newview.exe" 538Delete "$INSTDIR\newview.exe"
539;; Remove entire help directory 539;; Remove entire help directory
540Delete "$INSTDIR\help\Advanced\*" 540Delete "$INSTDIR\help\Advanced\*"
541RMDir "$INSTDIR\help\Advanced" 541RMDir "$INSTDIR\help\Advanced"
542Delete "$INSTDIR\help\basics\*" 542Delete "$INSTDIR\help\basics\*"
543RMDir "$INSTDIR\help\basics" 543RMDir "$INSTDIR\help\basics"
544Delete "$INSTDIR\help\Concepts\*" 544Delete "$INSTDIR\help\Concepts\*"
545RMDir "$INSTDIR\help\Concepts" 545RMDir "$INSTDIR\help\Concepts"
546Delete "$INSTDIR\help\welcome\*" 546Delete "$INSTDIR\help\welcome\*"
547RMDir "$INSTDIR\help\welcome" 547RMDir "$INSTDIR\help\welcome"
548Delete "$INSTDIR\help\*" 548Delete "$INSTDIR\help\*"
549RMDir "$INSTDIR\help" 549RMDir "$INSTDIR\help"
550 550
551Delete "$INSTDIR\uninst.exe" 551Delete "$INSTDIR\uninst.exe"
552RMDir "$INSTDIR" 552RMDir "$INSTDIR"
553 553
554IfFileExists "$INSTDIR" FOLDERFOUND NOFOLDER 554IfFileExists "$INSTDIR" FOLDERFOUND NOFOLDER
555 555
556FOLDERFOUND: 556FOLDERFOUND:
557 MessageBox MB_YESNO $(DeleteProgramFilesMB) IDNO NOFOLDER 557 MessageBox MB_YESNO $(DeleteProgramFilesMB) IDNO NOFOLDER
558 RMDir /r "$INSTDIR" 558 RMDir /r "$INSTDIR"
559 559
560NOFOLDER: 560NOFOLDER:
561 561
562FunctionEnd 562FunctionEnd
563 563
564;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 564;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
565;;; Uninstall settings 565;;; Uninstall settings
566;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 566;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
567UninstallText $(UninstallTextMsg) 567UninstallText $(UninstallTextMsg)
568ShowUninstDetails show 568ShowUninstDetails show
569 569
570;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 570;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
571;;; Uninstall section 571;;; Uninstall section
572;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 572;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
573Section Uninstall 573Section Uninstall
574 574
575; Start with some default values. 575; Start with some default values.
576StrCpy $INSTFLAGS "" 576StrCpy $INSTFLAGS ""
577StrCpy $INSTPROG "${INSTNAME}" 577StrCpy $INSTPROG "${INSTNAME}"
578StrCpy $INSTEXE "${INSTEXE}" 578StrCpy $INSTEXE "${INSTEXE}"
579StrCpy $INSTSHORTCUT "${SHORTCUT}" 579StrCpy $INSTSHORTCUT "${SHORTCUT}"
580Call un.CheckStartupParams ; Figure out where, what and how to uninstall. 580Call un.CheckStartupParams ; Figure out where, what and how to uninstall.
581Call un.CheckIfAdministrator ; Make sure the user can install/uninstall 581Call un.CheckIfAdministrator ; Make sure the user can install/uninstall
582 582
583; uninstall for all users (if you change this, change it in the install as well) 583; uninstall for all users (if you change this, change it in the install as well)
584SetShellVarContext all 584SetShellVarContext all
585 585
586; Make sure we're not running 586; Make sure we're not running
587Call un.CloseSecondLife 587Call un.CloseSecondLife
588 588
589; Clean up registry keys (these should all be !defines somewhere) 589; Clean up registry keys (these should all be !defines somewhere)
590DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" 590DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG"
591DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" 591DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG"
592DeleteRegKey HKEY_LOCAL_MACHINE "Software\Linden Research, Inc.\Installer Language" 592DeleteRegKey HKEY_LOCAL_MACHINE "Software\Linden Research, Inc.\Installer Language"
593 593
594; Clean up shortcuts 594; Clean up shortcuts
595Delete "$SMPROGRAMS\$INSTSHORTCUT\*.*" 595Delete "$SMPROGRAMS\$INSTSHORTCUT\*.*"
596RMDir "$SMPROGRAMS\$INSTSHORTCUT" 596RMDir "$SMPROGRAMS\$INSTSHORTCUT"
597 597
598Delete "$DESKTOP\$INSTSHORTCUT.lnk" 598Delete "$DESKTOP\$INSTSHORTCUT.lnk"
599Delete "$INSTDIR\$INSTSHORTCUT.lnk" 599Delete "$INSTDIR\$INSTSHORTCUT.lnk"
600Delete "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" 600Delete "$INSTDIR\Uninstall $INSTSHORTCUT.lnk"
601 601
602; Clean up cache and log files. 602; Clean up cache and log files.
603; Leave them in-place for non AGNI installs. 603; Leave them in-place for non AGNI installs.
604 604
605!ifdef UNINSTALL_SETTINGS 605!ifdef UNINSTALL_SETTINGS
606Call un.DocumentsAndSettingsFolder 606Call un.DocumentsAndSettingsFolder
607!endif 607!endif
608 608
609; remove stored password on uninstall 609; remove stored password on uninstall
610Call un.RemovePassword 610Call un.RemovePassword
611 611
612Call un.ProgramFiles 612Call un.ProgramFiles
613 613
614SectionEnd ; end of uninstall section 614SectionEnd ; end of uninstall section
615 615
616;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 616;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
617; (From the NSIS wiki, DK) 617; (From the NSIS wiki, DK)
618; GetParameterValue 618; GetParameterValue
619; 619;
620; Usage: 620; Usage:
621; !insertmacro GetParameterValue "/L=" "1033" 621; !insertmacro GetParameterValue "/L=" "1033"
622; pop $R0 622; pop $R0
623; 623;
624; Returns on top of stack 624; Returns on top of stack
625; 625;
626; Example command lines: 626; Example command lines:
627; foo.exe /S /L=1033 /D=C:\Program Files\Foo 627; foo.exe /S /L=1033 /D=C:\Program Files\Foo
628; or: 628; or:
629; foo.exe /S "/L=1033" /D="C:\Program Files\Foo" 629; foo.exe /S "/L=1033" /D="C:\Program Files\Foo"
630; gpv "/L=" "1033" 630; gpv "/L=" "1033"
631;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 631;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
632 632
633 !macro GetParameterValue SWITCH DEFAULT 633 !macro GetParameterValue SWITCH DEFAULT
634 Push $0 634 Push $0
635 Push $1 635 Push $1
636 Push $2 636 Push $2
637 Push $3 637 Push $3
638 Push $4 638 Push $4
639 639
640 ;$CMDLINE='"My Setup\Setup.exe" /L=1033 /S' 640 ;$CMDLINE='"My Setup\Setup.exe" /L=1033 /S'
641 Push "$CMDLINE" 641 Push "$CMDLINE"
642 Push '${SWITCH}"' 642 Push '${SWITCH}"'
643 !insertmacro StrStr 643 !insertmacro StrStr
644 Pop $0 644 Pop $0
645 StrCmp "$0" "" gpv_notquoted 645 StrCmp "$0" "" gpv_notquoted
646 ;$0='/L="1033" /S' 646 ;$0='/L="1033" /S'
647 StrLen $2 "$0" 647 StrLen $2 "$0"
648 Strlen $1 "${SWITCH}" 648 Strlen $1 "${SWITCH}"
649 IntOp $1 $1 + 1 649 IntOp $1 $1 + 1
650 StrCpy $0 "$0" $2 $1 650 StrCpy $0 "$0" $2 $1
651 ;$0='1033" /S' 651 ;$0='1033" /S'
652 Push "$0" 652 Push "$0"
653 Push '"' 653 Push '"'
654 !insertmacro StrStr 654 !insertmacro StrStr
655 Pop $1 655 Pop $1
656 StrLen $2 "$0" 656 StrLen $2 "$0"
657 StrLen $3 "$1" 657 StrLen $3 "$1"
658 IntOp $4 $2 - $3 658 IntOp $4 $2 - $3
659 StrCpy $0 $0 $4 0 659 StrCpy $0 $0 $4 0
660 Goto gpv_done 660 Goto gpv_done
661 661
662 gpv_notquoted: 662 gpv_notquoted:
663 Push "$CMDLINE" 663 Push "$CMDLINE"
664 Push "${SWITCH}" 664 Push "${SWITCH}"
665 !insertmacro StrStr 665 !insertmacro StrStr
666 Pop $0 666 Pop $0
667 StrCmp "$0" "" gpv_done 667 StrCmp "$0" "" gpv_done
668 ;$0='/L="1033" /S' 668 ;$0='/L="1033" /S'
669 StrLen $2 "$0" 669 StrLen $2 "$0"
670 Strlen $1 "${SWITCH}" 670 Strlen $1 "${SWITCH}"
671 StrCpy $0 "$0" $2 $1 671 StrCpy $0 "$0" $2 $1
672 ;$0=1033 /S' 672 ;$0=1033 /S'
673 Push "$0" 673 Push "$0"
674 Push ' ' 674 Push ' '
675 !insertmacro StrStr 675 !insertmacro StrStr
676 Pop $1 676 Pop $1
677 StrLen $2 "$0" 677 StrLen $2 "$0"
678 StrLen $3 "$1" 678 StrLen $3 "$1"
679 IntOp $4 $2 - $3 679 IntOp $4 $2 - $3
680 StrCpy $0 $0 $4 0 680 StrCpy $0 $0 $4 0
681 Goto gpv_done 681 Goto gpv_done
682 682
683 gpv_done: 683 gpv_done:
684 StrCmp "$0" "" 0 +2 684 StrCmp "$0" "" 0 +2
685 StrCpy $0 "${DEFAULT}" 685 StrCpy $0 "${DEFAULT}"
686 686
687 Pop $4 687 Pop $4
688 Pop $3 688 Pop $3
689 Pop $2 689 Pop $2
690 Pop $1 690 Pop $1
691 Exch $0 691 Exch $0
692 !macroend 692 !macroend
693 693
694; And I had to modify StrStr a tiny bit. 694; And I had to modify StrStr a tiny bit.
695; Possible upgrade switch the goto's to use ${__LINE__} 695; Possible upgrade switch the goto's to use ${__LINE__}
696 696
697!macro STRSTR 697!macro STRSTR
698 Exch $R1 ; st=haystack,old$R1, $R1=needle 698 Exch $R1 ; st=haystack,old$R1, $R1=needle
699 Exch ; st=old$R1,haystack 699 Exch ; st=old$R1,haystack
700 Exch $R2 ; st=old$R1,old$R2, $R2=haystack 700 Exch $R2 ; st=old$R1,old$R2, $R2=haystack
701 Push $R3 701 Push $R3
702 Push $R4 702 Push $R4
703 Push $R5 703 Push $R5
704 StrLen $R3 $R1 704 StrLen $R3 $R1
705 StrCpy $R4 0 705 StrCpy $R4 0
706 ; $R1=needle 706 ; $R1=needle
707 ; $R2=haystack 707 ; $R2=haystack
708 ; $R3=len(needle) 708 ; $R3=len(needle)
709 ; $R4=cnt 709 ; $R4=cnt
710 ; $R5=tmp 710 ; $R5=tmp
711 ; loop; 711 ; loop;
712 StrCpy $R5 $R2 $R3 $R4 712 StrCpy $R5 $R2 $R3 $R4
713 StrCmp $R5 $R1 +4 713 StrCmp $R5 $R1 +4
714 StrCmp $R5 "" +3 714 StrCmp $R5 "" +3
715 IntOp $R4 $R4 + 1 715 IntOp $R4 $R4 + 1
716 Goto -4 716 Goto -4
717 ; done; 717 ; done;
718 StrCpy $R1 $R2 "" $R4 718 StrCpy $R1 $R2 "" $R4
719 Pop $R5 719 Pop $R5
720 Pop $R4 720 Pop $R4
721 Pop $R3 721 Pop $R3
722 Pop $R2 722 Pop $R2
723 Exch $R1 723 Exch $R1
724!macroend 724!macroend
725 725
726Function GetProgramName 726Function GetProgramName
727 !insertmacro GetParameterValue "/P=" "SecondLife" 727 !insertmacro GetParameterValue "/P=" "Imprudence"
728FunctionEnd 728FunctionEnd
729 729
730Function un.GetProgramName 730Function un.GetProgramName
731 !insertmacro GetParameterValue "/P=" "SecondLife" 731 !insertmacro GetParameterValue "/P=" "Imprudence"
732FunctionEnd 732FunctionEnd
733 733
734;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 734;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
735; (From the NSIS documentation, JC) 735; (From the NSIS documentation, JC)
736; GetWindowsVersion 736; GetWindowsVersion
737; 737;
738; Based on Yazno's function, http://yazno.tripod.com/powerpimpit/ 738; Based on Yazno's function, http://yazno.tripod.com/powerpimpit/
739; Updated by Joost Verburg 739; Updated by Joost Verburg
740; 740;
741; Returns on top of stack 741; Returns on top of stack
742; 742;
743; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003) 743; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003)
744; or 744; or
745; '' (Unknown Windows Version) 745; '' (Unknown Windows Version)
746; 746;
747; Usage: 747; Usage:
748; Call GetWindowsVersion 748; Call GetWindowsVersion
749; Pop $R0 749; Pop $R0
750; ; at this point $R0 is "NT 4.0" or whatnot 750; ; at this point $R0 is "NT 4.0" or whatnot
751;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 751;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
752Function GetWindowsVersion 752Function GetWindowsVersion
753 753
754 Push $R0 754 Push $R0
755 Push $R1 755 Push $R1
756 756
757 ReadRegStr $R0 HKLM \ 757 ReadRegStr $R0 HKLM \
758 "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion 758 "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
759 759
760 IfErrors 0 lbl_winnt 760 IfErrors 0 lbl_winnt
761 761
762 ; we are not NT 762 ; we are not NT
763 ReadRegStr $R0 HKLM \ 763 ReadRegStr $R0 HKLM \
764 "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber 764 "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber
765 765
766 StrCpy $R1 $R0 1 766 StrCpy $R1 $R0 1
767 StrCmp $R1 '4' 0 lbl_error 767 StrCmp $R1 '4' 0 lbl_error
768 768
769 StrCpy $R1 $R0 3 769 StrCpy $R1 $R0 3
770 770
771 StrCmp $R1 '4.0' lbl_win32_95 771 StrCmp $R1 '4.0' lbl_win32_95
772 StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98 772 StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98
773 773
774 lbl_win32_95: 774 lbl_win32_95:
775 StrCpy $R0 '95' 775 StrCpy $R0 '95'
776 Goto lbl_done 776 Goto lbl_done
777 777
778 lbl_win32_98: 778 lbl_win32_98:
779 StrCpy $R0 '98' 779 StrCpy $R0 '98'
780 Goto lbl_done 780 Goto lbl_done
781 781
782 lbl_win32_ME: 782 lbl_win32_ME:
783 StrCpy $R0 'ME' 783 StrCpy $R0 'ME'
784 Goto lbl_done 784 Goto lbl_done
785 785
786 lbl_winnt: 786 lbl_winnt:
787 787
788 StrCpy $R1 $R0 1 788 StrCpy $R1 $R0 1
789 789
790 StrCmp $R1 '3' lbl_winnt_x 790 StrCmp $R1 '3' lbl_winnt_x
791 StrCmp $R1 '4' lbl_winnt_x 791 StrCmp $R1 '4' lbl_winnt_x
792 792
793 StrCpy $R1 $R0 3 793 StrCpy $R1 $R0 3
794 794
795 StrCmp $R1 '5.0' lbl_winnt_2000 795 StrCmp $R1 '5.0' lbl_winnt_2000
796 StrCmp $R1 '5.1' lbl_winnt_XP 796 StrCmp $R1 '5.1' lbl_winnt_XP
797 StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error 797 StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error
798 798
799 lbl_winnt_x: 799 lbl_winnt_x:
800 StrCpy $R0 "NT $R0" 6 800 StrCpy $R0 "NT $R0" 6
801 Goto lbl_done 801 Goto lbl_done
802 802
803 lbl_winnt_2000: 803 lbl_winnt_2000:
804 Strcpy $R0 '2000' 804 Strcpy $R0 '2000'
805 Goto lbl_done 805 Goto lbl_done
806 806
807 lbl_winnt_XP: 807 lbl_winnt_XP:
808 Strcpy $R0 'XP' 808 Strcpy $R0 'XP'
809 Goto lbl_done 809 Goto lbl_done
810 810
811 lbl_winnt_2003: 811 lbl_winnt_2003:
812 Strcpy $R0 '2003' 812 Strcpy $R0 '2003'
813 Goto lbl_done 813 Goto lbl_done
814 814
815 lbl_error: 815 lbl_error:
816 Strcpy $R0 '' 816 Strcpy $R0 ''
817 lbl_done: 817 lbl_done:
818 818
819 Pop $R1 819 Pop $R1
820 Exch $R0 820 Exch $R0
821 821
822FunctionEnd 822FunctionEnd
823 823
824;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 824;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
825;; Note: to add new languages, add a language file include to the list 825;; Note: to add new languages, add a language file include to the list
826;; at the top of this file, add an entry to the menu and then add an 826;; at the top of this file, add an entry to the menu and then add an
827;; entry to the language ID selector below 827;; entry to the language ID selector below
828;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 828;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
829Function .onInit 829Function .onInit
830 830
831 ; read the language from registry (ok if not there) and set langauge menu 831 ; read the language from registry (ok if not there) and set langauge menu
832 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" 832 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage"
833 StrCpy $LANGUAGE $0 833 StrCpy $LANGUAGE $0
834 834
835 Push "" 835 Push ""
836 Push ${LANG_ENGLISH} 836 Push ${LANG_ENGLISH}
837 Push English 837 Push English
838 Push ${LANG_GERMAN} 838 Push ${LANG_GERMAN}
839 Push German 839 Push German
840 Push ${LANG_JAPANESE} 840 Push ${LANG_JAPANESE}
841 Push Japanese 841 Push Japanese
842 Push ${LANG_KOREAN} 842 Push ${LANG_KOREAN}
843 Push Korean 843 Push Korean
844 Push A ; A means auto count languages for the auto count to work the first empty push (Push "") must remain 844 Push A ; A means auto count languages for the auto count to work the first empty push (Push "") must remain
845 LangDLL::LangDialog "Installer Language" "Please select the language of the installer" 845 LangDLL::LangDialog "Installer Language" "Please select the language of the installer"
846 Pop $LANGUAGE 846 Pop $LANGUAGE
847 StrCmp $LANGUAGE "cancel" 0 +2 847 StrCmp $LANGUAGE "cancel" 0 +2
848 Abort 848 Abort
849 849
850 ; save language in registry 850 ; save language in registry
851 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" $LANGUAGE 851 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" $LANGUAGE
852FunctionEnd 852FunctionEnd
853 853
854;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 854;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
855Function un.onInit 855Function un.onInit
856 856
857 ; read language from registry and set for ininstaller 857 ; read language from registry and set for ininstaller
858 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" 858 ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage"
859 StrCpy $LANGUAGE $0 859 StrCpy $LANGUAGE $0
860 860
861FunctionEnd 861FunctionEnd
862 862
863 863
864;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 864;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
865;;; Sections 865;;; Sections
866;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 866;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
867Section "" ; (default section) 867Section "" ; (default section)
868 868
869SetShellVarContext all ; install for all users (if you change this, change it in the uninstall as well) 869SetShellVarContext all ; install for all users (if you change this, change it in the uninstall as well)
870 870
871; Start with some default values. 871; Start with some default values.
872StrCpy $INSTFLAGS "${INSTFLAGS}" 872StrCpy $INSTFLAGS "${INSTFLAGS}"
873StrCpy $INSTPROG "${INSTNAME}" 873StrCpy $INSTPROG "${INSTNAME}"
874StrCpy $INSTEXE "${INSTEXE}" 874StrCpy $INSTEXE "${INSTEXE}"
875StrCpy $INSTSHORTCUT "${SHORTCUT}" 875StrCpy $INSTSHORTCUT "${SHORTCUT}"
876 876
877IfSilent +2 877IfSilent +2
878Goto NOT_SILENT 878Goto NOT_SILENT
879 Call CheckStartupParams ; Figure out where, what and how to install. 879 Call CheckStartupParams ; Figure out where, what and how to install.
880NOT_SILENT: 880NOT_SILENT:
881Call CheckWindowsVersion ; warn if on Windows 98/ME 881Call CheckWindowsVersion ; warn if on Windows 98/ME
882Call CheckIfAdministrator ; Make sure the user can install/uninstall 882Call CheckIfAdministrator ; Make sure the user can install/uninstall
883Call CheckIfAlreadyCurrent ; Make sure that we haven't already installed this version 883Call CheckIfAlreadyCurrent ; Make sure that we haven't already installed this version
884Call CloseSecondLife ; Make sure we're not running 884Call CloseSecondLife ; Make sure we're not running
885Call RemoveNSIS ; Check for old NSIS install to remove 885Call RemoveNSIS ; Check for old NSIS install to remove
886 886
887;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 887;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
888;;; Don't remove cache files during a regular install, removing the inventory cache on upgrades results in lots of damage to the servers. 888;;; Don't remove cache files during a regular install, removing the inventory cache on upgrades results in lots of damage to the servers.
889;Call RemoveCacheFiles ; Installing over removes potentially corrupted 889;Call RemoveCacheFiles ; Installing over removes potentially corrupted
890 ; VFS and cache files. 890 ; VFS and cache files.
891 891
892;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 892;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
893;;; Need to clean out shader files from previous installs to fix DEV-5663 893;;; Need to clean out shader files from previous installs to fix DEV-5663
894Call RemoveOldShaders 894Call RemoveOldShaders
895 895
896;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 896;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
897;;; Need to clean out old XUI files that predate skinning 897;;; Need to clean out old XUI files that predate skinning
898Call RemoveOldXUI 898Call RemoveOldXUI
899 899
900;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 900;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
901;;; Clear out old releasenotes.txt files. These are now on the public wiki. 901;;; Clear out old releasenotes.txt files. These are now on the public wiki.
902Call RemoveOldReleaseNotes 902Call RemoveOldReleaseNotes
903 903
904;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 904;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
905;;; Files 905;;; Files
906;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 906;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
907;; This placeholder is replaced by the complete list of all the files in the installer, by viewer_manifest.py 907;; This placeholder is replaced by the complete list of all the files in the installer, by viewer_manifest.py
908%%INSTALL_FILES%% 908%%INSTALL_FILES%%
909 909
910;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 910;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
911; If this is a silent update, we don't need to re-create these shortcuts or registry entries. 911; If this is a silent update, we don't need to re-create these shortcuts or registry entries.
912IfSilent POST_INSTALL 912IfSilent POST_INSTALL
913 913
914;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 914;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
915; Shortcuts in start menu 915; Shortcuts in start menu
916CreateDirectory "$SMPROGRAMS\$INSTSHORTCUT" 916CreateDirectory "$SMPROGRAMS\$INSTSHORTCUT"
917SetOutPath "$INSTDIR" 917SetOutPath "$INSTDIR"
918CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT.lnk" \ 918CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT.lnk" \
919 "$INSTDIR\$INSTEXE" "$INSTFLAGS" 919 "$INSTDIR\$INSTEXE" "$INSTFLAGS"
920 920
921!ifdef MUSEUM 921!ifdef MUSEUM
922CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT Museum.lnk" \ 922CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT Museum.lnk" \
923 923
924 "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple" 924 "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple"
925CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT Museum Spanish.lnk" \ 925CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT Museum Spanish.lnk" \
926 926
927 "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple -spanish" 927 "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple -spanish"
928!endif 928!endif
929 929
930WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Create Trial Account.url" \ 930WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Create Trial Account.url" \
931 "InternetShortcut" "URL" \ 931 "InternetShortcut" "URL" \
932 "http://www.secondlife.com/registration/" 932 "http://www.secondlife.com/registration/"
933WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Your Account.url" \ 933WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Your Account.url" \
934 "InternetShortcut" "URL" \ 934 "InternetShortcut" "URL" \
935 "http://www.secondlife.com/account/" 935 "http://www.secondlife.com/account/"
936CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\SL Scripting Language Help.lnk" \ 936CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\SL Scripting Language Help.lnk" \
937 "$INSTDIR\lsl_guide.html" 937 "$INSTDIR\lsl_guide.html"
938CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\Uninstall $INSTSHORTCUT.lnk" \ 938CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\Uninstall $INSTSHORTCUT.lnk" \
939 '"$INSTDIR\uninst.exe"' '/P="$INSTPROG"' 939 '"$INSTDIR\uninst.exe"' '/P="$INSTPROG"'
940 940
941;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 941;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
942; Other shortcuts 942; Other shortcuts
943SetOutPath "$INSTDIR" 943SetOutPath "$INSTDIR"
944CreateShortCut "$DESKTOP\$INSTSHORTCUT.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS" 944CreateShortCut "$DESKTOP\$INSTSHORTCUT.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS"
945CreateShortCut "$INSTDIR\$INSTSHORTCUT.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS" 945CreateShortCut "$INSTDIR\$INSTSHORTCUT.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS"
946CreateShortCut "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" \ 946CreateShortCut "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" \
947 '"$INSTDIR\uninst.exe"' '/P="$INSTPROG"' 947 '"$INSTDIR\uninst.exe"' '/P="$INSTPROG"'
948 948
949!ifdef MUSEUM 949!ifdef MUSEUM
950CreateShortCut "$DESKTOP\$INSTSHORTCUT Museum.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple" 950CreateShortCut "$DESKTOP\$INSTSHORTCUT Museum.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple"
951 951
952CreateShortCut "$DESKTOP\$INSTSHORTCUT Museum Spanish.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple -spanish" 952CreateShortCut "$DESKTOP\$INSTSHORTCUT Museum Spanish.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple -spanish"
953 953
954CreateShortCut "$INSTDIR\$INSTSHORTCUT Museum.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple" 954CreateShortCut "$INSTDIR\$INSTSHORTCUT Museum.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple"
955 955
956CreateShortCut "$INSTDIR\$INSTSHORTCUT Museum Spanish.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple -spanish" 956CreateShortCut "$INSTDIR\$INSTSHORTCUT Museum Spanish.lnk" "$INSTDIR\$INSTEXE" "$INSTFLAGS -simple -spanish"
957 957
958!endif 958!endif
959 959
960;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 960;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
961; Write registry 961; Write registry
962WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" "$INSTDIR" 962WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" "$INSTDIR"
963WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" "${VERSION_LONG}" 963WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" "${VERSION_LONG}"
964WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags" "$INSTFLAGS" 964WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags" "$INSTFLAGS"
965WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut" "$INSTSHORTCUT" 965WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut" "$INSTSHORTCUT"
966WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe" "$INSTEXE" 966WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe" "$INSTEXE"
967WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "DisplayName" "$INSTPROG (remove only)" 967WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "DisplayName" "$INSTPROG (remove only)"
968WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "UninstallString" '"$INSTDIR\uninst.exe" /P="$INSTPROG"' 968WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "UninstallString" '"$INSTDIR\uninst.exe" /P="$INSTPROG"'
969 969
970;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 970;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
971; Write URL registry info 971; Write URL registry info
972WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "(default)" "URL:Second Life" 972WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "(default)" "URL:Second Life"
973WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "URL Protocol" "" 973WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "URL Protocol" ""
974WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}\DefaultIcon" "" '"$INSTDIR\$INSTEXE"' 974WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}\DefaultIcon" "" '"$INSTDIR\$INSTEXE"'
975WriteRegExpandStr HKEY_CLASSES_ROOT "${URLNAME}\shell\open\command" "" '"$INSTDIR\$INSTEXE" $INSTFLAGS -url "%1"' 975WriteRegExpandStr HKEY_CLASSES_ROOT "${URLNAME}\shell\open\command" "" '"$INSTDIR\$INSTEXE" $INSTFLAGS -url "%1"'
976 976
977Goto WRITE_UNINST 977Goto WRITE_UNINST
978 978
979POST_INSTALL: 979POST_INSTALL:
980; Run a post-executable script if necessary. 980; Run a post-executable script if necessary.
981Call PostInstallExe 981Call PostInstallExe
982 982
983WRITE_UNINST: 983WRITE_UNINST:
984; write out uninstaller 984; write out uninstaller
985WriteUninstaller "$INSTDIR\uninst.exe" 985WriteUninstaller "$INSTDIR\uninst.exe"
986 986
987; end of default section 987; end of default section
988SectionEnd 988SectionEnd
989 989
990;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; EOF ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 990;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; EOF ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
diff --git a/linden/indra/newview/installers/windows/lang_de.nsi b/linden/indra/newview/installers/windows/lang_de.nsi
index c410128..6be219e 100644
--- a/linden/indra/newview/installers/windows/lang_de.nsi
+++ b/linden/indra/newview/installers/windows/lang_de.nsi
@@ -1,57 +1,57 @@
1; First is default 1; First is default
2LoadLanguageFile "${NSISDIR}\Contrib\Language files\German.nlf" 2LoadLanguageFile "${NSISDIR}\Contrib\Language files\German.nlf"
3 3
4; subtitle on license text caption (setup new version or update current one 4; subtitle on license text caption (setup new version or update current one
5LangString LicenseSubTitleUpdate ${LANG_GERMAN} " Update" 5LangString LicenseSubTitleUpdate ${LANG_GERMAN} " Update"
6LangString LicenseSubTitleSetup ${LANG_GERMAN} " Setup" 6LangString LicenseSubTitleSetup ${LANG_GERMAN} " Setup"
7 7
8; description on license page 8; description on license page
9LangString LicenseDescUpdate ${LANG_GERMAN} "Dieses Paket wird das bereits installierte Second Life mit Version ${VERSION_LONG}. ersetzen." 9LangString LicenseDescUpdate ${LANG_GERMAN} "Dieses Paket wird das bereits installierte Imprudence mit Version ${VERSION_LONG}. ersetzen."
10LangString LicenseDescSetup ${LANG_GERMAN} "Dieses Paket wird Second Life auf Ihrem Computer installieren." 10LangString LicenseDescSetup ${LANG_GERMAN} "Dieses Paket wird Imprudence auf Ihrem Computer installieren."
11LangString LicenseDescNext ${LANG_GERMAN} "Weiter" 11LangString LicenseDescNext ${LANG_GERMAN} "Weiter"
12 12
13; installation directory text 13; installation directory text
14LangString DirectoryChooseTitle ${LANG_GERMAN} "Installations-Ordner" 14LangString DirectoryChooseTitle ${LANG_GERMAN} "Installations-Ordner"
15LangString DirectoryChooseUpdate ${LANG_GERMAN} "Wählen Sie den Second Life Ordner für dieses Update:" 15LangString DirectoryChooseUpdate ${LANG_GERMAN} "Wählen Sie den Imprudence Ordner für dieses Update:"
16LangString DirectoryChooseSetup ${LANG_GERMAN} "Pfad in dem Second Life installieren werden soll:" 16LangString DirectoryChooseSetup ${LANG_GERMAN} "Pfad in dem Imprudence installieren werden soll:"
17 17
18; CheckStartupParams message box 18; CheckStartupParams message box
19LangString CheckStartupParamsMB ${LANG_GERMAN} "Konnte Programm '$INSTPROG' nicht finden. Stilles Update fehlgeschlagen." 19LangString CheckStartupParamsMB ${LANG_GERMAN} "Konnte Programm '$INSTPROG' nicht finden. Stilles Update fehlgeschlagen."
20 20
21; installation success dialog 21; installation success dialog
22LangString InstSuccesssQuestion ${LANG_GERMAN} "Second Life starten?" 22LangString InstSuccesssQuestion ${LANG_GERMAN} "Imprudence starten?"
23 23
24; remove old NSIS version 24; remove old NSIS version
25LangString RemoveOldNSISVersion ${LANG_GERMAN} "Überprüfe alte Version ..." 25LangString RemoveOldNSISVersion ${LANG_GERMAN} "Überprüfe alte Version ..."
26 26
27; check windows version 27; check windows version
28LangString CheckWindowsVersionDP ${LANG_GERMAN} "Überprüfung der Windows Version ..." 28LangString CheckWindowsVersionDP ${LANG_GERMAN} "Überprüfung der Windows Version ..."
29LangString CheckWindowsVersionMB ${LANG_GERMAN} 'Second Life unterstützt nur Windows XP, Windows 2000 und Mac OS X.$\n$\nDer Versuch es auf Windows $R0 zu installieren, könnte zu unvorhersehbaren Abstürzen und Datenverlust führen.$\n$\nTrotzdem installieren?' 29LangString CheckWindowsVersionMB ${LANG_GERMAN} 'Imprudence unterstützt nur Windows XP, Windows 2000 und Mac OS X.$\n$\nDer Versuch es auf Windows $R0 zu installieren, könnte zu unvorhersehbaren Abstürzen und Datenverlust führen.$\n$\nTrotzdem installieren?'
30 30
31; checkifadministrator function (install) 31; checkifadministrator function (install)
32LangString CheckAdministratorInstDP ${LANG_GERMAN} "Überprüfung der Installations-Berechtigungen ..." 32LangString CheckAdministratorInstDP ${LANG_GERMAN} "Überprüfung der Installations-Berechtigungen ..."
33LangString CheckAdministratorInstMB ${LANG_GERMAN} 'Sie besitzen ungenügende Berechtigungen.$\nSie müssen ein "administrator" sein, um Second Life installieren zu können.' 33LangString CheckAdministratorInstMB ${LANG_GERMAN} 'Sie besitzen ungenügende Berechtigungen.$\nSie müssen ein "administrator" sein, um Imprudence installieren zu können.'
34 34
35; checkifadministrator function (uninstall) 35; checkifadministrator function (uninstall)
36LangString CheckAdministratorUnInstDP ${LANG_GERMAN} "Überprüfung der Entfernungs-Berechtigungen ..." 36LangString CheckAdministratorUnInstDP ${LANG_GERMAN} "Überprüfung der Entfernungs-Berechtigungen ..."
37LangString CheckAdministratorUnInstMB ${LANG_GERMAN} 'Sie besitzen ungenügende Berechtigungen.$\nSie müssen ein "administrator" sein, um Second Life entfernen zu können..' 37LangString CheckAdministratorUnInstMB ${LANG_GERMAN} 'Sie besitzen ungenügende Berechtigungen.$\nSie müssen ein "administrator" sein, um Imprudence entfernen zu können..'
38 38
39; checkifalreadycurrent 39; checkifalreadycurrent
40LangString CheckIfCurrentMB ${LANG_GERMAN} "Anscheinend ist Second Life ${VERSION_LONG} bereits installiert.$\n$\nWürden Sie es gerne erneut installieren?" 40LangString CheckIfCurrentMB ${LANG_GERMAN} "Anscheinend ist Imprudence ${VERSION_LONG} bereits installiert.$\n$\nWürden Sie es gerne erneut installieren?"
41 41
42; closesecondlife function (install) 42; closeimprudence function (install)
43LangString CloseSecondLifeInstDP ${LANG_GERMAN} "Warten auf die Beendigung von Second Life ..." 43LangString CloseSecondLifeInstDP ${LANG_GERMAN} "Warten auf die Beendigung von Imprudence ..."
44LangString CloseSecondLifeInstMB ${LANG_GERMAN} "Second Life kann nicht installiert oder ersetzt werden, wenn es bereits läuft.$\n$\nBeenden Sie, was Sie gerade tun und klicken Sie OK, um Second Life zu beenden.$\nKlicken Sie CANCEL, um die Installation abzubrechen." 44LangString CloseSecondLifeInstMB ${LANG_GERMAN} "Imprudence kann nicht installiert oder ersetzt werden, wenn es bereits läuft.$\n$\nBeenden Sie, was Sie gerade tun und klicken Sie OK, um Imprudence zu beenden.$\nKlicken Sie CANCEL, um die Installation abzubrechen."
45 45
46; closesecondlife function (uninstall) 46; closeimprudence function (uninstall)
47LangString CloseSecondLifeUnInstDP ${LANG_GERMAN} "Warten auf die Beendigung von Second Life ..." 47LangString CloseSecondLifeUnInstDP ${LANG_GERMAN} "Warten auf die Beendigung von Imprudence ..."
48LangString CloseSecondLifeUnInstMB ${LANG_GERMAN} "Second Life kann nicht entfernt werden, wenn es bereits läuft.$\n$\nBeenden Sie, was Sie gerade tun und klicken Sie OK, um Second Life zu beenden.$\nKlicken Sie CANCEL, um abzubrechen." 48LangString CloseSecondLifeUnInstMB ${LANG_GERMAN} "Imprudence kann nicht entfernt werden, wenn es bereits läuft.$\n$\nBeenden Sie, was Sie gerade tun und klicken Sie OK, um Imprudence zu beenden.$\nKlicken Sie CANCEL, um abzubrechen."
49 49
50; removecachefiles 50; removecachefiles
51LangString RemoveCacheFilesDP ${LANG_GERMAN} "Löschung aller Cache Dateien in Dokumente und Einstellungen." 51LangString RemoveCacheFilesDP ${LANG_GERMAN} "Löschung aller Cache Dateien in Dokumente und Einstellungen."
52 52
53; delete program files 53; delete program files
54LangString DeleteProgramFilesMB ${LANG_GERMAN} "Es existieren weiterhin Dateien in Ihrem SecondLife Programm Ordner.$\n$\nDies sind möglicherweise Dateien, die sie modifiziert oder bewegt haben:$\n$INSTDIR$\n$\nMöchten Sie diese ebenfalls löschen?" 54LangString DeleteProgramFilesMB ${LANG_GERMAN} "Es existieren weiterhin Dateien in Ihrem Imprudence Programm Ordner.$\n$\nDies sind möglicherweise Dateien, die sie modifiziert oder bewegt haben:$\n$INSTDIR$\n$\nMöchten Sie diese ebenfalls löschen?"
55 55
56; uninstall text 56; uninstall text
57LangString UninstallTextMsg ${LANG_GERMAN} "Dies wird Second Life ${VERSION_LONG} von Ihrem System entfernen." 57LangString UninstallTextMsg ${LANG_GERMAN} "Dies wird Imprudence ${VERSION_LONG} von Ihrem System entfernen."
diff --git a/linden/indra/newview/installers/windows/lang_en-us.nsi b/linden/indra/newview/installers/windows/lang_en-us.nsi
index 218f1c6..e203fb6 100644
--- a/linden/indra/newview/installers/windows/lang_en-us.nsi
+++ b/linden/indra/newview/installers/windows/lang_en-us.nsi
@@ -1,52 +1,52 @@
1; First is default 1; First is default
2LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf" 2LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf"
3 3
4; subtitle on license text caption 4; subtitle on license text caption
5LangString LicenseSubTitleUpdate ${LANG_ENGLISH} " Update" 5LangString LicenseSubTitleUpdate ${LANG_ENGLISH} " Update"
6LangString LicenseSubTitleSetup ${LANG_ENGLISH} " Setup" 6LangString LicenseSubTitleSetup ${LANG_ENGLISH} " Setup"
7 7
8; installation directory text 8; installation directory text
9LangString DirectoryChooseTitle ${LANG_ENGLISH} "Installation Directory" 9LangString DirectoryChooseTitle ${LANG_ENGLISH} "Installation Directory"
10LangString DirectoryChooseUpdate ${LANG_ENGLISH} "Select the Second Life directory to update to version ${VERSION_LONG}.(XXX):" 10LangString DirectoryChooseUpdate ${LANG_ENGLISH} "Select the Imprudence directory to update to version ${VERSION_LONG}.(XXX):"
11LangString DirectoryChooseSetup ${LANG_ENGLISH} "Select the directory to install Second Life in:" 11LangString DirectoryChooseSetup ${LANG_ENGLISH} "Select the directory to install Imprudence in:"
12 12
13; CheckStartupParams message box 13; CheckStartupParams message box
14LangString CheckStartupParamsMB ${LANG_ENGLISH} "Could not find the program '$INSTPROG'. Silent update failed." 14LangString CheckStartupParamsMB ${LANG_ENGLISH} "Could not find the program '$INSTPROG'. Silent update failed."
15 15
16; installation success dialog 16; installation success dialog
17LangString InstSuccesssQuestion ${LANG_ENGLISH} "Start Second Life now?" 17LangString InstSuccesssQuestion ${LANG_ENGLISH} "Start Imprudence now?"
18 18
19; remove old NSIS version 19; remove old NSIS version
20LangString RemoveOldNSISVersion ${LANG_ENGLISH} "Checking for old version..." 20LangString RemoveOldNSISVersion ${LANG_ENGLISH} "Checking for old version..."
21 21
22; check windows version 22; check windows version
23LangString CheckWindowsVersionDP ${LANG_ENGLISH} "Checking Windows version..." 23LangString CheckWindowsVersionDP ${LANG_ENGLISH} "Checking Windows version..."
24LangString CheckWindowsVersionMB ${LANG_ENGLISH} 'Second Life only supports Windows XP, Windows 2000, and Mac OS X.$\n$\nAttempting to install on Windows $R0 can result in crashes and data loss.$\n$\nInstall anyway?' 24LangString CheckWindowsVersionMB ${LANG_ENGLISH} 'Imprudence only supports Windows XP, Windows 2000, and Mac OS X.$\n$\nAttempting to install on Windows $R0 can result in crashes and data loss.$\n$\nInstall anyway?'
25 25
26; checkifadministrator function (install) 26; checkifadministrator function (install)
27LangString CheckAdministratorInstDP ${LANG_ENGLISH} "Checking for permission to install..." 27LangString CheckAdministratorInstDP ${LANG_ENGLISH} "Checking for permission to install..."
28LangString CheckAdministratorInstMB ${LANG_ENGLISH} 'You appear to be using a "limited" account.$\nYou must be an "administrator" to install Second Life.' 28LangString CheckAdministratorInstMB ${LANG_ENGLISH} 'You appear to be using a "limited" account.$\nYou must be an "administrator" to install Imprudence.'
29 29
30; checkifadministrator function (uninstall) 30; checkifadministrator function (uninstall)
31LangString CheckAdministratorUnInstDP ${LANG_ENGLISH} "Checking for permission to uninstall..." 31LangString CheckAdministratorUnInstDP ${LANG_ENGLISH} "Checking for permission to uninstall..."
32LangString CheckAdministratorUnInstMB ${LANG_ENGLISH} 'You appear to be using a "limited" account.$\nYou must be an "administrator" to uninstall Second Life.' 32LangString CheckAdministratorUnInstMB ${LANG_ENGLISH} 'You appear to be using a "limited" account.$\nYou must be an "administrator" to uninstall Imprudence.'
33 33
34; checkifalreadycurrent 34; checkifalreadycurrent
35LangString CheckIfCurrentMB ${LANG_ENGLISH} "It appears that Second Life ${VERSION_LONG} is already installed.$\n$\nWould you like to install it again?" 35LangString CheckIfCurrentMB ${LANG_ENGLISH} "It appears that Imprudence ${VERSION_LONG} is already installed.$\n$\nWould you like to install it again?"
36 36
37; closesecondlife function (install) 37; closeimprudence function (install)
38LangString CloseSecondLifeInstDP ${LANG_ENGLISH} "Waiting for Second Life to shut down..." 38LangString CloseSecondLifeInstDP ${LANG_ENGLISH} "Waiting for Imprudence to shut down..."
39LangString CloseSecondLifeInstMB ${LANG_ENGLISH} "Second Life can't be installed while it is already running.$\n$\nFinish what you're doing then select OK to close Second Life and continue.$\nSelect CANCEL to cancel installation." 39LangString CloseSecondLifeInstMB ${LANG_ENGLISH} "Imprudence can't be installed while it is already running.$\n$\nFinish what you're doing then select OK to close Imprudence and continue.$\nSelect CANCEL to cancel installation."
40 40
41; closesecondlife function (uninstall) 41; closeimprudence function (uninstall)
42LangString CloseSecondLifeUnInstDP ${LANG_ENGLISH} "Waiting for Second Life to shut down..." 42LangString CloseSecondLifeUnInstDP ${LANG_ENGLISH} "Waiting for Imprudence to shut down..."
43LangString CloseSecondLifeUnInstMB ${LANG_ENGLISH} "Second Life can't be uninstalled while it is already running.$\n$\nFinish what you're doing then select OK to close Second Life and continue.$\nSelect CANCEL to cancel." 43LangString CloseSecondLifeUnInstMB ${LANG_ENGLISH} "Imprudence can't be uninstalled while it is already running.$\n$\nFinish what you're doing then select OK to close Imprudence and continue.$\nSelect CANCEL to cancel."
44 44
45; removecachefiles 45; removecachefiles
46LangString RemoveCacheFilesDP ${LANG_ENGLISH} "Deleting cache files in Documents and Settings folder" 46LangString RemoveCacheFilesDP ${LANG_ENGLISH} "Deleting cache files in Documents and Settings folder"
47 47
48; delete program files 48; delete program files
49LangString DeleteProgramFilesMB ${LANG_ENGLISH} "There are still files in your SecondLife program directory.$\n$\nThese are possibly files you created or moved to:$\n$INSTDIR$\n$\nDo you want to remove them?" 49LangString DeleteProgramFilesMB ${LANG_ENGLISH} "There are still files in your Imprudence program directory.$\n$\nThese are possibly files you created or moved to:$\n$INSTDIR$\n$\nDo you want to remove them?"
50 50
51; uninstall text 51; uninstall text
52LangString UninstallTextMsg ${LANG_ENGLISH} "This will uninstall Second Life ${VERSION_LONG} from your system." 52LangString UninstallTextMsg ${LANG_ENGLISH} "This will uninstall Imprudence ${VERSION_LONG} from your system."
diff --git a/linden/indra/newview/installers/windows/lang_ja.nsi b/linden/indra/newview/installers/windows/lang_ja.nsi
index 5e0496e..f59957a 100644
--- a/linden/indra/newview/installers/windows/lang_ja.nsi
+++ b/linden/indra/newview/installers/windows/lang_ja.nsi
@@ -1,57 +1,57 @@
1; First is default 1; First is default
2LoadLanguageFile "${NSISDIR}\Contrib\Language files\Japanese.nlf" 2LoadLanguageFile "${NSISDIR}\Contrib\Language files\Japanese.nlf"
3 3
4; subtitle on license text caption 4; subtitle on license text caption
5LangString LicenseSubTitleUpdate ${LANG_JAPANESE} " ƒAƒbƒvƒf[ƒg" 5LangString LicenseSubTitleUpdate ${LANG_JAPANESE} " ƒAƒbƒvƒf[ƒg"
6LangString LicenseSubTitleSetup ${LANG_JAPANESE} " ƒZƒbƒgƒAƒbƒv" 6LangString LicenseSubTitleSetup ${LANG_JAPANESE} " ƒZƒbƒgƒAƒbƒv"
7 7
8; description on license page 8; description on license page
9LangString LicenseDescUpdate ${LANG_JAPANESE} "‚±‚̃pƒbƒP[ƒW‚̓ZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒo[ƒWƒ‡ƒ“${VERSION_LONG}.‚ɃAƒbƒvƒf[ƒg‚µ‚Ü‚·B" 9LangString LicenseDescUpdate ${LANG_JAPANESE} "‚±‚̃pƒbƒP[ƒW‚̓ZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒo[ƒWƒ‡ƒ“${VERSION_LONG}.‚ɃAƒbƒvƒf[ƒg‚µ‚Ü‚·B"
10LangString LicenseDescSetup ${LANG_JAPANESE} "‚±‚̃pƒbƒP[ƒW‚Í‚ ‚È‚½‚̃Rƒ“ƒsƒ…[ƒ^‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚·B" 10LangString LicenseDescSetup ${LANG_JAPANESE} "‚±‚̃pƒbƒP[ƒW‚Í‚ ‚È‚½‚̃Rƒ“ƒsƒ…[ƒ^‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚·B"
11LangString LicenseDescNext ${LANG_JAPANESE} "ŽŸ" 11LangString LicenseDescNext ${LANG_JAPANESE} "ŽŸ"
12 12
13; installation directory text 13; installation directory text
14LangString DirectoryChooseTitle ${LANG_JAPANESE} "ƒCƒ“ƒXƒg[ƒ‹EƒfƒBƒŒƒNƒgƒŠ" 14LangString DirectoryChooseTitle ${LANG_JAPANESE} "ƒCƒ“ƒXƒg[ƒ‹EƒfƒBƒŒƒNƒgƒŠ"
15LangString DirectoryChooseUpdate ${LANG_JAPANESE} "ƒAƒbƒvƒf[ƒg‚·‚éƒZƒJƒ“ƒhƒ‰ƒCƒt‚̃fƒBƒŒƒNƒgƒŠ‚ð‘I‘ð‚µ‚Ä‚­‚¾‚³‚¢B:" 15LangString DirectoryChooseUpdate ${LANG_JAPANESE} "ƒAƒbƒvƒf[ƒg‚·‚éƒZƒJƒ“ƒhƒ‰ƒCƒt‚̃fƒBƒŒƒNƒgƒŠ‚ð‘I‘ð‚µ‚Ä‚­‚¾‚³‚¢B:"
16LangString DirectoryChooseSetup ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚éƒfƒBƒŒƒNƒgƒŠ‚ð‘I‘ð‚µ‚Ä‚­‚¾‚³‚¢B: " 16LangString DirectoryChooseSetup ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚éƒfƒBƒŒƒNƒgƒŠ‚ð‘I‘ð‚µ‚Ä‚­‚¾‚³‚¢B: "
17 17
18; CheckStartupParams message box 18; CheckStartupParams message box
19LangString CheckStartupParamsMB ${LANG_JAPANESE} "ƒvƒƒOƒ‰ƒ€–¼'$INSTPROG'‚ªŒ©‚‚©‚è‚Ü‚¹‚ñBƒTƒCƒŒƒ“ƒgEƒAƒbƒvƒf[ƒg‚ÉŽ¸”s‚µ‚Ü‚µ‚½B" 19LangString CheckStartupParamsMB ${LANG_JAPANESE} "ƒvƒƒOƒ‰ƒ€–¼'$INSTPROG'‚ªŒ©‚‚©‚è‚Ü‚¹‚ñBƒTƒCƒŒƒ“ƒgEƒAƒbƒvƒf[ƒg‚ÉŽ¸”s‚µ‚Ü‚µ‚½B"
20 20
21; installation success dialog 21; installation success dialog
22LangString InstSuccesssQuestion ${LANG_JAPANESE} "’¼‚¿‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðŠJŽn‚µ‚Ü‚·‚©H " 22LangString InstSuccesssQuestion ${LANG_JAPANESE} "’¼‚¿‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðŠJŽn‚µ‚Ü‚·‚©H "
23 23
24; remove old NSIS version 24; remove old NSIS version
25LangString RemoveOldNSISVersion ${LANG_JAPANESE} "ŒÃ‚¢ƒo[ƒWƒ‡ƒ“î•ñ‚ðƒ`ƒFƒbƒN’†‚Å‚·c" 25LangString RemoveOldNSISVersion ${LANG_JAPANESE} "ŒÃ‚¢ƒo[ƒWƒ‡ƒ“î•ñ‚ðƒ`ƒFƒbƒN’†‚Å‚·c"
26 26
27; check windows version 27; check windows version
28LangString CheckWindowsVersionDP ${LANG_JAPANESE} "ƒEƒBƒ“ƒhƒEƒY‚̃o[ƒWƒ‡ƒ“î•ñ‚ðƒ`ƒFƒbƒN’†‚Å‚·..." 28LangString CheckWindowsVersionDP ${LANG_JAPANESE} "ƒEƒBƒ“ƒhƒEƒY‚̃o[ƒWƒ‡ƒ“î•ñ‚ðƒ`ƒFƒbƒN’†‚Å‚·..."
29LangString CheckWindowsVersionMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ÍWindows XPAWindows 2000AMac OS X‚Ì‚Ý‚ðƒTƒ|[ƒg‚µ‚Ä‚¢‚Ü‚·BWindows $R0‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚鎖‚ÍAƒf[ƒ^‚ÌÁŽ¸‚âƒNƒ‰ƒbƒVƒ…‚ÌŒ´ˆö‚É‚È‚é‰Â”\«‚ª‚ ‚è‚Ü‚·BƒCƒ“ƒXƒg[ƒ‹‚𑱂¯‚Ü‚·‚©H" 29LangString CheckWindowsVersionMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ÍWindows XPAWindows 2000AMac OS X‚Ì‚Ý‚ðƒTƒ|[ƒg‚µ‚Ä‚¢‚Ü‚·BWindows $R0‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚鎖‚ÍAƒf[ƒ^‚ÌÁŽ¸‚âƒNƒ‰ƒbƒVƒ…‚ÌŒ´ˆö‚É‚È‚é‰Â”\«‚ª‚ ‚è‚Ü‚·BƒCƒ“ƒXƒg[ƒ‹‚𑱂¯‚Ü‚·‚©H"
30 30
31; checkifadministrator function (install) 31; checkifadministrator function (install)
32LangString CheckAdministratorInstDP ${LANG_JAPANESE} "ƒCƒ“ƒXƒg[ƒ‹‚Ì‚½‚ß‚ÌŒ ŒÀ‚ðƒ`ƒFƒbƒN’†‚Å‚·..." 32LangString CheckAdministratorInstDP ${LANG_JAPANESE} "ƒCƒ“ƒXƒg[ƒ‹‚Ì‚½‚ß‚ÌŒ ŒÀ‚ðƒ`ƒFƒbƒN’†‚Å‚·..."
33LangString CheckAdministratorInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚É‚ÍŠÇ—ŽÒŒ ŒÀ‚ª•K—v‚Å‚·B" 33LangString CheckAdministratorInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚É‚ÍŠÇ—ŽÒŒ ŒÀ‚ª•K—v‚Å‚·B"
34 34
35; checkifadministrator function (uninstall) 35; checkifadministrator function (uninstall)
36LangString CheckAdministratorUnInstDP ${LANG_JAPANESE} "ƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚Ì‚½‚ß‚ÌŒ ŒÀ‚ðƒ`ƒFƒbƒN’†‚Å‚·..." 36LangString CheckAdministratorUnInstDP ${LANG_JAPANESE} "ƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚Ì‚½‚ß‚ÌŒ ŒÀ‚ðƒ`ƒFƒbƒN’†‚Å‚·..."
37LangString CheckAdministratorUnInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚·‚é‚É‚ÍŠÇ—ŽÒŒ ŒÀ‚ª•K—v‚Å‚·B" 37LangString CheckAdministratorUnInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚·‚é‚É‚ÍŠÇ—ŽÒŒ ŒÀ‚ª•K—v‚Å‚·B"
38 38
39; checkifalreadycurrent 39; checkifalreadycurrent
40LangString CheckIfCurrentMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt${VERSION_LONG} ‚̓Cƒ“ƒXƒg[ƒ‹Ï‚Ý‚Å‚·BÄ“xƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚·‚©H " 40LangString CheckIfCurrentMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt${VERSION_LONG} ‚̓Cƒ“ƒXƒg[ƒ‹Ï‚Ý‚Å‚·BÄ“xƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚·‚©H "
41 41
42; closesecondlife function (install) 42; closeimprudence function (install)
43LangString CloseSecondLifeInstDP ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹’†‚Å‚·..." 43LangString CloseSecondLifeInstDP ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹’†‚Å‚·..."
44LangString CloseSecondLifeInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚Ì‹N“®’†‚ɃCƒ“ƒXƒg[ƒ‹‚Ío—ˆ‚Ü‚¹‚ñB’¼‚¿‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹‚µ‚ăCƒ“ƒXƒg[ƒ‹‚ðŠJŽn‚·‚éꇂÍOKƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚Ä‚­‚¾‚³‚¢BCANCEL‚ð‰Ÿ‚·‚Æ’†Ž~‚µ‚Ü‚·B" 44LangString CloseSecondLifeInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚Ì‹N“®’†‚ɃCƒ“ƒXƒg[ƒ‹‚Ío—ˆ‚Ü‚¹‚ñB’¼‚¿‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹‚µ‚ăCƒ“ƒXƒg[ƒ‹‚ðŠJŽn‚·‚éꇂÍOKƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚Ä‚­‚¾‚³‚¢BCANCEL‚ð‰Ÿ‚·‚Æ’†Ž~‚µ‚Ü‚·B"
45 45
46; closesecondlife function (uninstall) 46; closeimprudence function (uninstall)
47LangString CloseSecondLifeUnInstDP ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹’†‚Å‚·..." 47LangString CloseSecondLifeUnInstDP ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹’†‚Å‚·..."
48LangString CloseSecondLifeUnInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚Ì‹N“®’†‚ɃAƒ“ƒCƒ“ƒXƒg[ƒ‹‚Ío—ˆ‚Ü‚¹‚ñB’¼‚¿‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹‚µ‚ăAƒ“ƒCƒ“ƒXƒg[ƒ‹‚ðŠJŽn‚·‚éꇂÍOKƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚Ä‚­‚¾‚³‚¢BCANCEL‚ð‰Ÿ‚·‚Æ’†Ž~‚µ‚Ü‚·B" 48LangString CloseSecondLifeUnInstMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚Ì‹N“®’†‚ɃAƒ“ƒCƒ“ƒXƒg[ƒ‹‚Ío—ˆ‚Ü‚¹‚ñB’¼‚¿‚ɃZƒJƒ“ƒhƒ‰ƒCƒt‚ðI—¹‚µ‚ăAƒ“ƒCƒ“ƒXƒg[ƒ‹‚ðŠJŽn‚·‚éꇂÍOKƒ{ƒ^ƒ“‚ð‰Ÿ‚µ‚Ä‚­‚¾‚³‚¢BCANCEL‚ð‰Ÿ‚·‚Æ’†Ž~‚µ‚Ü‚·B"
49 49
50; removecachefiles 50; removecachefiles
51LangString RemoveCacheFilesDP ${LANG_JAPANESE} " Documents and Settings ƒtƒHƒ‹ƒ_‚̃LƒƒƒbƒVƒ…ƒtƒ@ƒCƒ‹‚ðƒfƒŠ[ƒg’†‚Å‚·B" 51LangString RemoveCacheFilesDP ${LANG_JAPANESE} " Documents and Settings ƒtƒHƒ‹ƒ_‚̃LƒƒƒbƒVƒ…ƒtƒ@ƒCƒ‹‚ðƒfƒŠ[ƒg’†‚Å‚·B"
52 52
53; delete program files 53; delete program files
54LangString DeleteProgramFilesMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚̃fƒBƒŒƒNƒgƒŠ‚É‚ÍA‚Ü‚¾ƒtƒ@ƒCƒ‹‚ªŽc‚³‚ê‚Ä‚¢‚Ü‚·B$\n$INSTDIR$\n‚É‚ ‚È‚½‚ªì¬A‚Ü‚½‚͈ړ®‚³‚¹‚½ƒtƒ@ƒCƒ‹‚ª‚ ‚é‰Â”\«‚ª‚ ‚è‚Ü‚·B‘S‚Ä휂µ‚Ü‚·‚©H " 54LangString DeleteProgramFilesMB ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt‚̃fƒBƒŒƒNƒgƒŠ‚É‚ÍA‚Ü‚¾ƒtƒ@ƒCƒ‹‚ªŽc‚³‚ê‚Ä‚¢‚Ü‚·B$\n$INSTDIR$\n‚É‚ ‚È‚½‚ªì¬A‚Ü‚½‚͈ړ®‚³‚¹‚½ƒtƒ@ƒCƒ‹‚ª‚ ‚é‰Â”\«‚ª‚ ‚è‚Ü‚·B‘S‚Ä휂µ‚Ü‚·‚©H "
55 55
56; uninstall text 56; uninstall text
57LangString UninstallTextMsg ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt${VERSION_LONG}‚ðƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚·B" 57LangString UninstallTextMsg ${LANG_JAPANESE} "ƒZƒJƒ“ƒhƒ‰ƒCƒt${VERSION_LONG}‚ðƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚µ‚Ü‚·B"
diff --git a/linden/indra/newview/installers/windows/lang_ko.nsi b/linden/indra/newview/installers/windows/lang_ko.nsi
index b570315..2530e4b 100644
--- a/linden/indra/newview/installers/windows/lang_ko.nsi
+++ b/linden/indra/newview/installers/windows/lang_ko.nsi
@@ -1,57 +1,57 @@
1; First is default 1; First is default
2LoadLanguageFile "${NSISDIR}\Contrib\Language files\Korean.nlf" 2LoadLanguageFile "${NSISDIR}\Contrib\Language files\Korean.nlf"
3 3
4; subtitle on license text caption 4; subtitle on license text caption
5LangString LicenseSubTitleUpdate ${LANG_KOREAN} "¾÷µ¥ÀÌÆ®" 5LangString LicenseSubTitleUpdate ${LANG_KOREAN} "¾÷µ¥ÀÌÆ®"
6LangString LicenseSubTitleSetup ${LANG_KOREAN} " ¼³Ä¡Çϱâ" 6LangString LicenseSubTitleSetup ${LANG_KOREAN} " ¼³Ä¡Çϱâ"
7 7
8; description on license page 8; description on license page
9LangString LicenseDescUpdate ${LANG_KOREAN} "ÀÌ ÆÑÅ°Áö´Â ¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¹öÀü${VERSION_LONG}.À¸·Î ¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù. " 9LangString LicenseDescUpdate ${LANG_KOREAN} "ÀÌ ÆÑÅ°Áö´Â ¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¹öÀü${VERSION_LONG}.À¸·Î ¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù. "
10LangString LicenseDescSetup ${LANG_KOREAN} "ÀÌ ÆÑÅ°Áö´Â ¼¼ÄÁµå¶óÀÌÇÁ¸¦ ÄÄÇ»ÅÍ¿¡ ¼³Ä¡ÇÕ´Ï´Ù." 10LangString LicenseDescSetup ${LANG_KOREAN} "ÀÌ ÆÑÅ°Áö´Â ¼¼ÄÁµå¶óÀÌÇÁ¸¦ ÄÄÇ»ÅÍ¿¡ ¼³Ä¡ÇÕ´Ï´Ù."
11LangString LicenseDescNext ${LANG_KOREAN} "´ÙÀ½" 11LangString LicenseDescNext ${LANG_KOREAN} "´ÙÀ½"
12 12
13; installation directory text 13; installation directory text
14LangString DirectoryChooseTitle ${LANG_KOREAN} "¼³Ä¡ µð·ºÅ丮" 14LangString DirectoryChooseTitle ${LANG_KOREAN} "¼³Ä¡ µð·ºÅ丮"
15LangString DirectoryChooseUpdate ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¾÷µ¥ÀÌÆ®ÇÒ µð·ºÅ丮¸¦ ¼±ÅÃÇϼ¼¿ä. " 15LangString DirectoryChooseUpdate ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¾÷µ¥ÀÌÆ®ÇÒ µð·ºÅ丮¸¦ ¼±ÅÃÇϼ¼¿ä. "
16LangString DirectoryChooseSetup ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¼³Ä¡ÇÒ µð·ºÅ丮¸¦ ¼±ÅÃÇϼ¼¿ä:" 16LangString DirectoryChooseSetup ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¼³Ä¡ÇÒ µð·ºÅ丮¸¦ ¼±ÅÃÇϼ¼¿ä:"
17 17
18; CheckStartupParams message box 18; CheckStartupParams message box
19LangString CheckStartupParamsMB ${LANG_KOREAN} " ¡®$INSTPROG¡¯ ÇÁ·Î±×·¥À» ãÁö ¸øÇß½À´Ï´Ù. ÀÚµ¿ ¾÷µ¥ÀÌÆ®¿¡ ½ÇÆÐÇß½À´Ï´Ù." 19LangString CheckStartupParamsMB ${LANG_KOREAN} " ¡®$INSTPROG¡¯ ÇÁ·Î±×·¥À» ãÁö ¸øÇß½À´Ï´Ù. ÀÚµ¿ ¾÷µ¥ÀÌÆ®¿¡ ½ÇÆÐÇß½À´Ï´Ù."
20 20
21; installation success dialog 21; installation success dialog
22LangString InstSuccesssQuestion ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ ½ÃÀÛÇÏ°Ú½À´Ï±î?" 22LangString InstSuccesssQuestion ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ ½ÃÀÛÇÏ°Ú½À´Ï±î?"
23 23
24; remove old NSIS version 24; remove old NSIS version
25LangString RemoveOldNSISVersion ${LANG_KOREAN} "ÀÌÀü ¹öÀüÀ» ã°í ÀÖ½À´Ï´Ù¡¦ " 25LangString RemoveOldNSISVersion ${LANG_KOREAN} "ÀÌÀü ¹öÀüÀ» ã°í ÀÖ½À´Ï´Ù¡¦ "
26 26
27; check windows version 27; check windows version
28LangString CheckWindowsVersionDP ${LANG_KOREAN} "À©µµ¿ì ¹öÀüÀ» È®ÀÎÇÏ°í ÀÖ½À´Ï´Ù." 28LangString CheckWindowsVersionDP ${LANG_KOREAN} "À©µµ¿ì ¹öÀüÀ» È®ÀÎÇÏ°í ÀÖ½À´Ï´Ù."
29LangString CheckWindowsVersionMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ´Â À©µµ¿ì XP, À©µµ¿ì 2000, ±×¸®°í ¸Æ OS X¸¦ Áö¿øÇÕ´Ï´Ù. À©µµ¿ì $R0¿¡ ¼³Ä¡¸¦ ½ÃµµÇÏ¸é ¿ÀÀÛµ¿°ú µ¥ÀÌÅÍ ºÐ½ÇÀÌ ÀϾ ¼ö ÀÖ½À´Ï´Ù. °è¼Ó ¼³Ä¡ÇÏ°Ú½À´Ï±î? " 29LangString CheckWindowsVersionMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ´Â À©µµ¿ì XP, À©µµ¿ì 2000, ±×¸®°í ¸Æ OS X¸¦ Áö¿øÇÕ´Ï´Ù. À©µµ¿ì $R0¿¡ ¼³Ä¡¸¦ ½ÃµµÇÏ¸é ¿ÀÀÛµ¿°ú µ¥ÀÌÅÍ ºÐ½ÇÀÌ ÀϾ ¼ö ÀÖ½À´Ï´Ù. °è¼Ó ¼³Ä¡ÇÏ°Ú½À´Ï±î? "
30 30
31; checkifadministrator function (install) 31; checkifadministrator function (install)
32LangString CheckAdministratorInstDP ${LANG_KOREAN} "¼³Ä¡ ±ÇÇÑÀ» È®ÀÎ ÁßÀÔ´Ï´Ù... " 32LangString CheckAdministratorInstDP ${LANG_KOREAN} "¼³Ä¡ ±ÇÇÑÀ» È®ÀÎ ÁßÀÔ´Ï´Ù... "
33LangString CheckAdministratorInstMB ${LANG_KOREAN} "ÇöÀç ¡®¼Õ´Ô¡¯°èÁ¤À» »ç¿ë ÁßÀÔ´Ï´Ù. ¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¼³Ä¡Çϱâ À§Çؼ± ¡®¿î¿µÀÚ¡± °èÁ¤À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù." 33LangString CheckAdministratorInstMB ${LANG_KOREAN} "ÇöÀç ¡®¼Õ´Ô¡¯°èÁ¤À» »ç¿ë ÁßÀÔ´Ï´Ù. ¼¼ÄÁµå¶óÀÌÇÁ¸¦ ¼³Ä¡Çϱâ À§Çؼ± ¡®¿î¿µÀÚ¡± °èÁ¤À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù."
34 34
35; checkifadministrator function (uninstall) 35; checkifadministrator function (uninstall)
36LangString CheckAdministratorUnInstDP ${LANG_KOREAN} "Á¦°Å ±ÇÇÑÀ» È®ÀÎ ÁßÀÔ´Ï´Ù. " 36LangString CheckAdministratorUnInstDP ${LANG_KOREAN} "Á¦°Å ±ÇÇÑÀ» È®ÀÎ ÁßÀÔ´Ï´Ù. "
37LangString CheckAdministratorUnInstMB ${LANG_KOREAN} " ÇöÀç ¡®¼Õ´Ô¡¯°èÁ¤À» »ç¿ë ÁßÀÔ´Ï´Ù. ¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¦°ÅÇϱâ À§Çؼ± ¡®¿î¿µÀÚ¡± °èÁ¤À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. " 37LangString CheckAdministratorUnInstMB ${LANG_KOREAN} " ÇöÀç ¡®¼Õ´Ô¡¯°èÁ¤À» »ç¿ë ÁßÀÔ´Ï´Ù. ¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¦°ÅÇϱâ À§Çؼ± ¡®¿î¿µÀÚ¡± °èÁ¤À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. "
38 38
39; checkifalreadycurrent 39; checkifalreadycurrent
40LangString CheckIfCurrentMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ ¹öÀü ${VERSION_LONG}ÀÌ ÀÌ¹Ì ¼³Ä¡µÇ¾î ÀÖ½À´Ï´Ù. ´Ù½Ã ¼³Ä¡ÇϽðڽÀ´Ï±î? " 40LangString CheckIfCurrentMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ ¹öÀü ${VERSION_LONG}ÀÌ ÀÌ¹Ì ¼³Ä¡µÇ¾î ÀÖ½À´Ï´Ù. ´Ù½Ã ¼³Ä¡ÇϽðڽÀ´Ï±î? "
41 41
42; closesecondlife function (install) 42; closeimprudence function (install)
43LangString CloseSecondLifeInstDP ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÒ ¶§ ±îÁö ´ë±â Áß¡¦ " 43LangString CloseSecondLifeInstDP ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÒ ¶§ ±îÁö ´ë±â Áß¡¦ "
44LangString CloseSecondLifeInstMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ°¡ ÀÌ¹Ì ÀÛµ¿ ÁßÀÏ °æ¿ì ¼³Ä¡¸¦ °è¼Ó ÇÒ ¼ö ¾ø½À´Ï´Ù. ÇöÀç ÀÛ¾÷À» ¸ØÃß°í ¡®È®ÀΡ¯À» ´­·¯ ¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÑ ´ÙÀ½ ÁøÇàÇϱ⠹ٶø´Ï´Ù. ¼³Ä¡¸¦ Ãë¼ÒÇÏ·Á¸é ¡®Ãë¼Ò¡¯¸¦ ´©¸£¼¼¿ä." 44LangString CloseSecondLifeInstMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ°¡ ÀÌ¹Ì ÀÛµ¿ ÁßÀÏ °æ¿ì ¼³Ä¡¸¦ °è¼Ó ÇÒ ¼ö ¾ø½À´Ï´Ù. ÇöÀç ÀÛ¾÷À» ¸ØÃß°í ¡®È®ÀΡ¯À» ´­·¯ ¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÑ ´ÙÀ½ ÁøÇàÇϱ⠹ٶø´Ï´Ù. ¼³Ä¡¸¦ Ãë¼ÒÇÏ·Á¸é ¡®Ãë¼Ò¡¯¸¦ ´©¸£¼¼¿ä."
45 45
46; closesecondlife function (uninstall) 46; closeimprudence function (uninstall)
47LangString CloseSecondLifeUnInstDP ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÒ ¶§ ±îÁö ´ë±â Áß¡¦¡±" 47LangString CloseSecondLifeUnInstDP ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÒ ¶§ ±îÁö ´ë±â Áß¡¦¡±"
48LangString CloseSecondLifeUnInstMB ${LANG_KOREAN} " ¼¼ÄÁµå¶óÀÌÇÁ°¡ ÀÌ¹Ì ÀÛµ¿ ÁßÀÏ °æ¿ì Á¦°Å¸¦ °è¼Ó ÇÒ ¼ö ¾ø½À´Ï´Ù. ÇöÀç ÀÛ¾÷À» ¸ØÃß°í ¡®È®ÀΡ¯À» ´­·¯ ¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÑ ´ÙÀ½ ÁøÇàÇϱ⠹ٶø´Ï´Ù. ¼³Ä¡¸¦ ÃëÇÏ·Á¸é ¡®Ãë¼Ò¡¯¸¦ ´©¸£¼¼¿ä. " 48LangString CloseSecondLifeUnInstMB ${LANG_KOREAN} " ¼¼ÄÁµå¶óÀÌÇÁ°¡ ÀÌ¹Ì ÀÛµ¿ ÁßÀÏ °æ¿ì Á¦°Å¸¦ °è¼Ó ÇÒ ¼ö ¾ø½À´Ï´Ù. ÇöÀç ÀÛ¾÷À» ¸ØÃß°í ¡®È®ÀΡ¯À» ´­·¯ ¼¼ÄÁµå¶óÀÌÇÁ¸¦ Á¾·áÇÑ ´ÙÀ½ ÁøÇàÇϱ⠹ٶø´Ï´Ù. ¼³Ä¡¸¦ ÃëÇÏ·Á¸é ¡®Ãë¼Ò¡¯¸¦ ´©¸£¼¼¿ä. "
49 49
50; removecachefiles 50; removecachefiles
51LangString RemoveCacheFilesDP ${LANG_KOREAN} " Documents and Settings Æú´õ ³»ÀÇ Ä³½Ã ÆÄÀϵéÀ» Áö¿ó´Ï´Ù." 51LangString RemoveCacheFilesDP ${LANG_KOREAN} " Documents and Settings Æú´õ ³»ÀÇ Ä³½Ã ÆÄÀϵéÀ» Áö¿ó´Ï´Ù."
52 52
53; delete program files 53; delete program files
54LangString DeleteProgramFilesMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ ÇÁ·Î±×·¥ µð·ºÅ丮¿¡ ¾ÆÁ÷ ÆÄÀϵéÀÌ ³²¾Æ ÀÖ½À´Ï´Ù. ÀÌ ÆÄÀϵéÀº »ç¿ëÀÚ°¡ ¸¸µç °ÍµéÀ̰ųª$\n$INSTDIR$\n$\n·Î À̵¿ÇÑ ÆÄÀϵéÀÏ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÆÄÀϵéÀ» Á¦°ÅÇÏ°Ú½À´Ï±î?" 54LangString DeleteProgramFilesMB ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ ÇÁ·Î±×·¥ µð·ºÅ丮¿¡ ¾ÆÁ÷ ÆÄÀϵéÀÌ ³²¾Æ ÀÖ½À´Ï´Ù. ÀÌ ÆÄÀϵéÀº »ç¿ëÀÚ°¡ ¸¸µç °ÍµéÀ̰ųª$\n$INSTDIR$\n$\n·Î À̵¿ÇÑ ÆÄÀϵéÀÏ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÆÄÀϵéÀ» Á¦°ÅÇÏ°Ú½À´Ï±î?"
55 55
56; uninstall text 56; uninstall text
57LangString UninstallTextMsg ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ${VERSION_LONG}À» ½Ã½ºÅÛ¿¡¼­ Á¦°ÅÇÕ´Ï´Ù." 57LangString UninstallTextMsg ${LANG_KOREAN} "¼¼ÄÁµå¶óÀÌÇÁ${VERSION_LONG}À» ½Ã½ºÅÛ¿¡¼­ Á¦°ÅÇÕ´Ï´Ù."
diff --git a/linden/indra/newview/linux_tools/handle_secondlifeprotocol.sh b/linden/indra/newview/linux_tools/handle_secondlifeprotocol.sh
index 7ff86d1..3613070 100755
--- a/linden/indra/newview/linux_tools/handle_secondlifeprotocol.sh
+++ b/linden/indra/newview/linux_tools/handle_secondlifeprotocol.sh
@@ -13,5 +13,5 @@ fi
13RUN_PATH=`dirname "$0" || echo .` 13RUN_PATH=`dirname "$0" || echo .`
14cd "${RUN_PATH}" 14cd "${RUN_PATH}"
15 15
16exec ./secondlife -url \'"${URL}"\' 16exec ./imprudence -url \'"${URL}"\'
17 17
diff --git a/linden/indra/newview/linux_tools/wrapper.sh b/linden/indra/newview/linux_tools/wrapper.sh
index 9d2e06b..e1c68b9 100755
--- a/linden/indra/newview/linux_tools/wrapper.sh
+++ b/linden/indra/newview/linux_tools/wrapper.sh
@@ -103,7 +103,7 @@ if [ -n "$LL_TCMALLOC" ]; then
103fi 103fi
104 104
105export SL_ENV='LD_LIBRARY_PATH="`pwd`"/lib:"`pwd`"/app_settings/mozilla-runtime-linux-i686:"${LD_LIBRARY_PATH}"' 105export SL_ENV='LD_LIBRARY_PATH="`pwd`"/lib:"`pwd`"/app_settings/mozilla-runtime-linux-i686:"${LD_LIBRARY_PATH}"'
106export SL_CMD='$LL_WRAPPER bin/do-not-directly-run-secondlife-bin' 106export SL_CMD='$LL_WRAPPER bin/do-not-directly-run-imprudence-bin'
107export SL_OPT="`cat gridargs.dat` $@" 107export SL_OPT="`cat gridargs.dat` $@"
108 108
109# Run the program 109# Run the program
@@ -118,9 +118,9 @@ if [ -n "$LL_RUN_ERR" ]; then
118 if [ "`uname -m`" = "x86_64" ]; then 118 if [ "`uname -m`" = "x86_64" ]; then
119 echo 119 echo
120 cat << EOFMARKER 120 cat << EOFMARKER
121You are running the Second Life Viewer on a x86_64 platform. The 121You are running the Imprudence Viewer on a x86_64 platform. The
122most common problems when launching the Viewer (particularly 122most common problems when launching the Viewer (particularly
123'bin/do-not-directly-run-secondlife-bin: not found' and 'error while 123'bin/do-not-directly-run-imprudence-bin: not found' and 'error while
124loading shared libraries') may be solved by installing your Linux 124loading shared libraries') may be solved by installing your Linux
125distribution's 32-bit compatibility packages. 125distribution's 32-bit compatibility packages.
126For example, on Ubuntu and other Debian-based Linuxes you might run: 126For example, on Ubuntu and other Debian-based Linuxes you might run:
@@ -129,11 +129,3 @@ EOFMARKER
129 fi 129 fi
130 fi 130 fi
131fi 131fi
132
133
134echo
135echo '*******************************************************'
136echo 'This is a BETA release of the Second Life linux client.'
137echo 'Thank you for testing!'
138echo 'Please see README-linux.txt before reporting problems.'
139echo
diff --git a/linden/indra/newview/llappviewer.cpp b/linden/indra/newview/llappviewer.cpp
index f1b2e32..7262759 100644
--- a/linden/indra/newview/llappviewer.cpp
+++ b/linden/indra/newview/llappviewer.cpp
@@ -293,10 +293,10 @@ BOOL gLogoutInProgress = FALSE;
293// Internal globals... that should be removed. 293// Internal globals... that should be removed.
294static std::string gArgs; 294static std::string gArgs;
295 295
296const std::string MARKER_FILE_NAME("SecondLife.exec_marker"); 296const std::string MARKER_FILE_NAME("Imprudence.exec_marker");
297const std::string ERROR_MARKER_FILE_NAME("SecondLife.error_marker"); 297const std::string ERROR_MARKER_FILE_NAME("Imprudence.error_marker");
298const std::string LLERROR_MARKER_FILE_NAME("SecondLife.llerror_marker"); 298const std::string LLERROR_MARKER_FILE_NAME("Imprudence.llerror_marker");
299const std::string LOGOUT_MARKER_FILE_NAME("SecondLife.logout_marker"); 299const std::string LOGOUT_MARKER_FILE_NAME("Imprudence.logout_marker");
300static BOOL gDoDisconnect = FALSE; 300static BOOL gDoDisconnect = FALSE;
301static std::string gLaunchFileOnQuit; 301static std::string gLaunchFileOnQuit;
302 302
@@ -308,7 +308,7 @@ const char *VFS_INDEX_FILE_BASE = "index.db2.x.";
308static std::string gSecondLife; 308static std::string gSecondLife;
309static std::string gWindowTitle; 309static std::string gWindowTitle;
310#ifdef LL_WINDOWS 310#ifdef LL_WINDOWS
311 static char sWindowClass[] = "Second Life"; 311 static char sWindowClass[] = IMP_VIEWER_NAME;
312#endif 312#endif
313 313
314std::string gLoginPage; 314std::string gLoginPage;
@@ -602,8 +602,12 @@ bool LLAppViewer::init()
602 writeSystemInfo(); 602 writeSystemInfo();
603 603
604 // Build a string representing the current version number. 604 // Build a string representing the current version number.
605 gCurrentVersion = llformat("%s %d.%d.%d.%d", 605 gCurrentVersion = llformat("%s %d.%d.%d / %s %d.%d.%d.%d",
606 gSavedSettings.getString("VersionChannelName").c_str(), 606 gSavedSettings.getString("VersionChannelName").c_str(),
607 IMP_VERSION_MAJOR,
608 IMP_VERSION_MINOR,
609 IMP_VERSION_PATCH,
610 LL_VIEWER_NAME,
607 LL_VERSION_MAJOR, 611 LL_VERSION_MAJOR,
608 LL_VERSION_MINOR, 612 LL_VERSION_MINOR,
609 LL_VERSION_PATCH, 613 LL_VERSION_PATCH,
@@ -1470,15 +1474,15 @@ bool LLAppViewer::initLogging()
1470 1474
1471 // Remove the last ".old" log file. 1475 // Remove the last ".old" log file.
1472 std::string old_log_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, 1476 std::string old_log_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,
1473 "SecondLife.old"); 1477 "Imprudence.old");
1474 LLFile::remove(old_log_file); 1478 LLFile::remove(old_log_file);
1475 1479
1476 // Rename current log file to ".old" 1480 // Rename current log file to ".old"
1477 std::string log_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, 1481 std::string log_file = gDirUtilp->getExpandedFilename(LL_PATH_LOGS,
1478 "SecondLife.log"); 1482 "Imprudence.log");
1479 LLFile::rename(log_file, old_log_file); 1483 LLFile::rename(log_file, old_log_file);
1480 1484
1481 // Set the log file to SecondLife.log 1485 // Set the log file to Imprudence.log
1482 1486
1483 LLError::logToFile(log_file); 1487 LLError::logToFile(log_file);
1484 1488
@@ -1598,7 +1602,7 @@ bool LLAppViewer::initConfiguration()
1598 gSavedSettings.setString("ClientSettingsFile", 1602 gSavedSettings.setString("ClientSettingsFile",
1599 gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, getSettingsFileName("Global"))); 1603 gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, getSettingsFileName("Global")));
1600 1604
1601 gSavedSettings.setString("VersionChannelName", LL_CHANNEL); 1605 gSavedSettings.setString("VersionChannelName", IMP_VIEWER_NAME);
1602 1606
1603#ifndef LL_RELEASE_FOR_DOWNLOAD 1607#ifndef LL_RELEASE_FOR_DOWNLOAD
1604 gSavedSettings.setBOOL("ShowConsoleWindow", TRUE); 1608 gSavedSettings.setBOOL("ShowConsoleWindow", TRUE);
@@ -1683,7 +1687,7 @@ bool LLAppViewer::initConfiguration()
1683 llinfos << "Command line usage:\n" << clp << llendl; 1687 llinfos << "Command line usage:\n" << clp << llendl;
1684 1688
1685 std::ostringstream msg; 1689 std::ostringstream msg;
1686 msg << "Second Life found an error parsing the command line. \n" 1690 msg << gSecondLife << " found an error parsing the command line. \n"
1687 << "Please see: http://wiki.secondlife.com/wiki/Client_parameters \n" 1691 << "Please see: http://wiki.secondlife.com/wiki/Client_parameters \n"
1688 << "Error: " << clp.getErrorMessage(); 1692 << "Error: " << clp.getErrorMessage();
1689 1693
@@ -1865,7 +1869,7 @@ bool LLAppViewer::initConfiguration()
1865 mYieldTime = gSavedSettings.getS32("YieldTime"); 1869 mYieldTime = gSavedSettings.getS32("YieldTime");
1866 1870
1867 // XUI:translate 1871 // XUI:translate
1868 gSecondLife = "Second Life"; 1872 gSecondLife = IMP_VIEWER_NAME;
1869 1873
1870 // Read skin/branding settings if specified. 1874 // Read skin/branding settings if specified.
1871 //if (! gDirUtilp->getSkinDir().empty() ) 1875 //if (! gDirUtilp->getSkinDir().empty() )
@@ -2111,7 +2115,7 @@ bool LLAppViewer::initWindow()
2111 2115
2112 // always start windowed 2116 // always start windowed
2113 BOOL ignorePixelDepth = gSavedSettings.getBOOL("IgnorePixelDepth"); 2117 BOOL ignorePixelDepth = gSavedSettings.getBOOL("IgnorePixelDepth");
2114 gViewerWindow = new LLViewerWindow(gWindowTitle, "Second Life", 2118 gViewerWindow = new LLViewerWindow(gWindowTitle, gWindowTitle,
2115 gSavedSettings.getS32("WindowX"), gSavedSettings.getS32("WindowY"), 2119 gSavedSettings.getS32("WindowX"), gSavedSettings.getS32("WindowY"),
2116 gSavedSettings.getS32("WindowWidth"), gSavedSettings.getS32("WindowHeight"), 2120 gSavedSettings.getS32("WindowWidth"), gSavedSettings.getS32("WindowHeight"),
2117 FALSE, ignorePixelDepth); 2121 FALSE, ignorePixelDepth);
@@ -2245,6 +2249,9 @@ void LLAppViewer::writeSystemInfo()
2245 gDebugInfo["SLLog"] = LLError::logFileName(); 2249 gDebugInfo["SLLog"] = LLError::logFileName();
2246 2250
2247 gDebugInfo["ClientInfo"]["Name"] = gSavedSettings.getString("VersionChannelName"); 2251 gDebugInfo["ClientInfo"]["Name"] = gSavedSettings.getString("VersionChannelName");
2252 gDebugInfo["ClientInfo"]["ImpMajorVersion"] = IMP_VERSION_MAJOR;
2253 gDebugInfo["ClientInfo"]["ImpMinorVersion"] = IMP_VERSION_MINOR;
2254 gDebugInfo["ClientInfo"]["ImpPatchVersion"] = IMP_VERSION_PATCH;
2248 gDebugInfo["ClientInfo"]["MajorVersion"] = LL_VERSION_MAJOR; 2255 gDebugInfo["ClientInfo"]["MajorVersion"] = LL_VERSION_MAJOR;
2249 gDebugInfo["ClientInfo"]["MinorVersion"] = LL_VERSION_MINOR; 2256 gDebugInfo["ClientInfo"]["MinorVersion"] = LL_VERSION_MINOR;
2250 gDebugInfo["ClientInfo"]["PatchVersion"] = LL_VERSION_PATCH; 2257 gDebugInfo["ClientInfo"]["PatchVersion"] = LL_VERSION_PATCH;
@@ -2274,9 +2281,7 @@ void LLAppViewer::writeSystemInfo()
2274#endif 2281#endif
2275 2282
2276 // Dump some debugging info 2283 // Dump some debugging info
2277 LL_INFOS("SystemInfo") << gSecondLife 2284 LL_INFOS("SystemInfo") << gCurrentVersion << LL_ENDL;
2278 << " version " << LL_VERSION_MAJOR << "." << LL_VERSION_MINOR << "." << LL_VERSION_PATCH
2279 << LL_ENDL;
2280 2285
2281 // Dump the local time and time zone 2286 // Dump the local time and time zone
2282 time_t now; 2287 time_t now;
@@ -2327,6 +2332,9 @@ void LLAppViewer::handleViewerCrash()
2327 //to check against no matter what 2332 //to check against no matter what
2328 gDebugInfo["ClientInfo"]["Name"] = gSavedSettings.getString("VersionChannelName"); 2333 gDebugInfo["ClientInfo"]["Name"] = gSavedSettings.getString("VersionChannelName");
2329 2334
2335 gDebugInfo["ClientInfo"]["ImpMajorVersion"] = IMP_VERSION_MAJOR;
2336 gDebugInfo["ClientInfo"]["ImpMinorVersion"] = IMP_VERSION_MINOR;
2337 gDebugInfo["ClientInfo"]["ImpPatchVersion"] = IMP_VERSION_PATCH;
2330 gDebugInfo["ClientInfo"]["MajorVersion"] = LL_VERSION_MAJOR; 2338 gDebugInfo["ClientInfo"]["MajorVersion"] = LL_VERSION_MAJOR;
2331 gDebugInfo["ClientInfo"]["MinorVersion"] = LL_VERSION_MINOR; 2339 gDebugInfo["ClientInfo"]["MinorVersion"] = LL_VERSION_MINOR;
2332 gDebugInfo["ClientInfo"]["PatchVersion"] = LL_VERSION_PATCH; 2340 gDebugInfo["ClientInfo"]["PatchVersion"] = LL_VERSION_PATCH;
@@ -2973,7 +2981,7 @@ void LLAppViewer::badNetworkHandler()
2973 message << 2981 message <<
2974 "The viewer has detected mangled network data indicative\n" 2982 "The viewer has detected mangled network data indicative\n"
2975 "of a bad upstream network connection or an incomplete\n" 2983 "of a bad upstream network connection or an incomplete\n"
2976 "local installation of " << LLAppViewer::instance()->getSecondLifeTitle() << ". \n" 2984 "local installation of " << gSecondLife << ". \n"
2977 " \n" 2985 " \n"
2978 "Try uninstalling and reinstalling to see if this resolves \n" 2986 "Try uninstalling and reinstalling to see if this resolves \n"
2979 "the issue. \n" 2987 "the issue. \n"
diff --git a/linden/indra/newview/llfloaterabout.cpp b/linden/indra/newview/llfloaterabout.cpp
index 76586ed..4704c5b 100644
--- a/linden/indra/newview/llfloaterabout.cpp
+++ b/linden/indra/newview/llfloaterabout.cpp
@@ -109,11 +109,14 @@ LLFloaterAbout::LLFloaterAbout()
109 viewer_link_style->setColor(gSavedSettings.getColor4("HTMLLinkColor")); 109 viewer_link_style->setColor(gSavedSettings.getColor4("HTMLLinkColor"));
110 110
111 // Version string 111 // Version string
112 std::string version = LLAppViewer::instance()->getSecondLifeTitle() 112 std::string version = llformat(
113 + llformat(" %d.%d.%d (%d) %s %s (%s)\n", 113 "%s %d.%d.%d / %s %d.%d.%d (%d), %s %s\n",
114 LL_VERSION_MAJOR, LL_VERSION_MINOR, LL_VERSION_PATCH, LL_VIEWER_BUILD, 114 IMP_VIEWER_NAME,
115 __DATE__, __TIME__, 115 IMP_VERSION_MAJOR, IMP_VERSION_MINOR, IMP_VERSION_PATCH,
116 gSavedSettings.getString("VersionChannelName").c_str()); 116 LL_VIEWER_NAME,
117 LL_VERSION_MAJOR, LL_VERSION_MINOR, LL_VERSION_PATCH, LL_VIEWER_BUILD,
118 __DATE__, __TIME__);
119
117 support_widget->appendColoredText(version, FALSE, FALSE, gColors.getColor("TextFgReadOnlyColor")); 120 support_widget->appendColoredText(version, FALSE, FALSE, gColors.getColor("TextFgReadOnlyColor"));
118 support_widget->appendStyledText(LLTrans::getString("ReleaseNotes"), FALSE, FALSE, &viewer_link_style); 121 support_widget->appendStyledText(LLTrans::getString("ReleaseNotes"), FALSE, FALSE, &viewer_link_style);
119 122
diff --git a/linden/indra/newview/llpanellogin.cpp b/linden/indra/newview/llpanellogin.cpp
index ffee058..61bf215 100644
--- a/linden/indra/newview/llpanellogin.cpp
+++ b/linden/indra/newview/llpanellogin.cpp
@@ -419,15 +419,24 @@ LLPanelLogin::LLPanelLogin(const LLRect &rect,
419 419
420 // childSetAction("quit_btn", onClickQuit, this); 420 // childSetAction("quit_btn", onClickQuit, this);
421 421
422 std::string channel = gSavedSettings.getString("VersionChannelName"); 422 std::string imp_channel = gSavedSettings.getString("VersionChannelName");
423 std::string version = llformat("%d.%d.%d (%d)", 423 std::string imp_version = llformat("%d.%d.%d",
424 IMP_VERSION_MAJOR,
425 IMP_VERSION_MINOR,
426 IMP_VERSION_PATCH );
427
428 std::string ll_channel = LL_VIEWER_NAME;
429 std::string ll_version = llformat("%d.%d.%d (%d)",
424 LL_VERSION_MAJOR, 430 LL_VERSION_MAJOR,
425 LL_VERSION_MINOR, 431 LL_VERSION_MINOR,
426 LL_VERSION_PATCH, 432 LL_VERSION_PATCH,
427 LL_VIEWER_BUILD ); 433 LL_VIEWER_BUILD );
434
428 LLTextBox* channel_text = getChild<LLTextBox>("channel_text"); 435 LLTextBox* channel_text = getChild<LLTextBox>("channel_text");
429 channel_text->setTextArg("[CHANNEL]", channel); 436 channel_text->setTextArg("[CHANNEL]", imp_channel);
430 channel_text->setTextArg("[VERSION]", version); 437 channel_text->setTextArg("[VERSION]", imp_version);
438 channel_text->setTextArg("[ALT_CHANNEL]", ll_channel);
439 channel_text->setTextArg("[ALT_VERSION]", ll_version);
431 channel_text->setClickedCallback(onClickVersion); 440 channel_text->setClickedCallback(onClickVersion);
432 channel_text->setCallbackUserData(this); 441 channel_text->setCallbackUserData(this);
433 442
diff --git a/linden/indra/newview/res/viewerRes.rc b/linden/indra/newview/res/viewerRes.rc
index a39bb9f..2082405 100644
--- a/linden/indra/newview/res/viewerRes.rc
+++ b/linden/indra/newview/res/viewerRes.rc
@@ -1,288 +1,288 @@
1// Microsoft Visual C++ generated resource script. 1// Microsoft Visual C++ generated resource script.
2// 2//
3#include "resource.h" 3#include "resource.h"
4 4
5#ifdef IDC_STATIC 5#ifdef IDC_STATIC
6#undef IDC_STATIC 6#undef IDC_STATIC
7#endif 7#endif
8#define IDC_STATIC (-1) 8#define IDC_STATIC (-1)
9#include "winresrc.h" 9#include "winresrc.h"
10 10
11#define APSTUDIO_READONLY_SYMBOLS 11#define APSTUDIO_READONLY_SYMBOLS
12///////////////////////////////////////////////////////////////////////////// 12/////////////////////////////////////////////////////////////////////////////
13// 13//
14// Generated from the TEXTINCLUDE 2 resource. 14// Generated from the TEXTINCLUDE 2 resource.
15// 15//
16// Commented out because it only compiles if you have MFC installed. 16// Commented out because it only compiles if you have MFC installed.
17//#include "winres.h" 17//#include "winres.h"
18 18
19///////////////////////////////////////////////////////////////////////////// 19/////////////////////////////////////////////////////////////////////////////
20#undef APSTUDIO_READONLY_SYMBOLS 20#undef APSTUDIO_READONLY_SYMBOLS
21 21
22///////////////////////////////////////////////////////////////////////////// 22/////////////////////////////////////////////////////////////////////////////
23// English (U.S.) resources 23// English (U.S.) resources
24 24
25#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) 25#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
26#ifdef _WIN32 26#ifdef _WIN32
27LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US 27LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
28#pragma code_page(1252) 28#pragma code_page(1252)
29#endif //_WIN32 29#endif //_WIN32
30 30
31#ifdef APSTUDIO_INVOKED 31#ifdef APSTUDIO_INVOKED
32///////////////////////////////////////////////////////////////////////////// 32/////////////////////////////////////////////////////////////////////////////
33// 33//
34// TEXTINCLUDE 34// TEXTINCLUDE
35// 35//
36 36
371 TEXTINCLUDE 371 TEXTINCLUDE
38BEGIN 38BEGIN
39 "resource.h\0" 39 "resource.h\0"
40END 40END
41 41
422 TEXTINCLUDE 422 TEXTINCLUDE
43BEGIN 43BEGIN
44 "#include ""winres.h""\r\n" 44 "#include ""winres.h""\r\n"
45 "\0" 45 "\0"
46END 46END
47 47
483 TEXTINCLUDE 483 TEXTINCLUDE
49BEGIN 49BEGIN
50 "\r\n" 50 "\r\n"
51 "\0" 51 "\0"
52END 52END
53 53
54#endif // APSTUDIO_INVOKED 54#endif // APSTUDIO_INVOKED
55 55
56 56
57///////////////////////////////////////////////////////////////////////////// 57/////////////////////////////////////////////////////////////////////////////
58// 58//
59// Icon 59// Icon
60// 60//
61 61
62// Icon with lowest ID value placed first to ensure application icon 62// Icon with lowest ID value placed first to ensure application icon
63// remains consistent on all systems. 63// remains consistent on all systems.
64IDI_LL_ICON ICON "ll_icon.ico" 64IDI_LL_ICON ICON "ll_icon.ico"
65IDI_INSTALL_ICON ICON "install_icon.ico" 65IDI_INSTALL_ICON ICON "install_icon.ico"
66IDI_LCD_LL_ICON ICON "icon1.ico" 66IDI_LCD_LL_ICON ICON "icon1.ico"
67 67
68///////////////////////////////////////////////////////////////////////////// 68/////////////////////////////////////////////////////////////////////////////
69// 69//
70// Dialog 70// Dialog
71// 71//
72 72
73CONNECTBOX DIALOGEX 32, 32, 187, 246 73CONNECTBOX DIALOGEX 32, 32, 187, 246
74STYLE DS_SETFONT | DS_SETFOREGROUND | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | 74STYLE DS_SETFONT | DS_SETFOREGROUND | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP |
75 WS_VISIBLE | WS_CAPTION | WS_SYSMENU 75 WS_VISIBLE | WS_CAPTION | WS_SYSMENU
76FONT 8, "MS Sans Serif", 0, 0, 0x0 76FONT 8, "MS Sans Serif", 0, 0, 0x0
77BEGIN 77BEGIN
78 CONTROL 149,IDC_STATIC,"Static",SS_BITMAP,0,0,187,246 78 CONTROL 149,IDC_STATIC,"Static",SS_BITMAP,0,0,187,246
79 EDITTEXT IDC_EDIT_FIRSTNAME,9,180,80,13,ES_AUTOHSCROLL 79 EDITTEXT IDC_EDIT_FIRSTNAME,9,180,80,13,ES_AUTOHSCROLL
80 EDITTEXT IDC_EDIT_LASTNAME,98,180,80,13,ES_AUTOHSCROLL 80 EDITTEXT IDC_EDIT_LASTNAME,98,180,80,13,ES_AUTOHSCROLL
81 EDITTEXT IDC_EDIT_PASSWORD,9,210,80,13,ES_PASSWORD | 81 EDITTEXT IDC_EDIT_PASSWORD,9,210,80,13,ES_PASSWORD |
82 ES_AUTOHSCROLL 82 ES_AUTOHSCROLL
83 CONTROL "Remember password",IDC_REMEMBER_PASSWORD,"Button", 83 CONTROL "Remember password",IDC_REMEMBER_PASSWORD,"Button",
84 BS_AUTOCHECKBOX | WS_TABSTOP,9,229,80,10 84 BS_AUTOCHECKBOX | WS_TABSTOP,9,229,80,10
85 DEFPUSHBUTTON "Connect...",IDOK,98,210,80,13 85 DEFPUSHBUTTON "Connect...",IDOK,98,210,80,13
86 CONTROL "Full screen",IDC_FULL_SCREEN,"Button",BS_AUTOCHECKBOX | 86 CONTROL "Full screen",IDC_FULL_SCREEN,"Button",BS_AUTOCHECKBOX |
87 WS_TABSTOP,100,229,50,10 87 WS_TABSTOP,100,229,50,10
88 COMBOBOX IDC_COMBO_SERVER,98,6,84,30,CBS_DROPDOWNLIST | CBS_SORT | 88 COMBOBOX IDC_COMBO_SERVER,98,6,84,30,CBS_DROPDOWNLIST | CBS_SORT |
89 WS_VSCROLL | WS_TABSTOP 89 WS_VSCROLL | WS_TABSTOP
90END 90END
91 91
92CONNECTBOXIP DIALOG 32, 32, 282, 174 92CONNECTBOXIP DIALOG 32, 32, 282, 174
93STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_CENTER | WS_POPUP | 93STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_CENTER | WS_POPUP |
94 WS_VISIBLE 94 WS_VISIBLE
95FONT 8, "MS Sans Serif" 95FONT 8, "MS Sans Serif"
96BEGIN 96BEGIN
97 LTEXT "First name:",IDC_STATIC_FIRSTNAME,152,24,36,10,NOT 97 LTEXT "First name:",IDC_STATIC_FIRSTNAME,152,24,36,10,NOT
98 WS_GROUP 98 WS_GROUP
99 EDITTEXT IDC_EDIT_FIRSTNAME,152,37,58,13,ES_AUTOHSCROLL 99 EDITTEXT IDC_EDIT_FIRSTNAME,152,37,58,13,ES_AUTOHSCROLL
100 LTEXT "Last name:",IDC_STATIC_LASTNAME,218,24,38,10,NOT 100 LTEXT "Last name:",IDC_STATIC_LASTNAME,218,24,38,10,NOT
101 WS_GROUP 101 WS_GROUP
102 EDITTEXT IDC_EDIT_LASTNAME,218,37,57,13,ES_AUTOHSCROLL 102 EDITTEXT IDC_EDIT_LASTNAME,218,37,57,13,ES_AUTOHSCROLL
103 LTEXT "Password:",IDC_STATIC_PASSWORD,152,55,38,10 103 LTEXT "Password:",IDC_STATIC_PASSWORD,152,55,38,10
104 EDITTEXT IDC_EDIT_PASSWORD,152,71,123,13,ES_PASSWORD | 104 EDITTEXT IDC_EDIT_PASSWORD,152,71,123,13,ES_PASSWORD |
105 ES_AUTOHSCROLL 105 ES_AUTOHSCROLL
106 CONTROL "Remember password for next time",IDC_REMEMBER_PASSWORD, 106 CONTROL "Remember password for next time",IDC_REMEMBER_PASSWORD,
107 "Button",BS_AUTOCHECKBOX | WS_TABSTOP,152,84,123,10 107 "Button",BS_AUTOCHECKBOX | WS_TABSTOP,152,84,123,10
108 LTEXT "Return to:",IDC_STATIC,152,97,32,8 108 LTEXT "Return to:",IDC_STATIC,152,97,32,8
109 CONTROL "Last location",IDC_RADIO_LAST,"Button", 109 CONTROL "Last location",IDC_RADIO_LAST,"Button",
110 BS_AUTORADIOBUTTON | WS_TABSTOP,152,109,56,10 110 BS_AUTORADIOBUTTON | WS_TABSTOP,152,109,56,10
111 CONTROL "Home",IDC_RADIO_HOME,"Button",BS_AUTORADIOBUTTON | 111 CONTROL "Home",IDC_RADIO_HOME,"Button",BS_AUTORADIOBUTTON |
112 WS_TABSTOP,218,109,35,10 112 WS_TABSTOP,218,109,35,10
113 LTEXT "Server:",IDC_STATIC_SERVER,152,119,38,10,NOT WS_GROUP 113 LTEXT "Server:",IDC_STATIC_SERVER,152,119,38,10,NOT WS_GROUP
114 COMBOBOX IDC_COMBO_SERVER,152,134,88,43,CBS_DROPDOWN | WS_VSCROLL | 114 COMBOBOX IDC_COMBO_SERVER,152,134,88,43,CBS_DROPDOWN | WS_VSCROLL |
115 WS_TABSTOP 115 WS_TABSTOP
116 PUSHBUTTON "Quit",IDCANCEL,152,152,50,14 116 PUSHBUTTON "Quit",IDCANCEL,152,152,50,14
117 DEFPUSHBUTTON "Connect...",IDOK,225,152,50,14 117 DEFPUSHBUTTON "Connect...",IDOK,225,152,50,14
118 CONTROL 140,IDB_BITMAP1,"Static",SS_BITMAP,8,7,133,157 118 CONTROL 140,IDB_BITMAP1,"Static",SS_BITMAP,8,7,133,157
119 LTEXT "Connect to Second Life",IDC_STATIC,152,7,78,8 119 LTEXT "Connect to Second Life",IDC_STATIC,152,7,78,8
120END 120END
121 121
122SPLASHSCREEN DIALOG 32, 32, 144, 34 122SPLASHSCREEN DIALOG 32, 32, 144, 34
123STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE 123STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE
124FONT 8, "MS Sans Serif" 124FONT 8, "MS Sans Serif"
125BEGIN 125BEGIN
126 ICON IDI_LL_ICON,IDC_STATIC,7,7,20,20 126 ICON IDI_LL_ICON,IDC_STATIC,7,7,20,20
127 LTEXT "Loading Second Life...",666,36,13,91,8 127 LTEXT "Loading Second Life...",666,36,13,91,8
128END 128END
129 129
130 130
131///////////////////////////////////////////////////////////////////////////// 131/////////////////////////////////////////////////////////////////////////////
132// 132//
133// DESIGNINFO 133// DESIGNINFO
134// 134//
135 135
136#ifdef APSTUDIO_INVOKED 136#ifdef APSTUDIO_INVOKED
137GUIDELINES DESIGNINFO 137GUIDELINES DESIGNINFO
138BEGIN 138BEGIN
139 "CONNECTBOX", DIALOG 139 "CONNECTBOX", DIALOG
140 BEGIN 140 BEGIN
141 LEFTMARGIN, 8 141 LEFTMARGIN, 8
142 RIGHTMARGIN, 180 142 RIGHTMARGIN, 180
143 VERTGUIDE, 152 143 VERTGUIDE, 152
144 TOPMARGIN, 7 144 TOPMARGIN, 7
145 BOTTOMMARGIN, 239 145 BOTTOMMARGIN, 239
146 HORZGUIDE, 44 146 HORZGUIDE, 44
147 HORZGUIDE, 57 147 HORZGUIDE, 57
148 HORZGUIDE, 123 148 HORZGUIDE, 123
149 END 149 END
150 150
151 "CONNECTBOXIP", DIALOG 151 "CONNECTBOXIP", DIALOG
152 BEGIN 152 BEGIN
153 LEFTMARGIN, 7 153 LEFTMARGIN, 7
154 RIGHTMARGIN, 275 154 RIGHTMARGIN, 275
155 VERTGUIDE, 152 155 VERTGUIDE, 152
156 VERTGUIDE, 218 156 VERTGUIDE, 218
157 TOPMARGIN, 7 157 TOPMARGIN, 7
158 BOTTOMMARGIN, 166 158 BOTTOMMARGIN, 166
159 HORZGUIDE, 12 159 HORZGUIDE, 12
160 HORZGUIDE, 17 160 HORZGUIDE, 17
161 HORZGUIDE, 24 161 HORZGUIDE, 24
162 HORZGUIDE, 50 162 HORZGUIDE, 50
163 HORZGUIDE, 55 163 HORZGUIDE, 55
164 HORZGUIDE, 84 164 HORZGUIDE, 84
165 HORZGUIDE, 105 165 HORZGUIDE, 105
166 HORZGUIDE, 119 166 HORZGUIDE, 119
167 END 167 END
168 168
169 "SPLASHSCREEN", DIALOG 169 "SPLASHSCREEN", DIALOG
170 BEGIN 170 BEGIN
171 LEFTMARGIN, 7 171 LEFTMARGIN, 7
172 RIGHTMARGIN, 137 172 RIGHTMARGIN, 137
173 VERTGUIDE, 36 173 VERTGUIDE, 36
174 TOPMARGIN, 7 174 TOPMARGIN, 7
175 BOTTOMMARGIN, 27 175 BOTTOMMARGIN, 27
176 END 176 END
177END 177END
178#endif // APSTUDIO_INVOKED 178#endif // APSTUDIO_INVOKED
179 179
180 180
181///////////////////////////////////////////////////////////////////////////// 181/////////////////////////////////////////////////////////////////////////////
182// 182//
183// Menu 183// Menu
184// 184//
185 185
186IDR_MENU1 MENU 186IDR_MENU1 MENU
187BEGIN 187BEGIN
188 POPUP "testmenu" 188 POPUP "testmenu"
189 BEGIN 189 BEGIN
190 MENUITEM "test", ID_TESTMENU_TEST 190 MENUITEM "test", ID_TESTMENU_TEST
191 END 191 END
192END 192END
193 193
194 194
195///////////////////////////////////////////////////////////////////////////// 195/////////////////////////////////////////////////////////////////////////////
196// 196//
197// Cursor 197// Cursor
198// 198//
199 199
200TOOLGRAB CURSOR "lltoolgrab.cur" 200TOOLGRAB CURSOR "lltoolgrab.cur"
201TOOLLAND CURSOR "lltoolland.cur" 201TOOLLAND CURSOR "lltoolland.cur"
202TOOLZOOMIN CURSOR "lltoolzoomin.cur" 202TOOLZOOMIN CURSOR "lltoolzoomin.cur"
203TOOLCREATE CURSOR "lltoolcreate.cur" 203TOOLCREATE CURSOR "lltoolcreate.cur"
204ARROWDRAG CURSOR "llarrowdrag.cur" 204ARROWDRAG CURSOR "llarrowdrag.cur"
205ARROW CURSOR "llarrow.cur" 205ARROW CURSOR "llarrow.cur"
206NOLOCKED CURSOR "llnolocked.cur" 206NOLOCKED CURSOR "llnolocked.cur"
207ARROWLOCKED CURSOR "llarrowlocked.cur" 207ARROWLOCKED CURSOR "llarrowlocked.cur"
208GRABLOCKED CURSOR "llgrablocked.cur" 208GRABLOCKED CURSOR "llgrablocked.cur"
209TOOLROTATE CURSOR "lltoolrotate.cur" 209TOOLROTATE CURSOR "lltoolrotate.cur"
210TOOLTRANSLATE CURSOR "lltooltranslate.cur" 210TOOLTRANSLATE CURSOR "lltooltranslate.cur"
211TOOLSCALE CURSOR "lltoolscale.cur" 211TOOLSCALE CURSOR "lltoolscale.cur"
212TOOLCAMERA CURSOR "lltoolcamera.cur" 212TOOLCAMERA CURSOR "lltoolcamera.cur"
213TOOLPAN CURSOR "lltoolpan.cur" 213TOOLPAN CURSOR "lltoolpan.cur"
214TOOLFOCUS CURSOR "lltoolfocus.cur" 214TOOLFOCUS CURSOR "lltoolfocus.cur"
215TOOLPICKOBJECT3 CURSOR "toolpickobject3.cur" 215TOOLPICKOBJECT3 CURSOR "toolpickobject3.cur"
216ARROWCOPY CURSOR "arrowcop.cur" 216ARROWCOPY CURSOR "arrowcop.cur"
217ARROWDRAGMULTI CURSOR "llarrowdragmulti.cur" 217ARROWDRAGMULTI CURSOR "llarrowdragmulti.cur"
218ARROWCOPYMULTI CURSOR "arrowcopmulti.cur" 218ARROWCOPYMULTI CURSOR "arrowcopmulti.cur"
219TOOLSIT CURSOR "toolsit.cur" 219TOOLSIT CURSOR "toolsit.cur"
220TOOLBUY CURSOR "toolbuy.cur" 220TOOLBUY CURSOR "toolbuy.cur"
221TOOLPAY CURSOR "toolpay.cur" 221TOOLPAY CURSOR "toolpay.cur"
222TOOLOPEN CURSOR "toolopen.cur" 222TOOLOPEN CURSOR "toolopen.cur"
223TOOLPIPETTE CURSOR "toolpipette.cur" 223TOOLPIPETTE CURSOR "toolpipette.cur"
224TOOLPLAY CURSOR "toolplay.cur" 224TOOLPLAY CURSOR "toolplay.cur"
225TOOLPAUSE CURSOR "toolpause.cur" 225TOOLPAUSE CURSOR "toolpause.cur"
226TOOLMEDIAOPEN CURSOR "toolmediaopen.cur" 226TOOLMEDIAOPEN CURSOR "toolmediaopen.cur"
227 227
228///////////////////////////////////////////////////////////////////////////// 228/////////////////////////////////////////////////////////////////////////////
229// 229//
230// Version 230// Version
231// 231//
232 232
233VS_VERSION_INFO VERSIONINFO 233VS_VERSION_INFO VERSIONINFO
234 FILEVERSION 1,20,9,87416 234 FILEVERSION 1,20,9,87416
235 PRODUCTVERSION 1,20,9,87416 235 PRODUCTVERSION 1,20,9,87416
236 FILEFLAGSMASK 0x3fL 236 FILEFLAGSMASK 0x3fL
237#ifdef _DEBUG 237#ifdef _DEBUG
238 FILEFLAGS 0x1L 238 FILEFLAGS 0x1L
239#else 239#else
240 FILEFLAGS 0x0L 240 FILEFLAGS 0x0L
241#endif 241#endif
242 FILEOS 0x40004L 242 FILEOS 0x40004L
243 FILETYPE 0x1L 243 FILETYPE 0x1L
244 FILESUBTYPE 0x0L 244 FILESUBTYPE 0x0L
245BEGIN 245BEGIN
246 BLOCK "StringFileInfo" 246 BLOCK "StringFileInfo"
247 BEGIN 247 BEGIN
248 BLOCK "040904b0" 248 BLOCK "040904b0"
249 BEGIN 249 BEGIN
250 VALUE "CompanyName", "Linden Lab" 250 VALUE "CompanyName", "Imprudence Viewer Project"
251 VALUE "FileDescription", "Second Life" 251 VALUE "FileDescription", "Imprudence"
252 VALUE "FileVersion", "1.20.9.87416" 252 VALUE "FileVersion", "1.0.0"
253 VALUE "InternalName", "Second Life" 253 VALUE "InternalName", "Imprudence"
254 VALUE "LegalCopyright", "Copyright © 2001-2008, Linden Research, Inc." 254 VALUE "LegalCopyright", "Copyright © 2001-2008, Linden Research, Inc."
255 VALUE "OriginalFilename", "SecondLife.exe" 255 VALUE "OriginalFilename", "Imprudence.exe"
256 VALUE "ProductName", "Second Life" 256 VALUE "ProductName", "Imprudence"
257 VALUE "ProductVersion", "1.20.9.87416" 257 VALUE "ProductVersion", "1.0.0"
258 END 258 END
259 END 259 END
260 BLOCK "VarFileInfo" 260 BLOCK "VarFileInfo"
261 BEGIN 261 BEGIN
262 VALUE "Translation", 0x409, 1200 262 VALUE "Translation", 0x409, 1200
263 END 263 END
264END 264END
265 265
266 266
267///////////////////////////////////////////////////////////////////////////// 267/////////////////////////////////////////////////////////////////////////////
268// 268//
269// Bitmap 269// Bitmap
270// 270//
271 271
272IDB_BITMAP2 BITMAP "bitmap2.bmp" 272IDB_BITMAP2 BITMAP "bitmap2.bmp"
273IDB_LOGIN BITMAP "loginbackground.bmp" 273IDB_LOGIN BITMAP "loginbackground.bmp"
274#endif // English (U.S.) resources 274#endif // English (U.S.) resources
275///////////////////////////////////////////////////////////////////////////// 275/////////////////////////////////////////////////////////////////////////////
276 276
277 277
278 278
279#ifndef APSTUDIO_INVOKED 279#ifndef APSTUDIO_INVOKED
280///////////////////////////////////////////////////////////////////////////// 280/////////////////////////////////////////////////////////////////////////////
281// 281//
282// Generated from the TEXTINCLUDE 3 resource. 282// Generated from the TEXTINCLUDE 3 resource.
283// 283//
284 284
285 285
286///////////////////////////////////////////////////////////////////////////// 286/////////////////////////////////////////////////////////////////////////////
287#endif // not APSTUDIO_INVOKED 287#endif // not APSTUDIO_INVOKED
288 288
diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py
index 3d56c7d..1d9c1f7 100755
--- a/linden/indra/newview/viewer_manifest.py
+++ b/linden/indra/newview/viewer_manifest.py
@@ -139,9 +139,9 @@ class WindowsManifest(ViewerManifest):
139 def final_exe(self): 139 def final_exe(self):
140 if self.default_channel(): 140 if self.default_channel():
141 if self.default_grid(): 141 if self.default_grid():
142 return "SecondLife.exe" 142 return "Imprudence.exe"
143 else: 143 else:
144 return "SecondLifePreview.exe" 144 return "ImprudencePreview.exe"
145 else: 145 else:
146 return ''.join(self.channel().split()) + '.exe' 146 return ''.join(self.channel().split()) + '.exe'
147 147
@@ -150,7 +150,7 @@ class WindowsManifest(ViewerManifest):
150 super(WindowsManifest, self).construct() 150 super(WindowsManifest, self).construct()
151 # the final exe is complicated because we're not sure where it's coming from, 151 # the final exe is complicated because we're not sure where it's coming from,
152 # nor do we have a fixed name for the executable 152 # nor do we have a fixed name for the executable
153 self.path(self.find_existing_file('debug/secondlife-bin.exe', 'release/secondlife-bin.exe', 'relwithdebinfo/secondlife-bin.exe'), dst=self.final_exe()) 153 self.path(self.find_existing_file('debug/imprudence-bin.exe', 'release/imprudence-bin.exe', 'relwithdebinfo/imprudence-bin.exe'), dst=self.final_exe())
154 # need to get the kdu dll from any of the build directories as well 154 # need to get the kdu dll from any of the build directories as well
155 self.path(self.find_existing_file( 155 self.path(self.find_existing_file(
156 # *FIX:Mani we need to add support for packaging specific targets. 156 # *FIX:Mani we need to add support for packaging specific targets.
@@ -299,36 +299,36 @@ class WindowsManifest(ViewerManifest):
299 if self.default_channel(): 299 if self.default_channel():
300 if self.default_grid(): 300 if self.default_grid():
301 # release viewer 301 # release viewer
302 installer_file = "Second_Life_%(version_dashes)s_Setup.exe" 302 installer_file = "Imprudence_%(version_dashes)s_Setup.exe"
303 grid_vars_template = """ 303 grid_vars_template = """
304 OutFile "%(installer_file)s" 304 OutFile "%(installer_file)s"
305 !define INSTFLAGS "%(flags)s" 305 !define INSTFLAGS "%(flags)s"
306 !define INSTNAME "SecondLife" 306 !define INSTNAME "Imprudence"
307 !define SHORTCUT "Second Life" 307 !define SHORTCUT "Imprudence"
308 !define URLNAME "secondlife" 308 !define URLNAME "imprudence"
309 Caption "Second Life ${VERSION}" 309 Caption "Imprudence ${VERSION}"
310 """ 310 """
311 else: 311 else:
312 # beta grid viewer 312 # beta grid viewer
313 installer_file = "Second_Life_%(version_dashes)s_(%(grid_caps)s)_Setup.exe" 313 installer_file = "Imprudence_%(version_dashes)s_(%(grid_caps)s)_Setup.exe"
314 grid_vars_template = """ 314 grid_vars_template = """
315 OutFile "%(installer_file)s" 315 OutFile "%(installer_file)s"
316 !define INSTFLAGS "%(flags)s" 316 !define INSTFLAGS "%(flags)s"
317 !define INSTNAME "SecondLife%(grid_caps)s" 317 !define INSTNAME "Imprudence%(grid_caps)s"
318 !define SHORTCUT "Second Life (%(grid_caps)s)" 318 !define SHORTCUT "Imprudence (%(grid_caps)s)"
319 !define URLNAME "secondlife%(grid)s" 319 !define URLNAME "imprudence%(grid)s"
320 !define UNINSTALL_SETTINGS 1 320 !define UNINSTALL_SETTINGS 1
321 Caption "Second Life %(grid)s ${VERSION}" 321 Caption "Imprudence %(grid)s ${VERSION}"
322 """ 322 """
323 else: 323 else:
324 # some other channel on some grid 324 # some other channel on some grid
325 installer_file = "Second_Life_%(version_dashes)s_%(channel_oneword)s_Setup.exe" 325 installer_file = "Imprudence_%(version_dashes)s_%(channel_oneword)s_Setup.exe"
326 grid_vars_template = """ 326 grid_vars_template = """
327 OutFile "%(installer_file)s" 327 OutFile "%(installer_file)s"
328 !define INSTFLAGS "%(flags)s" 328 !define INSTFLAGS "%(flags)s"
329 !define INSTNAME "SecondLife%(channel_oneword)s" 329 !define INSTNAME "Imprudence%(channel_oneword)s"
330 !define SHORTCUT "%(channel)s" 330 !define SHORTCUT "%(channel)s"
331 !define URLNAME "secondlife" 331 !define URLNAME "imprudence"
332 !define UNINSTALL_SETTINGS 1 332 !define UNINSTALL_SETTINGS 1
333 Caption "%(channel)s ${VERSION}" 333 Caption "%(channel)s ${VERSION}"
334 """ 334 """
@@ -338,7 +338,7 @@ class WindowsManifest(ViewerManifest):
338 installer_file = installer_file % substitution_strings 338 installer_file = installer_file % substitution_strings
339 substitution_strings['installer_file'] = installer_file 339 substitution_strings['installer_file'] = installer_file
340 340
341 tempfile = "secondlife_setup_tmp.nsi" 341 tempfile = "imprudence_setup_tmp.nsi"
342 # the following replaces strings in the nsi template 342 # the following replaces strings in the nsi template
343 # it also does python-style % substitution 343 # it also does python-style % substitution
344 self.replace_in("installers/windows/installer_template.nsi", tempfile, { 344 self.replace_in("installers/windows/installer_template.nsi", tempfile, {
@@ -358,7 +358,7 @@ class WindowsManifest(ViewerManifest):
358class DarwinManifest(ViewerManifest): 358class DarwinManifest(ViewerManifest):
359 def construct(self): 359 def construct(self):
360 # copy over the build result (this is a no-op if run within the xcode script) 360 # copy over the build result (this is a no-op if run within the xcode script)
361 self.path(self.args['configuration'] + "/Second Life.app", dst="") 361 self.path(self.args['configuration'] + "/Imprudence.app", dst="")
362 362
363 if self.prefix(src="", dst="Contents"): # everything goes in Contents 363 if self.prefix(src="", dst="Contents"): # everything goes in Contents
364 # Expand the tar file containing the assorted mozilla bits into 364 # Expand the tar file containing the assorted mozilla bits into
@@ -437,16 +437,16 @@ class DarwinManifest(ViewerManifest):
437 437
438 438
439 def package_finish(self): 439 def package_finish(self):
440 channel_standin = 'Second Life' # hah, our default channel is not usable on its own 440 channel_standin = 'Imprudence' # hah, our default channel is not usable on its own
441 if not self.default_channel(): 441 if not self.default_channel():
442 channel_standin = self.channel() 442 channel_standin = self.channel()
443 443
444 imagename="SecondLife_" + '_'.join(self.args['version']) 444 imagename="Imprudence_" + '_'.join(self.args['version'])
445 445
446 # MBW -- If the mounted volume name changes, it breaks the .DS_Store's background image and icon positioning. 446 # MBW -- If the mounted volume name changes, it breaks the .DS_Store's background image and icon positioning.
447 # If we really need differently named volumes, we'll need to create multiple DS_Store file images, or use some other trick. 447 # If we really need differently named volumes, we'll need to create multiple DS_Store file images, or use some other trick.
448 448
449 volname="Second Life Installer" # DO NOT CHANGE without understanding comment above 449 volname="Imprudence Installer" # DO NOT CHANGE without understanding comment above
450 450
451 if self.default_channel(): 451 if self.default_channel():
452 if not self.default_grid(): 452 if not self.default_grid():
@@ -473,7 +473,7 @@ class DarwinManifest(ViewerManifest):
473 # Copy everything in to the mounted .dmg 473 # Copy everything in to the mounted .dmg
474 474
475 if self.default_channel() and not self.default_grid(): 475 if self.default_channel() and not self.default_grid():
476 app_name = "Second Life " + self.args['grid'] 476 app_name = "Imprudence " + self.args['grid']
477 else: 477 else:
478 app_name = channel_standin.strip() 478 app_name = channel_standin.strip()
479 479
@@ -533,7 +533,7 @@ class LinuxManifest(ViewerManifest):
533 if self.prefix("linux_tools", dst=""): 533 if self.prefix("linux_tools", dst=""):
534 self.path("client-readme.txt","README-linux.txt") 534 self.path("client-readme.txt","README-linux.txt")
535 self.path("client-readme-voice.txt","README-linux-voice.txt") 535 self.path("client-readme-voice.txt","README-linux-voice.txt")
536 self.path("wrapper.sh","secondlife") 536 self.path("wrapper.sh","imprudence")
537 self.path("handle_secondlifeprotocol.sh") 537 self.path("handle_secondlifeprotocol.sh")
538 self.path("register_secondlifeprotocol.sh") 538 self.path("register_secondlifeprotocol.sh")
539 self.end_prefix("linux_tools") 539 self.end_prefix("linux_tools")
@@ -553,7 +553,7 @@ class LinuxManifest(ViewerManifest):
553 if 'installer_name' in self.args: 553 if 'installer_name' in self.args:
554 installer_name = self.args['installer_name'] 554 installer_name = self.args['installer_name']
555 else: 555 else:
556 installer_name_components = ['SecondLife_', self.args.get('arch')] 556 installer_name_components = ['Imprudence_', self.args.get('arch')]
557 installer_name_components.extend(self.args['version']) 557 installer_name_components.extend(self.args['version'])
558 installer_name = "_".join(installer_name_components) 558 installer_name = "_".join(installer_name_components)
559 if self.default_channel(): 559 if self.default_channel():
@@ -598,7 +598,7 @@ class LinuxManifest(ViewerManifest):
598class Linux_i686Manifest(LinuxManifest): 598class Linux_i686Manifest(LinuxManifest):
599 def construct(self): 599 def construct(self):
600 super(Linux_i686Manifest, self).construct() 600 super(Linux_i686Manifest, self).construct()
601 self.path("secondlife-stripped","bin/do-not-directly-run-secondlife-bin") 601 self.path("imprudence-stripped","bin/do-not-directly-run-imprudence-bin")
602# self.path("../linux_crash_logger/linux-crash-logger-stripped","linux-crash-logger.bin") 602# self.path("../linux_crash_logger/linux-crash-logger-stripped","linux-crash-logger.bin")
603 self.path("linux_tools/launch_url.sh","launch_url.sh") 603 self.path("linux_tools/launch_url.sh","launch_url.sh")
604 if self.prefix("res-sdl"): 604 if self.prefix("res-sdl"):
@@ -644,7 +644,7 @@ class Linux_i686Manifest(LinuxManifest):
644class Linux_x86_64Manifest(LinuxManifest): 644class Linux_x86_64Manifest(LinuxManifest):
645 def construct(self): 645 def construct(self):
646 super(Linux_x86_64Manifest, self).construct() 646 super(Linux_x86_64Manifest, self).construct()
647 self.path("secondlife-stripped","bin/do-not-directly-run-secondlife-bin") 647 self.path("imprudence-stripped","bin/do-not-directly-run-imprudence-bin")
648# self.path("../linux_crash_logger/linux-crash-logger-stripped","linux-crash-logger.bin") 648# self.path("../linux_crash_logger/linux-crash-logger-stripped","linux-crash-logger.bin")
649 self.path("linux_tools/launch_url.sh","launch_url.sh") 649 self.path("linux_tools/launch_url.sh","launch_url.sh")
650 if self.prefix("res-sdl"): 650 if self.prefix("res-sdl"):
diff --git a/linden/indra/win_updater/updater.cpp b/linden/indra/win_updater/updater.cpp
index 5ea4695..9b99f91 100644
--- a/linden/indra/win_updater/updater.cpp
+++ b/linden/indra/win_updater/updater.cpp
@@ -376,7 +376,7 @@ WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nSho
376 } 376 }
377 else 377 else
378 { 378 {
379 mbstowcs(window_title, "Second Life Updater", 2048); 379 mbstowcs(window_title, "Imprudence Updater", 2048);
380 } 380 }
381 381
382 WNDCLASSEX wndclassex = { 0 }; 382 WNDCLASSEX wndclassex = { 0 };
@@ -469,11 +469,11 @@ WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nSho
469 if (gTotalBytesRead < (1024 * 1024) && ! cancelled) 469 if (gTotalBytesRead < (1024 * 1024) && ! cancelled)
470 { 470 {
471 MessageBox(gWindow, 471 MessageBox(gWindow,
472 L"The Second Life auto-update has failed.\n" 472 L"The Imprudence auto-update has failed.\n"
473 L"The problem may be caused by other software installed \n" 473 L"The problem may be caused by other software installed \n"
474 L"on your computer, such as a firewall.\n" 474 L"on your computer, such as a firewall.\n"
475 L"Please visit http://secondlife.com/download/ \n" 475 L"Please visit http://imprudenceviewer.org/download/ \n"
476 L"to download the latest version of Second Life.\n", 476 L"to download the latest version of Imprudence.\n",
477 NULL, MB_OK); 477 NULL, MB_OK);
478 return 1; 478 return 1;
479 } 479 }
@@ -487,7 +487,7 @@ WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nSho
487 if (!success) 487 if (!success)
488 { 488 {
489 MessageBox(gWindow, 489 MessageBox(gWindow,
490 L"Second Life download failed.\n" 490 L"Imprudence download failed.\n"
491 L"Please try again later.", 491 L"Please try again later.",
492 NULL, MB_OK); 492 NULL, MB_OK);
493 return 1; 493 return 1;