Commit Graph

36050 Commits (921cfa355cfc5130a55d77690e2ff80e1f370dcb)

Author SHA1 Message Date
callum@lindenlab.com 921cfa355c MAINT-6462 Built-in browser plays video vertically flipped 2016-09-09 11:46:50 -07:00
Callum Prentice 4a95c4b36c Restore version of CEF that has the correct Y flipping enabled - (2526/chrome47 version - soon to be replaced with 2704/chrome 51) 2016-09-07 16:13:09 -07:00
Nat Goodspeed c7cb6636c4 MAINT-6584, MAINT-5011: Change new 'throw' to LLTHROW()
to be consistent with new exception conventions.
2016-09-07 10:57:07 -04:00
Nat Goodspeed dd1a0218b1 Automated merge with ssh://bitbucket.org/lindenlab/viewer-vlc 2016-09-07 10:46:28 -04:00
Nat Goodspeed 2d3c5fb060 Automated merge with ssh://bitbucket.org/lindenlab/viewer-vlc 2016-09-06 20:52:57 -04:00
Nat Goodspeed 67c401047a MAINT-5011: Ensure BlockTimer::mStartTime is unconditionally set.
Previous logic could possibly leave mStartTime uninitialized, producing fatal
warnings with gcc 4.7.
2016-09-06 20:48:16 -04:00
Nat Goodspeed fe49126d45 MAINT-5011: Commit backing out BlockTimer warning suppression. 2016-09-06 20:42:27 -04:00
Nat Goodspeed bfb400ccd7 Backed out changeset c30d8774c404: remove warning suppression
for possibly-uninitialized data member in BlockTimer::BlockTimer.

