summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-08-31MAINT-5011: Add log tag to LOG_UNHANDLED_EXCEPTION() log messages.Nat Goodspeed
2016-08-31MAINT-6386 Update first-time Viewer Login screen with new LISI screenshotsAndreyL ProductEngine
2016-08-29Automated merge with ssh://bitbucket.org/lindenlab/viewer-vlcNat Goodspeed
2016-08-29MAINT-5011: Work around gcc 4.7.2 overly (?) picky fatal warning.Nat Goodspeed
2016-08-29MAINT-5011: Fix abbreviateFile() test to run under .../indra/ path.Nat Goodspeed
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-26MAINT-5011: Add top-level exception handlers in LLAppViewer::frame().Nat Goodspeed
2016-08-26MAINT-5011: Catch LLContinueError in LLStopWhenHandled::operator().Nat Goodspeed
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-26MAINT-5011: Fix misleading indentation in WINMAIN().Nat Goodspeed
2016-08-26MAINT-5011: Add comments to LLCoros::toplevel() exception handlers.Nat Goodspeed
2016-08-25MAINT-5011: Fix type error surfaced by gcc 4.7.Nat Goodspeed
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-25MAINT-5011: Remove unreferenced param name to avoid fatal warningNat Goodspeed
2016-08-25Update to googlemock build 319024Nat Goodspeed
2016-08-25Update to llceflib build 319030Nat Goodspeed
2016-08-25Update to colladadom build 319021Nat Goodspeed
2016-08-25Update to boost build 318979Nat Goodspeed
2016-08-23MAINT-6511 Crash in LLFloaterView::restoreAll - exception handlingAndreyL ProductEngine
2016-08-29Merged in andreyl_productengine/viewer-427AndreyL ProductEngine
2016-08-25MAINT-6476 VOB - User can add any size image to an Outfit Gallery outfit folderspavelkproductengine
2016-08-23MAINT-6616 new crash in VOB viewer in snapshot previewMnikolenko Productengine
2016-08-20MAINT-6663 [Win LibVLC] test video buttons still appearing in searchAndreyL ProductEngine
2016-08-18further tone down http error response logging; not all http error responses ↵Oz Linden
are unexpected or will cause problems
2016-08-18MAINT-5011: Catch unhandled exceptions in LLCoros coroutines.Nat Goodspeed
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-18MAINT-5011: Use BOOST_CURRENT_FUNCTION instead of __PRETTY_FUNCTION__Nat Goodspeed
since Visual Studio doesn't know __PRETTY_FUNCTION__, and Boost already has a portable macro to Do The Right Thing.
2016-08-17MAINT-5011: Catch kdu_exception (aka int) in case it leaks out.Nat Goodspeed
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-17MAINT-5011: Derive image-load exceptions from LLContinueError.Nat Goodspeed
Failure to load an image shouldn't crash the whole viewer.
2016-08-17MAINT-5011: Try to enrich catch (...) logging throughout viewer.Nat Goodspeed
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-17MAINT-5011: Clean up indentation from merge of viewer-release.Nat Goodspeed
2016-08-17Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2016-08-17MAINT-5011: Use LLTHROW() instead of plain BOOST_THROW_EXCEPTION().Nat Goodspeed
A level of preprocessor indirection lets us later change the implementation if desired.
2016-08-17MAINT-5011: Add llexception_test.cpp with tests (and conclusions).Nat Goodspeed
llexception_test.cpp is an unusual test source in that it need not be verified on every build, so its invocation in indra/llcommon/CMakeLists.txt is commented out with that remark. Its purpose is to help a developer decide what base class(es) to use for LLException, how to throw and how to catch. Our current conclusions are written up as comments in llexception_test.cpp. Added CRASH_ON_UNHANDLED_EXCEPTION() and LOG_UNHANDLED_EXCEPTION() macros to llexception.h -- macros to log __FILE__, __LINE__ and __PRETTY_FUNCTION__ of the catch site. These invoke functions in llexception.cpp so we don't need to #include llerror.h for every possible catch site.
2016-08-16Merge VOB with 4.0.8-releasepavelkproductengine
2016-08-12Add voice connection stats logging, make logging less verbose, some other ↵Oz Linden
code cleanup
2016-08-11merge changes for 4.0.7-releaseOz Linden
2016-08-11increment viewer version to 4.0.8Oz Linden
2016-08-11Added tag 4.0.7-release for changeset 33981d8130f0Oz Linden
2016-08-11add convenience function ll_stream_notation_sd for compact representation of ↵Oz Linden
llsd
2016-08-10MAINT-6616 new crash in VOB viewer in snapshot previewMnikolenko Productengine
2016-08-09MAINT-6618 More checksAndreyL ProductEngine
2016-08-09Reverted change to lllayoutstack.cpp which could possibly cause memory leakpavelkproductengine
2016-08-09MAINT-6618 Fixed the crash in LLImageRaw::scale() + some additional checksAndreyL ProductEngine
2016-08-06MAINT-6584: Don't crash on inconsistent dims in a JPEG-2000 image.Nat Goodspeed
Previous code would crump with LL_ERRS. But a bad image file should fail only the image load -- not crash the viewer. While at it, validate all components present, not just 0, 1, 2. While at it, make the failure message report which component and what the mismatched dimensions are, not just "Components don't have matching dimensions!"
2016-08-05MAINT-6584: Introduce KDUError exception from other viewer project.Nat Goodspeed
Specifically, manually apply changesets b4db8a8 and b98371d from nat_linden/viewer-mac-mainloop. We need to throw from a new place, but if we threw const char* (current convention), the new throw wouldn't be patched when we merge to new exception convention.
2016-08-05MAINT-6584: Add explanatory comments to LLImageJ2CKDU implementation.Nat Goodspeed
These comments are inherently fragile, in that they enumerate all present callers of certain methods. Adding, removing or relocating calls would invalidate these comments. However, the LLImageJ2CKDU implementation is probably pretty stable by now.
2016-08-05MAINT-6584: Clarify LLKDUMessageError::flush() throwing exception.Nat Goodspeed
2016-08-05Merged in oz_linden/viewer-buildAndreyL ProductEngine
2016-08-05Buildfix: brought back LINDEN_J2C_COMMENT_PREFIXAndreyL ProductEngine
2016-08-05Merged andreyl_productengine/viewer-427 into defaultAndrey Lihatskiy
2016-08-04MAINT-6584: Comment out completely unused LLImageJ2CKDU code.Nat Goodspeed
The only call to the findDiscardLevelsBoundaries() method was commented out inside initDecode(), with a comment: // Merov : Test!! DO NOT COMMIT!! This was the only caller of copy_tile(), which was the only caller of copy_block(). Commented out all three of these (biggish!) functions, since I have no idea what any of them were supposed to do or when it might be useful to call them. In other words, I can't yet rule out the possibility that I might have to uncomment them.
2016-08-04Merged in lindenlab/viewer-lynxAndreyL ProductEngine
2016-08-04MAINT-6604 FIXED [VOB] Snapshot preview is corruptedMnikolenko Productengine