Merge Firestorm LGPL

master
Ansariel 2018-03-25 13:37:27 +02:00
commit 0bbbbdf9ed
11 changed files with 76 additions and 37 deletions

View File

@ -1972,9 +1972,9 @@
<key>archive</key>
<map>
<key>hash</key>
<string>75991f598df209713faf94b4a1cb1a89</string>
<string>814bec3fa5045a18dce2bc4ce78b585d</string>
<key>url</key>
<string>file:///opt/firestorm/kdu-7.A.3-darwin-180711129.tar.bz2</string>
<string>file:///opt/firestorm/kdu-7.A.4-darwin-180792321.tar.bz2</string>
</map>
<key>name</key>
<string>darwin</string>
@ -1984,9 +1984,9 @@
<key>archive</key>
<map>
<key>hash</key>
<string>75991f598df209713faf94b4a1cb1a89</string>
<string>814bec3fa5045a18dce2bc4ce78b585d</string>
<key>url</key>
<string>file:///opt/firestorm/kdu-7.A.3-darwin-180711129.tar.bz2</string>
<string>file:///opt/firestorm/kdu-7.A.4-darwin-180792321.tar.bz2</string>
</map>
<key>name</key>
<string>darwin64</string>

View File

@ -749,7 +749,7 @@ void MediaPluginCEF::keyEvent(dullahan::EKeyEvent key_event, LLSD native_key_dat
// adding new code below in unicodeInput means we don't send ascii chars
// here too or we get double key presses on a mac.
if (((unsigned char)event_chars < 0x20 || (unsigned char)event_chars >= 0x7f ))
if (((unsigned char)event_chars < 0x10 || (unsigned char)event_chars >= 0x7f ))
{
mCEFLib->nativeKeyboardEventOSX(key_event, event_modifiers,
event_keycode, event_chars,

View File

@ -103,11 +103,11 @@ class FSViewerManifest:
self.run_command_shell( "cd %s && objcopy --add-gnu-debuglink=%s %s" % (debugDir, debugName, fileBin) )
if( os.path.exists( "%s/firestorm-symbols-linux.tar.bz2" % self.args['configuration'].lower()) ):
symName = "%s/Phoenix_%s_%s_%s_symbols-linux.tar.bz2" % ( self.args['configuration'].lower(), self.fs_channel_legacy_oneword(),
'-'.join( self.args['version'] ), self.args['viewer_flavor'] )
if( os.path.exists( "%s/firestorm-symbols-linux-%d.tar.bz2" % (self.args['configuration'].lower(), self.address_size)) ):
symName = "%s/Phoenix_%s_%s_%s_symbols-linux-%d.tar.bz2" % ( self.args['configuration'].lower(), self.fs_channel_legacy_oneword(),
'-'.join( self.args['version'] ), self.args['viewer_flavor'], self.address_size )
print( "Saving symbols %s" % symName )
os.rename("%s/firestorm-symbols-linux.tar.bz2" % self.args['configuration'].lower(), symName )
os.rename("%s/firestorm-symbols-linux-%d.tar.bz2" % (self.args['configuration'].lower(), self.address_size), symName )
def fs_linux_tar_excludes(self):
return "--exclude core --exclude .debug/* --exclude .debug"
@ -115,17 +115,19 @@ class FSViewerManifest:
def fs_save_windows_symbols(self, substitution_strings):
#AO: Try to package up symbols
# New Method, for reading cross platform stack traces on a linux/mac host
if (os.path.exists("%s/firestorm-symbols-windows.tar.bz2" % self.args['configuration'].lower())):
if (os.path.exists("%s/firestorm-symbols-windows-%d.tar.bz2" % (self.args['configuration'].lower(),
self.address_size))):
# Rename to add version numbers
sName = "%s/Phoenix_%s_%s_%s_symbols-windows.tar.bz2" % (self.args['configuration'].lower(),
sName = "%s/Phoenix_%s_%s_%s_symbols-windows-%d.tar.bz2" % (self.args['configuration'].lower(),
self.fs_channel_legacy_oneword(),
substitution_strings['version_dashes'],
self.args['viewer_flavor'])
self.args['viewer_flavor'],
self.address_size)
if os.path.exists( sName ):
os.unlink( sName )
os.rename("%s/firestorm-symbols-windows.tar.bz2" % self.args['configuration'].lower(), sName )
os.rename("%s/firestorm-symbols-windows-%d.tar.bz2" % (self.args['configuration'].lower(), self.address_size), sName )
pdbName = "firestorm-bin.pdb"
try:
@ -141,10 +143,11 @@ class FSViewerManifest:
# Store windows symbols we want to keep for debugging in a tar file, this will be later compressed with xz (lzma)
# Using tat+xz gives far superior compression than zip (~half the size of the zip archive).
# Python3 natively supports tar+xz via mode 'w:xz'. But we're stuck with Python2 for now.
symbolTar = tarfile.TarFile("%s/Phoenix_%s_%s_%s_pdbsymbols-windows.tar" % (self.args['configuration'].lower(),
symbolTar = tarfile.TarFile("%s/Phoenix_%s_%s_%s_pdbsymbols-windows-%d.tar" % (self.args['configuration'].lower(),
self.fs_channel_legacy_oneword(),
substitution_strings['version_dashes'],
self.args['viewer_flavor']),
self.args['viewer_flavor'],
self.address_size),
'w')
symbolTar.add( "%s/Firestorm-bin.exe" % self.args['configuration'].lower(), "firestorm-bin.exe" )
symbolTar.add( "%s/%s" % (self.args['configuration'].lower(),pdbName), pdbName )

View File

@ -966,10 +966,8 @@ LLSD FSData::getSystemInfo()
LLSD info = LLAppViewer::instance()->getViewerInfo();
std::string sysinfo1("\n");
sysinfo1 += llformat("%s %s (%d) %s %s (%s) %s\n\n", LLAppViewer::instance()->getSecondLifeTitle().c_str(), LLVersionInfo::getShortVersion().c_str(), LLVersionInfo::getBuild(), info["BUILD_DATE"].asString().c_str(), info["BUILD_TIME"].asString().c_str(), LLVersionInfo::getChannel().c_str(),
//<FS:CR> FIRE-8273: Add Havok/Opensim indicator to getSystemInfo()
info["BUILD_TYPE"].asString().c_str());
// </FS:CR>
sysinfo1 += llformat("%s %s (%d) %s %s (%s %dbit) %s\n\n", LLAppViewer::instance()->getSecondLifeTitle().c_str(), LLVersionInfo::getShortVersion().c_str(), LLVersionInfo::getBuild(), info["BUILD_DATE"].asString().c_str(), info["BUILD_TIME"].asString().c_str(), LLVersionInfo::getChannel().c_str(),
info["ADDRESS_SIZE"].asInteger(), info["BUILD_TYPE"].asString().c_str());
sysinfo1 += llformat("Build with %s version %s\n\n", info["COMPILER"].asString().c_str(), info["COMPILER_VERSION"].asString().c_str());
sysinfo1 += llformat("I am in %s located at %s (%s)\n", info["REGION"].asString().c_str(), info["HOSTNAME"].asString().c_str(), info["HOSTIP"].asString().c_str());
sysinfo1 += llformat("%s\n\n", info["SERVER_VERSION"].asString().c_str());
@ -990,7 +988,7 @@ LLSD FSData::getSystemInfo()
sysinfo2 += llformat("libcurl Version: %s\n", info["LIBCURL_VERSION"].asString().c_str());
sysinfo2 += llformat("J2C Decoder Version: %s\n", info["J2C_VERSION"].asString().c_str());
sysinfo2 += llformat("Audio Driver Version: %s\n", info["AUDIO_DRIVER_VERSION"].asString().c_str());
sysinfo2 += llformat("CEF Version: %s\n", info["LLCEFLIB_VERSION"].asString().c_str());
sysinfo2 += llformat("%s\n", info["LIBCEF_VERSION"].asString().c_str());
sysinfo2 += llformat("LibVLC Version: %s\n", info["LIBVLC_VERSION"].asString().c_str());
sysinfo2 += llformat("Vivox Version: %s\n", info["VOICE_VERSION"].asString().c_str());

View File

@ -1144,10 +1144,11 @@ bool LLAppViewer::init()
if (!initCache())
{
LL_WARNS("InitInfo") << "Failed to init cache" << LL_ENDL;
std::ostringstream msg;
msg << LLTrans::getString("MBUnableToAccessFile");
OSMessageBox(msg.str(),LLStringUtil::null,OSMB_OK);
return 1;
return 0;
}
LL_INFOS("InitInfo") << "Cache initialization is done." << LL_ENDL ;
@ -1657,7 +1658,8 @@ bool LLAppViewer::doFrame()
// Scan keyboard for movement keys. Command keys and typing
// are handled by windows callbacks. Don't do this until we're
// done initializing. JC
if ((gHeadlessClient || gViewerWindow->getWindow()->getVisible())
if (gViewerWindow
&& (gHeadlessClient || gViewerWindow->getWindow()->getVisible())
&& gViewerWindow->getActive()
&& !gViewerWindow->getWindow()->getMinimized()
&& LLStartUp::getStartupState() == STATE_STARTED
@ -1696,7 +1698,7 @@ bool LLAppViewer::doFrame()
// Render scene.
// *TODO: Should we run display() even during gHeadlessClient? DK 2011-02-18
if (!LLApp::isExiting() && !gHeadlessClient)
if (!LLApp::isExiting() && !gHeadlessClient && gViewerWindow)
{
pingMainloopTimeout("Main:Display");
gGLActive = TRUE;

View File

@ -2109,7 +2109,7 @@ void LLIMProcessing::requestOfflineMessagesCoro(std::string url)
if (!status) // success = httpResults["success"].asBoolean();
{
LL_WARNS() << "Error requesting offline messages via capability " << url << ", Status: " << status.toString() << "\nFalling back to legacy method." << LL_ENDL;
LL_WARNS("Messaging") << "Error requesting offline messages via capability " << url << ", Status: " << status.toString() << "\nFalling back to legacy method." << LL_ENDL;
requestOfflineMessagesLegacy();
return;
@ -2119,10 +2119,11 @@ void LLIMProcessing::requestOfflineMessagesCoro(std::string url)
if (!contents.size())
{
LL_WARNS() << "No contents received for offline messages via capability " << url << LL_ENDL;
LL_WARNS("Messaging") << "No contents received for offline messages via capability " << url << LL_ENDL;
return;
}
// Todo: once dirtsim-369 releases, remove one of the map/array options
LLSD messages;
if (contents.isArray())
{
@ -2134,16 +2135,24 @@ void LLIMProcessing::requestOfflineMessagesCoro(std::string url)
}
else
{
LL_WARNS() << "Invalid offline message content received via capability " << url << LL_ENDL;
LL_WARNS("Messaging") << "Invalid offline message content received via capability " << url << LL_ENDL;
return;
}
if (!messages.isArray())
{
LL_WARNS() << "Invalid offline message content received via capability " << url << LL_ENDL;
LL_WARNS("Messaging") << "Invalid offline message content received via capability " << url << LL_ENDL;
return;
}
if (messages.emptyArray())
{
// Nothing to process
return;
}
LL_INFOS("Messaging") << "Processing offline messages." << LL_ENDL;
std::vector<U8> data;
S32 binary_bucket_size = 0;
LLHost sender = gAgent.getRegion()->getHost();
@ -2156,10 +2165,21 @@ void LLIMProcessing::requestOfflineMessagesCoro(std::string url)
LLVector3 position(message_data["local_x"].asReal(), message_data["local_y"].asReal(), message_data["local_z"].asReal());
data = message_data["binary_bucket"].asBinary();
binary_bucket_size = data.size(); // message_data["count"] == data.size() - 1 due to ('\0')
U32 parent_estate_id = message_data.has("parent_estate_id") ? message_data["ParentEstateID"].asInteger() : 1; // 1 - IMMainland
U32 parent_estate_id = message_data.has("parent_estate_id") ? message_data["parent_estate_id"].asInteger() : 1; // 1 - IMMainland
// Todo: once dirtsim-369 releases, remove one of the int/str options
BOOL from_group;
if (message_data["from_group"].isInteger())
{
from_group = message_data["from_group"].asInteger();
}
else
{
from_group = message_data["from_group"].asString() == "Y";
}
LLIMProcessing::processNewMessage(message_data["from_agent_id"].asUUID(),
message_data["from_group"].asInteger(), // BOOL
from_group,
message_data["to_agent_id"].asUUID(),
IM_OFFLINE,
(EInstantMessage)message_data["dialog"].asInteger(),
@ -2178,6 +2198,8 @@ void LLIMProcessing::requestOfflineMessagesCoro(std::string url)
void LLIMProcessing::requestOfflineMessagesLegacy()
{
LL_INFOS("Messaging") << "Requesting offline messages (Legacy)." << LL_ENDL;
LLMessageSystem* msg = gMessageSystem;
msg->newMessageFast(_PREHASH_RetrieveInstantMessages);
msg->nextBlockFast(_PREHASH_AgentData);

View File

@ -1230,7 +1230,7 @@ void LLInventoryPanel::onSelectionChange(const std::deque<LLFolderViewItem*>& it
{
if(prev_folder_item)
{
LLFolderBridge* prev_bridge = (LLFolderBridge*)prev_folder_item->getViewModelItem();
LLFolderBridge* prev_bridge = static_cast<LLFolderBridge*>(prev_folder_item->getViewModelItem());
if(prev_bridge)
{
prev_bridge->clearDisplayName();
@ -1239,7 +1239,7 @@ void LLInventoryPanel::onSelectionChange(const std::deque<LLFolderViewItem*>& it
}
}
LLFolderBridge* bridge = (LLFolderBridge*)folder_item->getViewModelItem();
LLFolderBridge* bridge = static_cast<LLFolderBridge*>(folder_item->getViewModelItem());
if(bridge)
{
bridge->clearDisplayName();
@ -1254,7 +1254,7 @@ void LLInventoryPanel::onSelectionChange(const std::deque<LLFolderViewItem*>& it
{
if(prev_folder_item)
{
LLFolderBridge* prev_bridge = (LLFolderBridge*)prev_folder_item->getViewModelItem();
LLFolderBridge* prev_bridge = static_cast<LLFolderBridge*>(prev_folder_item->getViewModelItem());
if(prev_bridge)
{
prev_bridge->clearDisplayName();

View File

@ -181,10 +181,10 @@ BOOL LLInboxFolderViewFolder::handleDoubleClick( S32 x, S32 y, MASK mask )
return LLFolderViewFolder::handleDoubleClick(x, y, mask);
}
void LLInboxFolderViewFolder::selectItem()
{
deFreshify();
LLFolderViewFolder::selectItem();
void LLInboxFolderViewFolder::selectItem()
{
deFreshify();
LLFolderViewFolder::selectItem();
}
void LLInboxFolderViewFolder::computeFreshness()

View File

@ -557,6 +557,13 @@ void set_flags_and_update_appearance()
// true when all initialization done.
bool idle_startup()
{
if (gViewerWindow == NULL)
{
// We expect window to be initialized
LL_WARNS_ONCE() << "gViewerWindow is not initialized" << LL_ENDL;
return false; // No world yet
}
const F32 PRECACHING_DELAY = gSavedSettings.getF32("PrecachingDelay");
static LLTimer timeout;

View File

@ -299,6 +299,13 @@ void LLViewerRegionImpl::requestBaseCapabilitiesCoro(U64 regionHandle)
continue;
}
if (!result.isMap() || result.has("error"))
{
LL_WARNS("AppInit", "Capabilities") << "Malformed response" << LL_ENDL;
// setup for retry.
continue;
}
LLSD httpResults = result["http_result"];
LLCore::HttpStatus status = LLCoreHttpUtil::HttpCoroutineAdapter::getStatusFromLLSD(httpResults);
if (!status)

View File

@ -13,7 +13,7 @@
reuse_instance="true"
title="Appearance"
min_height="200"
min_width="325"
min_width="351"
width="333">
<panel
top="18"