Commit Graph

18 Commits (680194deaf7a35caaa629abc16e886d71baff636)

Author SHA1 Message Date
Oz Linden 3bb708d706 merge up to latest viewer-development for merge to 3.5.2 2013-04-19 14:42:56 -04:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Oz Linden cf1019859d add use of v1.1 update request protocol, with fallback to v1.0 2013-02-21 16:47:52 -05:00
Nat Goodspeed 47d9475707 Convert LLProcess consumers from LLSD to LLProcess::Params block.
Using a Params block gives compile-time checking against attribute typos. One
might inadvertently set myLLSD["autofill"] = false and only discover it when
things behave strangely at runtime; but trying to set myParams.autofill will
produce a compile error.
However, it's excellent that the same LLProcess::create() method can accept
either LLProcess::Params or a properly-constructed LLSD block.
2012-01-21 11:45:15 -05:00
Nat Goodspeed f0dbb87833 Per Richard, replace LLProcessLauncher with LLProcess.
LLProcessLauncher had the somewhat fuzzy mandate of (1) accumulating
parameters with which to launch a child process and (2) sometimes tracking the
lifespan of the ensuing child process. But a valid LLProcessLauncher object
might or might not have ever been associated with an actual child process.
LLProcess specifically tracks a child process. In effect, it's a fairly thin
wrapper around a process HANDLE (on Windows) or pid_t (elsewhere), with
lifespan management thrown in. A static LLProcess::create() method launches a
new child; create() accepts an LLSD bundle with child parameters. So building
up a parameter bundle is deferred to LLSD rather than conflated with the
process management object.
Reconcile all known LLProcessLauncher consumers in the viewer code base,
notably the class unit tests.
2012-01-20 18:10:40 -05:00
Nat Goodspeed c0731c1c05 Add log message if LLProcessLauncher child fails to execv().
On a Posix platform (vfork()/execv() implementation), if for any reason the
execv() failed (e.g. executable not on PATH), the viewer would never know, nor
the user: the vfork() child produced no output, and terminated with rc 0! Add
logging, make child terminate with nonzero rc.
Remove pointless addArgument(const char*) overload: this does nothing for you
that the compiler won't do implicitly.
In llupdateinstaller.cpp, remove pointless c_str() call in addArgument() arg:
we were starting with a std::string, then extracting its c_str(), only to
construct a whole new std::string from it!
2012-01-17 18:55:42 -05:00
Loren Shih 5f99331f4a Automated merge up from viewer-development 2010-12-29 13:23:02 -05:00
Andrew A. de Laix 2c68cb2c69 fix windows build? 2010-12-20 10:38:36 -08:00
Andrew A. de Laix 67a543aa6c ich bin stupid; this should actually fix the windows build. 2010-12-17 12:07:09 -08:00
Andrew A. de Laix 049815bd52 and don't break other builds. 2010-12-17 10:55:09 -08:00
Andrew A. de Laix b707048fdf fix windows build (suppress warning from lexical_cast) 2010-12-17 10:53:02 -08:00
Andrew A. de Laix 1774489ef8 Vary install failed message depending on whether it was required or not. 2010-12-16 09:34:19 -08:00
Loren Shih bfd8efb057 Automated merge up from viewer-development 2010-12-01 10:55:24 -05:00
Andrew A. de Laix ec7d36f6cf added mechanism for install scripts to indicate a failed install and for update service to note the failure; modified mac installer to write marker on error. 2010-11-15 09:38:20 -08:00
Andrew A. de Laix 6e15957d90 run install script on successful download 2010-11-11 09:40:30 -08:00
Andrew A. de Laix 41ec2e01dd copy script to temp if needed before installing. 2010-11-10 14:30:11 -08:00
brad kittenbrink 3493da8c41 Fix for linux eol failures. 2010-11-09 17:42:05 -08:00
Andrew A. de Laix fdf616c59d beginnings of the update installer (with simple install script for darwin). 2010-11-09 11:23:32 -08:00