NickyD suggested a real fix.
2016-09-06 20:41:23 -04:00
Oz Linden dc5a805efd undo changes to llvertexbuffer.cpp from c727ae93646e 2016-09-06 16:53:32 -04:00
Oz Linden 5edd4cecfc merge changes for exception handling 2016-09-06 11:07:39 -04:00
Oz Linden 8c86c594be paren fix 2016-09-06 11:01:02 -04:00
Oz Linden 72f4c72001 downgrade spammy LLCoros logging to DEBUG 2016-09-06 10:21:28 -04:00
Oz Linden a5adabb4f6 add protections against failed memory allocations in VBO and aligned memory 2016-09-06 10:04:19 -04:00
Oz Linden 53f9fbcfb7 add run time error checking to LLImageRaw::scale 2016-09-06 09:11:10 -04:00
Nat Goodspeed 1804da89ee MAINT-5011: Abbreviate __FILE__ path in log_unhandled_exception_().
LLError::abbreviateFile() is specifically to avoid cluttering log output with
the prefix of an absolute file path on the original build system, pointless
for anyone trying to read the log.
2016-09-02 14:00:18 -04:00
Nat Goodspeed 1ed351e28f MAINT-5011: Use LL_VLOGS() rather than raw lllog() macro.
Raw lllog() doesn't work for varying log level, which is why LL_VLOGS()
exists.
2016-09-01 19:46:39 -04:00
Nat Goodspeed 96467f09f2 Automated merge with file:///Users/nat/linden/viewer-comment-lllog 2016-09-01 19:44:38 -04:00
Nat Goodspeed 9be4e7e448 MAINT-5232: Introduce LL_VLOGS() macro: log call with variable level.
In some places we want to log the same information but with different severity
depending on specifics. In other cases we need to test the availability of the
logging subsystem before engaging it. LL_VLOGS() accepts an LLError::ELevel
argument that can differ with each call, while retaining the desirable feature
of deciding only once for each level.
2016-09-01 19:32:31 -04:00
Nat Goodspeed 7203162071 Automated merge with file:///Users/nat/linden/viewer-comment-lllog 2016-09-01 15:22:34 -04:00
Nat Goodspeed 31d3d654f1 MAINT-5011: Advise against lllog() instead of (e.g.) LL_INFOS(). 2016-09-01 15:21:54 -04:00
Nat Goodspeed 1bbc523b04 MAINT-5011: Revert to googlemock built on squeeze 2016-08-31 17:22:04 -04:00
Nat Goodspeed 3d0383fd14 Backed out changeset 8c0e52a212bb - revert to googlemock 297460 2016-08-31 17:21:53 -04:00
Nat Goodspeed ae214e382b MAINT-5011: Revert to llceflib built on squeeze 2016-08-31 17:21:00 -04:00
Nat Goodspeed 6076f69591 Backed out changeset 538a5b77f08e - revert to llceflib 311349 2016-08-31 17:20:45 -04:00
Nat Goodspeed 9a0acaef36 MAINT-5011: Revert to colladadom built on squeeze 2016-08-31 17:19:45 -04:00
Nat Goodspeed b32ae58e4c Backed out changeset c494a6e0b619 - revert to colladadom 297450 2016-08-31 17:19:31 -04:00
Nat Goodspeed d24f7ed33d MAINT-5011: Revert to boost built on squeeze 2016-08-31 17:18:41 -04:00
Nat Goodspeed 3ce48210ff Backed out changeset 4cf5551a22a6 - revert to boost 297445 2016-08-31 17:17:48 -04:00
Nat Goodspeed 8118762c12 MAINT-5011: Add log tag to LOG_UNHANDLED_EXCEPTION() log messages. 2016-08-31 17:16:43 -04:00
Nat Goodspeed 6b24122857 Automated merge with ssh://bitbucket.org/lindenlab/viewer-vlc 2016-08-29 17:06:12 -04:00
Nat Goodspeed 20cf275d21 MAINT-5011: Work around gcc 4.7.2 overly (?) picky fatal warning. 2016-08-29 18:51:32 +00:00
Nat Goodspeed 0c2442eb68 MAINT-5011: Fix abbreviateFile() test to run under .../indra/ path.
This particular test relied on there being exactly one instance of the string
"indra" in the source file's __FILE__ path -- which is usually true, but not
if the developer clones the viewer source repo under a parent directory whose
path itself contains "indra". Fix to handle any number of occurrences.
2016-08-29 18:48:47 +00:00
Nat Goodspeed 4c41b1d8ac MAINT-5011: Add top-level exception handlers in LLAppViewer::frame(). 2016-08-26 15:56:47 -04:00
Nat Goodspeed c2c3086d6c MAINT-5011: Catch LLContinueError in LLStopWhenHandled::operator().
This means that an exception derived from LLContinueError thrown in an
LLEventPump listener won't prevent other listeners on the same LLEventPump
from receiving that event.
2016-08-26 15:50:37 -04:00
Nat Goodspeed ceb9d3f7f1 MAINT-5011: Fix misleading indentation in WINMAIN(). 2016-08-26 15:46:26 -04:00
Nat Goodspeed abfe05c1b3 MAINT-5011: Add comments to LLCoros::toplevel() exception handlers. 2016-08-26 14:20:11 -04:00
Nat Goodspeed cc29b44dcf MAINT-5011: Fix type error surfaced by gcc 4.7.
LLView::childFromPoint(), which is declared to return LLView*, contained a
code path that could 'return false'. This is blatantly wrong. Why has it
compiled on our other compilers so far?
2016-08-25 14:37:46 -04:00
Nat Goodspeed 17382b22e0 MAINT-5011: Remove unreferenced param name to avoid fatal warning 2016-08-25 14:04:36 -04:00
Nat Goodspeed 1d2360ef7c Update to googlemock build 319024 2016-08-25 13:53:51 -04:00
Nat Goodspeed 12379fc8d3 Update to llceflib build 319030 2016-08-25 13:51:45 -04:00
Nat Goodspeed 91501eaa93 Update to colladadom build 319021 2016-08-25 13:44:14 -04:00
Nat Goodspeed 2f85899bfd Update to boost build 318979 2016-08-25 12:02:02 -04:00
AndreyL ProductEngine 3d9c39c77c MAINT-6663 [Win LibVLC] test video buttons still appearing in search 2016-08-20 12:53:03 +03:00
Nat Goodspeed 4d10172d8b MAINT-5011: Catch unhandled exceptions in LLCoros coroutines.
Wrap coroutine call in try/catch in top-level coroutine wrapper function
LLCoros::toplevel(). Distinguish exception classes derived from
LLContinueError (log and continue) from all others (crash with LL_ERRS).

