diff --git a/autobuild.xml b/autobuild.xml index 34e3b79539..35d432ad3c 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -850,9 +850,9 @@ archive hash - 2b29e6435ea9487bc2019a28b8287d6a + 7b8fd7a8ea9850f1cad187059d2da4af url - http://3p.firestormviewer.org/dullahan-1.8.0.202011061705_81.3.10_gb223419_chromium-81.0.4044.138-linux64-203111605.tar.bz2 + http://3p.firestormviewer.org/dullahan-1.12.2.202109131147_91.1.23_g04c8d56_chromium-91.0.4472.164-linux64-212560947.tar.bz2 name linux64 @@ -1842,9 +1842,9 @@ archive hash - 3b8b0f54c851f136e2a92e1c6ba724a5 + e99b86fc3ed48a778580dd1449f8f33b url - file:///opt/firestorm/kdu-8.1-darwin64-211970151.tar.bz2 + file:///opt/firestorm/kdu-8.2-darwin-212431232.tar.bz2 name darwin64 diff --git a/indra/llfilesystem/lldiskcache.cpp b/indra/llfilesystem/lldiskcache.cpp index e126a24c00..589213733a 100644 --- a/indra/llfilesystem/lldiskcache.cpp +++ b/indra/llfilesystem/lldiskcache.cpp @@ -71,7 +71,7 @@ LLDiskCache::LLDiskCache(const std::string cache_dir, void LLDiskCache::purge() { - //if (mEnableCacheDebugInfo) + if (mEnableCacheDebugInfo) { LL_INFOS() << "Total dir size before purge is " << dirFileSize(mCacheDir) << LL_ENDL; } @@ -93,7 +93,7 @@ void LLDiskCache::purge() //for (auto& entry : boost::make_iterator_range(boost::filesystem::directory_iterator(cache_path, ec), {})) for (auto& entry : boost::make_iterator_range(boost::filesystem::recursive_directory_iterator(cache_path, ec), {})) { - if (boost::filesystem::is_regular_file(entry, ec) && !ec.failed()) + if (!ec.failed() && (boost::filesystem::is_regular_file(entry, ec) && !ec.failed())) { if (entry.path().string().find(mCacheFilenamePrefix) != std::string::npos) { @@ -181,7 +181,7 @@ void LLDiskCache::purge() } } - //if (mEnableCacheDebugInfo) + if (mEnableCacheDebugInfo) { auto end_time = std::chrono::high_resolution_clock::now(); auto execute_time = std::chrono::duration_cast(end_time - start_time).count(); @@ -485,7 +485,7 @@ uintmax_t LLDiskCache::dirFileSize(const std::string dir) //for (auto& entry : boost::make_iterator_range(boost::filesystem::directory_iterator(dir_path, ec), {})) for (auto& entry : boost::make_iterator_range(boost::filesystem::recursive_directory_iterator(dir_path, ec), {})) { - if (boost::filesystem::is_regular_file(entry, ec) && !ec.failed()) + if (!ec.failed() && (boost::filesystem::is_regular_file(entry, ec) && !ec.failed())) { if (entry.path().string().find(mCacheFilenamePrefix) != std::string::npos) { diff --git a/indra/media_plugins/cef/media_plugin_cef.cpp b/indra/media_plugins/cef/media_plugin_cef.cpp index bbd3c85ec1..00c707af39 100644 --- a/indra/media_plugins/cef/media_plugin_cef.cpp +++ b/indra/media_plugins/cef/media_plugin_cef.cpp @@ -141,6 +141,10 @@ MediaPluginBase(host_send_func, host_user_data) mPickedFiles.clear(); mCurVolume = 0.0; +#ifdef LL_LINUX + mDisableGPU = true; +#endif + mCEFLib = new dullahan(); setVolume(); @@ -533,9 +537,7 @@ void MediaPluginCEF::receiveMessage(const char* message_string) mCEFLib->setOnCursorChangedCallback(std::bind(&MediaPluginCEF::onCursorChangedCallback, this, std::placeholders::_1)); mCEFLib->setOnRequestExitCallback(std::bind(&MediaPluginCEF::onRequestExitCallback, this)); mCEFLib->setOnJSDialogCallback(std::bind(&MediaPluginCEF::onJSDialogCallback, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3)); -#ifndef LL_LINUX mCEFLib->setOnJSBeforeUnloadCallback(std::bind(&MediaPluginCEF::onJSBeforeUnloadCallback, this)); -#endif dullahan::dullahan_settings settings; #if LL_WINDOWS diff --git a/indra/newview/app_settings/grids.xml b/indra/newview/app_settings/grids.xml index 6541975346..2a2e599f07 100644 --- a/indra/newview/app_settings/grids.xml +++ b/indra/newview/app_settings/grids.xml @@ -953,7 +953,7 @@ agent loginpage - http://phoenixviewer.com/app/loginV3/ + https://phoenixviewer.com/app/loginV3/ loginuri https://login.aditi.lindenlab.com/cgi-bin/login.cgi @@ -986,7 +986,7 @@ agent loginpage - http://phoenixviewer.com/app/loginV3/ + https://phoenixviewer.com/app/loginV3/ loginuri https://login.agni.lindenlab.com/cgi-bin/login.cgi diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 90dfad49fb..658df3f703 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -24235,7 +24235,7 @@ Change of this parameter will affect the layout of buttons in notification toast Type String Value - http://phoenixviewer.com/app/loginV3/secondlifegrid.xml + https://phoenixviewer.com/app/loginV3/secondlifegrid.xml FSIgnoreAdHocSessions diff --git a/indra/newview/fsgridhandler.cpp b/indra/newview/fsgridhandler.cpp index aa5e69fa5b..462b10ca41 100644 --- a/indra/newview/fsgridhandler.cpp +++ b/indra/newview/fsgridhandler.cpp @@ -149,7 +149,7 @@ void gridDownloadComplete( LLSD const &aData, LLGridManager* mOwner, GridEntry* } } -const char* DEFAULT_LOGIN_PAGE = "http://phoenixviewer.com/app/loginV3/"; +const char* DEFAULT_LOGIN_PAGE = "https://phoenixviewer.com/app/loginV3/"; const char* SYSTEM_GRID_SLURL_BASE = "secondlife://%s/secondlife/"; const char* MAIN_GRID_SLURL_BASE = "http://maps.secondlife.com/secondlife/"; diff --git a/indra/newview/fsradarentry.cpp b/indra/newview/fsradarentry.cpp index 38bb6839e2..ef911faa58 100644 --- a/indra/newview/fsradarentry.cpp +++ b/indra/newview/fsradarentry.cpp @@ -124,7 +124,7 @@ void FSRadarEntry::processProperties(void* data, EAvatarProcessorType type) else if (type == APT_NOTES) { LLAvatarNotes* avatar_notes = static_cast(data); - if (avatar_notes && avatar_notes->agent_id == gAgentID && avatar_notes->target_id == mID) + if (avatar_notes && avatar_notes->agent_id == gAgentID && avatar_notes->target_id == mID && !gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES)) { mNotes = avatar_notes->notes; LLStringUtil::trim(mNotes); diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp index 64fae234b8..80d45d6fb3 100644 --- a/indra/newview/lldrawpoolavatar.cpp +++ b/indra/newview/lldrawpoolavatar.cpp @@ -581,8 +581,12 @@ void LLDrawPoolAvatar::renderShadow(S32 pass) } LLVOAvatar::AvatarOverallAppearance oa = avatarp->getOverallAppearance(); BOOL impostor = !LLPipeline::sImpostorRender && avatarp->isImpostor(); - if (oa == LLVOAvatar::AOA_INVISIBLE || - (impostor && oa == LLVOAvatar::AOA_JELLYDOLL)) + // plain old impostors are passing through the shadow pipeline + // if (oa == LLVOAvatar::AOA_INVISIBLE || + // (impostor && oa == LLVOAvatar::AOA_JELLYDOLL)) + // Note: Impostors should not cast shadows, also all JDs are impostor nowadays so we do not need the extra check at all. + if (impostor || (oa == LLVOAvatar::AOA_INVISIBLE) ) + // { // No shadows for jellydolled or invisible avs. return; diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 21a58a3f01..8a63756457 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -5739,6 +5739,25 @@ BOOL FSPanelPreferenceBackup::postBuild() getChild("settings_backup_path")->setValue(dir_name); // + // + #if !defined OPENSIM + // Note: Windlight setting restore is enabled in OPENSIM bulds irrespective of grid (or pre-login) + // windlights settings folders are not grid specific and thus neither is the restore. + // if windlight folders existsed they will be backed up on all builds but for SL only builds they will not be restored. + + LLScrollListCtrl* globalFoldersScrollList = getChild("restore_global_folders_list"); + std::vector globalFoldersList = globalFoldersScrollList->getAllData(); + for (const auto item : globalFoldersList) + { + // if it is windlight related remove it. + if (item->getValue().asString().rfind("windlight",0) == 0) + { + LL_INFOS() << "removing windlight folder (no longer used in SL) : " << item->getValue().asString() << " index: " << globalFoldersScrollList->getItemIndex(item) << LL_ENDL; + globalFoldersScrollList->deleteSingleItem(globalFoldersScrollList->getItemIndex(item)); + } + } + #endif + // return LLPanelPreference::postBuild(); } diff --git a/indra/newview/llspatialpartition.cpp b/indra/newview/llspatialpartition.cpp index 2aef348685..2f0a78b1b2 100644 --- a/indra/newview/llspatialpartition.cpp +++ b/indra/newview/llspatialpartition.cpp @@ -970,7 +970,9 @@ void LLSpatialGroup::destroyGL(bool keep_occlusion) // Reset VB during TP if (is_tree_group && drawable->getVObj()) { - ((LLVOTree*)drawable->getVObj().get())->destroyVB(); + auto votree = dynamic_cast(drawable->getVObj().get()); + if (votree) + votree->destroyVB(); } // } diff --git a/indra/newview/llviewernetwork.cpp b/indra/newview/llviewernetwork.cpp index 3daf2621a5..8681cc89ee 100644 --- a/indra/newview/llviewernetwork.cpp +++ b/indra/newview/llviewernetwork.cpp @@ -62,7 +62,7 @@ const std::string GRID_LOGIN_IDENTIFIER_TYPES = "login_identifier_types"; const std::string GRID_SLURL_BASE = "slurl_base"; const std::string GRID_APP_SLURL_BASE = "app_slurl_base"; -const std::string DEFAULT_LOGIN_PAGE = "http://phoenixviewer.com/app/loginV3/"; +const std::string DEFAULT_LOGIN_PAGE = "https://phoenixviewer.com/app/loginV3/"; const std::string MAIN_GRID_LOGIN_URI = "https://login.agni.lindenlab.com/cgi-bin/login.cgi"; diff --git a/indra/newview/skins/default/xui/en/panel_fs_login.xml b/indra/newview/skins/default/xui/en/panel_fs_login.xml index 0446aa2e42..c2238b34dc 100644 --- a/indra/newview/skins/default/xui/en/panel_fs_login.xml +++ b/indra/newview/skins/default/xui/en/panel_fs_login.xml @@ -12,7 +12,7 @@ width="1024"> - http://phoenixviewer.com/app/loginV3/ + https://phoenixviewer.com/app/loginV3/ http://secondlife.eniac15.lindenlab.com/reg-in-client/ diff --git a/indra/newview/skins/default/xui/en/panel_preferences_backup.xml b/indra/newview/skins/default/xui/en/panel_preferences_backup.xml index f83ca06150..342c256eb0 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_backup.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_backup.xml @@ -306,22 +306,22 @@ Settings groups to be restored (backup will always save all): - + Windlight (Mandatory) windlight - + Windlight Day Cycles windlight/days - + Windlight Skies windlight/skies - + Windlight Waters windlight/water diff --git a/indra/newview/skins/default/xui/pl/panel_outfit_gallery.xml b/indra/newview/skins/default/xui/pl/panel_outfit_gallery.xml index ac6ce3dbfa..3ae12cfa6b 100644 --- a/indra/newview/skins/default/xui/pl/panel_outfit_gallery.xml +++ b/indra/newview/skins/default/xui/pl/panel_outfit_gallery.xml @@ -1,7 +1,7 @@ - Zdjęcie stroju: "[OUTFIT_NAME]" + Zdjecie stroju: "[OUTFIT_NAME]" Nie ma jeszcze żadnych strojów. Spróbuj [secondlife:///app/search/all/ Wyszukiwarki] diff --git a/indra/newview/skins/latency/xui/en/panel_fs_login.xml b/indra/newview/skins/latency/xui/en/panel_fs_login.xml index 4401f7dbea..308958fa7f 100644 --- a/indra/newview/skins/latency/xui/en/panel_fs_login.xml +++ b/indra/newview/skins/latency/xui/en/panel_fs_login.xml @@ -15,7 +15,7 @@ name="real_url" translate="false" > - http://phoenixviewer.com/app/loginV3/ + https://phoenixviewer.com/app/loginV3/ - http://phoenixviewer.com/app/loginV3/ + https://phoenixviewer.com/app/loginV3/ http://secondlife.eniac15.lindenlab.com/reg-in-client/ diff --git a/indra/newview/skins/starlightcui/xui/en/panel_fs_login.xml b/indra/newview/skins/starlightcui/xui/en/panel_fs_login.xml index f784d516c6..56548b44e5 100644 --- a/indra/newview/skins/starlightcui/xui/en/panel_fs_login.xml +++ b/indra/newview/skins/starlightcui/xui/en/panel_fs_login.xml @@ -12,7 +12,7 @@ width="1024"> - http://phoenixviewer.com/app/loginV3/ + https://phoenixviewer.com/app/loginV3/ http://secondlife.eniac15.lindenlab.com/reg-in-client/ diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index d4f3dfdf6a..d6b59355ee 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -1886,18 +1886,14 @@ class LinuxManifest(ViewerManifest): self.path( "v8_context_snapshot.bin" ) with self.prefix(src=os.path.join(pkgdir, 'resources'), dst="bin"): - self.path( "cef.pak" ) - self.path( "cef_extensions.pak" ) - self.path( "cef_100_percent.pak" ) - self.path( "cef_200_percent.pak" ) - self.path( "devtools_resources.pak" ) + self.path( "chrome_100_percent.pak" ) + self.path( "chrome_200_percent.pak" ) + self.path( "resources.pak" ) self.path( "icudtl.dat" ) with self.prefix(src=os.path.join(pkgdir, 'resources'), dst="lib"): - self.path( "cef.pak" ) - self.path( "cef_extensions.pak" ) - self.path( "cef_100_percent.pak" ) - self.path( "cef_200_percent.pak" ) - self.path( "devtools_resources.pak" ) + self.path( "chrome_100_percent.pak" ) + self.path( "chrome_200_percent.pak" ) + self.path( "resources.pak" ) self.path( "icudtl.dat" ) with self.prefix(src=os.path.join(pkgdir, 'resources', 'locales'), dst=os.path.join('bin', 'locales')):