Commit Graph

55798 Commits (ee34ea1f4b9e9c68b671ff3274ec8a640f72da89)

Author SHA1 Message Date
Ansariel ee34ea1f4b Merge viewer-bugsplat 2018-10-27 00:50:58 +02:00
Nat Goodspeed 9b5b44314a DRTVWR-447: For some reason the Windows viewer exe wasn't signed.
viewer_manifest.py was signing updater.exe within the package, and then
signing the installer executable itself, but not the actual viewer executable.
Add that.
2018-10-26 14:55:13 -04:00
Nat Goodspeed 32e30386d8 DRTVWR-447: Try to defeat scary Mac Gatekeeper popups
by replacing the viewer's baked-in BugsplatMac.framework @rpath path with one
based on @executable_path.
2018-10-23 10:52:06 -04:00
Nat Goodspeed 279073dbb3 DRTVWR-447: Introduce LLManifest.process_either().
process_directory() and process_file() are reached both from the top-level
caller (try_path(), a local function within LLManifest.path()) and recursively
from process_directory(). Both places tested os.path.isdir(source), and if so
called process_directory(), else process_file(). Both places were wrong, as it
turns out.

os.path.isdir(symlink_to_directory) returns True. That meant that despite
explicit logic in ccopymumble() to recreate symlinks in the destination area,
we were consistently recopying the contents of symlinked directories.

The downside to this -- in addition to inflating the size of the installer! --
is that macOS is very particular about the structure of a Framework bundle. It
*must* include a Versions/Current symlink identifying which of the other
Versions subdirectories is, in fact, current. If Current is itself a
subdirectory, codesign can't figure out how to sign the framework, and fails.

The logic for deciding between process_directory() and process_file() must
explicitly check for os.path.islink(source). Rather than replicating that
change in both places, introduce process_either() which decides how to forward
the call, and call it both from try_path() and from process_directory().
2018-10-22 19:59:07 -04:00
Nat Goodspeed f55d3071e1 DRTVWR-447: Restore copying BugsplatMac.framework into Mac package. 2018-10-22 14:21:35 -04:00
Nat Goodspeed c532e3075c DRTVWR-447: Re-inject BugsplatServerURL into Mac's Info.plist. 2018-10-18 15:31:44 -04:00
Nat Goodspeed b4bc7f7c0c DRTVWR-447: Update bugsplat to codeticket version 520791. 2018-10-18 13:55:55 -04:00
Nat Goodspeed fa5350db7b DRTVWR-447: Update to bugsplat build 520784 2018-10-18 11:44:56 -04:00
Nat Goodspeed d86b311b2c DRTVWR-447: Restore MACOSX_EXECUTABLE_NAME, used for Info.plist. 2018-10-17 22:34:58 -04:00
Nat Goodspeed a3ca2c9ac8 DRTVWR-447: Restore diagnostic output to Mac app bundle packaging. 2018-10-17 16:47:05 -04:00
Nat Goodspeed 082ef0c74d DRTVWR-447: Merge Oz's logging changes 2018-10-17 16:45:01 -04:00
Nat Goodspeed cd9d051b90 DRTVWR-447: Move test<5> and writeMsgNeedsEscaping() into sequence. 2018-10-17 16:42:59 -04:00
Nat Goodspeed 2c5d7199f6 DRTVWR-447: Restore channel-name sensitivity of Mac BugSplat viewer. 2018-10-17 13:53:37 -04:00
Nat Goodspeed 3c4d63c6a1 DRTVWR-447: Update to viewer-manager build 520750 2018-10-17 13:04:32 -04:00
Nat Goodspeed 01c6fe141e DRTVWR-447: Update to viewer-manager build 520737 2018-10-17 11:35:01 -04:00
Nat Goodspeed d81863d23d DRTVWR-447: Finish merging Poseidon into BugSplat 2018-10-17 10:56:43 -04:00
Nat Goodspeed 036c52fcdf Automated merge with ssh://bitbucket.org/nat_linden/viewer-poseidon 2018-10-17 10:31:59 -04:00
Nat Goodspeed bffe112cf5 Last rev before Poseidon merge 2018-10-17 10:30:24 -04:00
Nat Goodspeed 9cdcef4d50 DRTVWR-447: Use new attachmentsForBugsplatStartupManager SDK method
to attach user settings file and static debug info file to Mac crash reports,
as well as SecondLife.log, just like Windows crash reports.
2018-10-16 16:53:06 -04:00
Oz Linden 00a839d665 renumber the new test to replace the one that was removed 2018-10-16 16:18:31 -04:00
Nat Goodspeed 72c0845a24 DRTVWR-447: Update to bugsplat build 520674 2018-10-16 11:29:32 -04:00
Nat Goodspeed 3abc0095c9 DRTVWR-474: Update to viewer-manager build 520576 2018-10-12 14:08:59 -04:00
Nat Goodspeed f960db28b7 DRTVWR-474: Update to viewer-manager build 520566 2018-10-11 20:52:01 -04:00
Oz Linden d87cc1859f Modify logging so that the in-viewer console and stderr do not escape line breaks
Improve the implementation so that escaping is computed only once
2018-10-11 14:17:52 -04:00
Nat Goodspeed a11230f87a DRTVWR-474: Update to viewer-manager build 520325 2018-10-05 15:29:08 -04:00
Nat Goodspeed a3e569c90d DRTVWR-474: Add OptionaUpdateReady, PromptOptionalUpdate notifications. 2018-10-05 14:38:25 -04:00
Nat Goodspeed 73e70ff0bb DRTVWR-474: Make "LLNotifications" "requestAdd" propagate "reqid"
from request to response to help with request/response matching protocol.
2018-10-04 17:18:08 -04:00
Nat Goodspeed 05068186c3 DRTVWR-474: Make login coroutine sync with updater process on failure.
Specifically, introduce an LLEventMailDrop("LoginSync"). When the updater
detects that an update is required, it will post to that rendezvous point.