Enhance CRASH_ON_UNHANDLED_EXCEPTIONS() and LOG_UNHANDLED_EXCEPTIONS() macros
to accept a context string to supplement the log message. This lets us replace
many places that called boost::current_exception_diagnostic_information() with
LOG_UNHANDLED_EXCEPTIONS() instead, since the explicit calls were mostly to
log supplemental information.

Provide supplemental information (coroutine name, function parameters) for
some of the previous LOG_UNHANDLED_EXCEPTIONS() calls. This information
duplicates LL_DEBUGS() information at the top of these functions, but in a
typical log file we wouldn't see the LL_DEBUGS() message.

Eliminate a few catch (std::exception e) clauses: the information we get from
boost::current_exception_diagnostic_information() in a catch (...) clause
makes it unnecessary to distinguish.

In a few cases, add a final 'throw;' to a catch (...) clause: having logged
the local context info, propagate the exception to be caught by higher-level
try/catch.

In a couple places, couldn't resist reconciling indentation within a
particular function: tabs where the rest of the function uses tabs, spaces
where the rest of the function uses spaces.

In LLLogin::Impl::loginCoro(), eliminate some confusing comments about an
array of rewritten URIs that date back to a long-deleted implementation.
2016-08-18 17:33:44 -04:00
Nat Goodspeed c7bf8af637 MAINT-5011: Use BOOST_CURRENT_FUNCTION instead of __PRETTY_FUNCTION__
since Visual Studio doesn't know __PRETTY_FUNCTION__, and Boost already has a
portable macro to Do The Right Thing.
2016-08-18 11:06:51 -04:00
Nat Goodspeed 0eac1f41f6 MAINT-5011: Catch kdu_exception (aka int) in case it leaks out.
KDU internally throws kdu_exception, which is a typedef for int. It's possible
that such an exception might leak out.

Our usual strategy for unknown exceptions is to catch (...) and let
boost::current_exception_diagnostic_information() handle them. However, for
int (or a class not derived from std::exception), that function will only
shrug and report no information available.

Besides, we want to format kdu_exception specially anyway. First, the KDU
#defines are in hex, so we should report the value in hex. But on inspection,
certain of those hex values are actually multibyte ASCII literals in disguise
-- so also report the byte string value.
2016-08-17 16:42:10 -04:00
Nat Goodspeed 83eb960063 MAINT-5011: Derive image-load exceptions from LLContinueError.
Failure to load an image shouldn't crash the whole viewer.
2016-08-17 15:47:08 -04:00
Nat Goodspeed 993f54f6e9 MAINT-5011: Try to enrich catch (...) logging throughout viewer.
Turns out we have a surprising number of catch (...) clauses in the viewer
code base. If all we currently do is

    LL_ERRS() << "unknown exception" << LL_ENDL;

then call CRASH_ON_UNHANDLED_EXCEPTION() instead. If what we do is

    LL_WARNS() << "unknown exception" << LL_ENDL;

then call LOG_UNHANDLED_EXCEPTION() instead.

Since many places need LOG_UNHANDLED_EXCEPTION() and nobody catches
LLContinueError yet, eliminate LLContinueError& parameter from
LOG_UNHANDLED_EXCEPTION(). This permits us to use the same log message as
CRASH_ON_UNHANDLED_EXCEPTION(), just with a different severity level.

Where a catch (...) clause actually provides contextual information, or makes
an error string, add boost::current_exception_diagnostic_information() to try
to figure out actual exception class and message.
2016-08-17 15:40:03 -04:00
Nat Goodspeed db4f13e7bc MAINT-5011: Clean up indentation from merge of viewer-release. 2016-08-17 11:48:33 -04:00
Nat Goodspeed e72bdc9bc5 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2016-08-17 11:41:12 -04:00