When login.cgi responds with login failure, make the login coroutine wait (a
few seconds) for that ping from the updater.

If we receive that ping and if it contains a "reply" key, make the fail.login
listener respond to the updater with an indication of whether to proceed with
update.

If both login.cgi and the updater concur that an update is required, produce a
new confirmation message for the user and then (once user responds) tell the
updater to proceed. Otherwise, produce the usual login-failure message and
tell the updater never mind.

Introduce LLCoro::OverrideConsuming to provide temporary save/restore of the
set_consuming() / get_consuming() flag. It's a good idea to set the consuming
flag when retrieving data from an LLEventMailDrop.
2018-10-04 16:35:38 -04:00
Ansariel 051811ed62 Fix copy&paste error in configure_firestorm.sh script 2018-10-04 02:13:23 +02:00
Ansariel db8e20101f Create convenience option for singlegrid in configure_firestorm.sh script 2018-10-04 02:04:42 +02:00
Ansariel a27321fa51 Merge Firestorm LGPL 2018-10-04 01:38:36 +02:00
Ansariel 89d91ed0f4 Merge 2018-10-04 00:32:21 +02:00
Nat Goodspeed b1955d4247 DRTVWR-474: Do NOT autokill updater process on viewer termination.
The updater is required to survive beyond termination of the viewer that
launched it so it can launch the next installer, or a replacement viewer.
Having the old viewer forcibly terminate it on shutdown would be counter-
productive.

Introduce a third LLLeap::create() overload taking LLProcess::Params, which
gives access to autokill, cwd and other options previously unsupported by
LLLeap. Reimplement the existing create() overloads in terms of this new one,
since LLLeapImpl::LLLeapImpl() is already based on LLProcess::Params anyway.

Use LLProcess::Params in LLAppViewer::init() to specify the updater process,
setting autokill=false.

Refactoring LLLeapImpl() apparently involved engaging an LLInitParam::Block
feature never before used: had to drag operator() into Multiple from its base
class TypedParam (as has been done in other TypedParam subclasses).
2018-10-03 14:00:05 -04:00
Beq ae6015ac3e Unreachable code introduced by addition of exceptions to out of memory handling 2018-10-03 10:13:00 +01:00
Ansariel 5fdcea0963 Exclude local grid file variable declaration if SINGLEGRID is defined 2018-09-30 21:32:55 +02:00
Ansariel f4c2ed2103 Add build option to allow logging into a single grid only:
* Specify -DSINGLEGRID:BOOL=TRUE and -DSINGLEGRID_URI:STRING=<grid_uri> during configuration
* Only works for OpenSim build (Specify -DOPENSIM:BOOL=TRUE)

Changes compared to default version:
* Grid at <grid_uri> is set as main grid
* Grid selector on login screen is disabled
* Grid list download is disabled
* Grid list is ignored - grid data is always fetched on startup
* OpenSim panel from preferences is removed
* Grid selection via command line parameter is ignored
2018-09-30 21:29:26 +02:00
Ansariel cae30e03df Fix apparently missing include in fsgridhandler.h 2018-09-30 03:06:00 +02:00
Nat Goodspeed 6e1b2e137e DRTVWR-474: Make SkipBenchmark a Persistent setting 2018-09-28 17:16:49 -04:00
Nat Goodspeed b6e58b3b3a DRTVWR-474: Update to viewer-manager build 520110 2018-09-28 17:16:14 -04:00
Nat Goodspeed 182a091ad9 DRTVWR-474: Pass the leap updater the parameters it requires. 2018-09-27 17:41:26 -04:00
Nat Goodspeed 371a412a28 DRTVWR-474: Update to viewer-manager build 520085 2018-09-27 17:40:10 -04:00
Nat Goodspeed ec6487f3a7 DRTVWR-474: Make LLEventMailDrop pass all saved events to listener.
Previously, LLEventMailDrop would send only the first queued event to a
newly-connected listener. If you wanted to flush all queued events, you'd have
to "pump" the queue by repeatedly disconnecting and reconnecting -- with no
good way to know when you'd caught up.

The new behavior makes LLEventMailDrop resemble a multi-valued future: a
rendezvous between producer and consumer that, once connected, pushes values
rather than requiring them to be pulled (as with a simple queue) -- regardless
of the relative order in which post() and listen() are called.
2018-09-27 14:57:03 -04:00
PanteraPolnocy 2dfb4ec1e2 Updated Polish translation 2018-09-27 20:01:03 +02:00
Ansariel c0741009d8 Bring back FSUseReadOfflineMsgsCap debug setting to disable offline message request cap and enable disable it by default 2018-09-27 19:38:06 +02:00
Beq f4c79aff75 Merge 2018-09-27 14:49:18 +01:00
Liny 042dedf85f Hide the log sanitize function so gcc doesnt complain. 2018-09-27 06:36:59 -07:00
Beq 8be317a99e FIRE-23053 Physics shape display fixes 2018-09-27 14:22:53 +01:00
Ansariel fcbbd2b6ca Set version in VIEWER_GENERATION default substitute automatically based on major version number 2018-09-27 14:12:12 +02:00
Ansariel 95aa7f7583 Fix log output - we don't need an escaped output 2018-09-27 11:47:42 +02:00
Nat Goodspeed e1826d508c DRTVWR-474: Update to viewer-manager build 520047 2018-09-26 20:45:03 -04:00