Commit Graph

39818 Commits (aeebb452e698d8aaa7a01b49c20b2f0b7cfc1a3b)

Author SHA1 Message Date
Nat Goodspeed aeebb452e6 DRTVWR-476: Disable test_httprequest.hpp on Mac Release builds.
For reasons not yet diagnosed, specifically in Mac Release builds, the tests
in test_httprequest.hpp consistently crash with a backtrace suggesting that
the worker thread is calling LLCore::HttpLibcurl::completeRequest() after the
foreground thread calls HttpRequest::destroyService().

Weirdly, even executing a tut::skip() call in every test<n>() function up to
the point of the crash does not eliminate the crash.
2019-06-28 16:12:46 -04:00
Nat Goodspeed ef1f82bab7 DRTVWR-476: Remove special llcorehttp test memory manager.
NickyD discovered that the substitute default allocator used for llcorehttp
tests was returning badly-aligned storage, which caused access violations on
alignment-sensitive data such as std::atomic. Thanks Nicky!!

Moreover, the llcorehttp test assertions regarding memory usage, well-
intentioned though they are, have been causing us trouble for years. Many have
already been disabled.

The problem is that use of test_allocator.h affected *everything* defined with
that header file's declarations visible. That inevitably included specific
functions in other subsystems. Those functions then (unintentionally) consumed
the special allocator, throwing off the memory tracking and making certain
memory-related assertions consistently fail.

This is a particular, observable bad effect of One Definition Rule violations.
Within a given program, C++ allows multiple definitions for the same entity,
but requires that all such definitions be the same. Partial visibility of the
global operator new() and operator delete() overrides meant that some
definitions of certain entities used the default global allocator, some used
llcorehttp's. There may have been other, more subtle bad effects of these ODR
violations.

If one wanted to reimplement verification of the memory consumption of
llcorehttp classes:

* Each llcorehttp class (for which memory tracking was desired) should declare
  class-specific operator new() and operator delete() methods. Naturally,
  these would all consume a central llcorehttp-specific allocator, but that
  allocator should *not* be named global operator new().
* Presumably that would require runtime indirection to allow using the default
  allocator in production while substituting the special allocator for tests.
* Recording and verifying the memory consumption in each test should be
  performed in the test-object constructor and destructor, rather than being
  sprinkled throughout the test<n>() methods.
* With that mechanism in place, the test object should provide methods to
  adjust (or entirely disable) memory verification for a particular test.
* The test object should also provide a "yes, we're still consuming llcorehttp
  memory" method to be used for spot checks in the middle of tests -- instead
  of sprinkling in explicit comparisons as before.
* In fact, the llcorehttp test object in each test_*.hpp file should be
  derived from a central llcorehttp test-object base class providing those
  methods.
2019-06-27 10:57:34 -04:00
Nat Goodspeed 43780f8c3d DRTVWR-476: Merge Xcode 10.2 switch for BugsplatMac 2019-06-26 15:10:48 -04:00
Nat Goodspeed 8053bceaa0 DRTVWR-476: Pass Obj-C++ switch needed for BugsplatMac on Xcode 10.2. 2019-06-26 15:08:50 -04:00
Nat Goodspeed a94e289499 DRTVWR-476: On Mac, copy libhunspell-1.3.0.dylib for test programs. 2019-06-26 15:04:16 -04:00
Nat Goodspeed 1a12703924 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2019-06-26 14:57:28 -04:00
Nat Goodspeed 7a417c9405 DRTVWR-476: Add LLCOREHTTP_TESTS CMake var, OFF by default on Mac.
Hopefully this is temporary until we solve the problem of crashy llcorehttp
test executable on Mac.
2019-06-26 11:23:33 -04:00
Nat Goodspeed 6f95100f7e increment viewer version to 6.2.4 2019-06-20 14:18:42 -04:00
Nat Goodspeed 2baff8e016 Added tag 6.2.3-release for changeset ab2ec5c5423b 2019-06-20 14:18:41 -04:00
Anchor 2c2bdcf348 [DRTVWR-476] - fix compiler errors 32 bit windows build 2019-06-10 15:56:44 -07:00
Ankur Ahlawat cd1f1c540a Merged in nat_linden/viewer-vs2017 (pull request #4)
SL-1968: Extend lllogin_test login-failed cases for new sync timing.
2019-06-07 17:02:37 +00:00
Nat Goodspeed 9cde8fb1b8 SL-1968: Extend lllogin_test login-failed cases for new sync timing.
On login failure, LLLogin now tries to sync up with SLVersionChecker. It waits
for up to 10 seconds before shrugging and giving up. Since that coroutine can
now block for that long, make the llogin_test failure cases wait at least that
long too.
2019-06-06 21:05:02 -04:00
Nicky 3b9cf12eb4 Ignore build-vc150-* directories as those are the VS2017 build dirs (n.b. due to the rather strange version numbering of VS this really should be build-vc141-*; as VS2017 is vc141 internally). 2019-06-07 00:17:01 +02:00
Nicky 1625a896d5 Do not use string/chrono literals, sadly that won't work with GCC (4.9) 2019-06-06 20:59:54 +02:00
Nicky 0f2d02e12d Use reinterpret_cast to pass pthread_self (pthread_t) into CRYPTO_THREADID_set_pointer (void*). 2019-06-06 20:59:01 +02:00
Anchor c6aa850cca [DRTVWR-476] - fix compiler error 2019-06-06 02:49:19 -07:00
Anchor 48caa3c3da [DRTVWR-476] - update cef, fix merge 2019-06-06 01:51:38 -07:00
Nat Goodspeed 43def24781 SL-1968: Merge viewer-vs2017 up to current viewer-release.
Merge glitch inadvertently duplicated a method declaration. Remove.
2019-06-05 14:52:45 -04:00
Nat Goodspeed ebcfbf277e Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2019-06-05 14:15:15 -04:00
Anchor ef466611a0 [DRTVWR-476] - temporary skip failing llinstancetracker tests to get TC build working 2019-06-05 01:31:30 -07:00
AndreyL ProductEngine 9212c1f33e SL-11341 Skip storing the previous gamma value on Intel GPUs + more logging 2019-06-04 00:03:03 +03:00
AndreyL ProductEngine b996c95f32 SL-11079 Updated contributions.txt 2019-05-28 23:52:23 +03:00
Anchor df1d733974 [DRTVWR-476] - suppress dbghelp.h compiler warnings 2019-05-23 21:56:15 -07:00
Nat Goodspeed 2672194b1d increment viewer version to 6.2.3 2019-05-21 08:57:32 -04:00
Nat Goodspeed 02ab47b256 Added tag 6.2.2-release for changeset ec09daf1899c 2019-05-21 08:57:32 -04:00
Anchor be97efc06c [DRTVWR-476] - revert 2019-05-21 02:09:50 -07:00
Anchor f791526695 [DRTVWR-476] - disable llcorehttp test on mac 2019-05-21 01:50:27 -07:00
Anchor f47a2e88ed [DRTVWR-476] - temporarily disable llcorehttptest on mac 2019-05-21 01:28:20 -07:00
Anchor 20051e9906 [DRTVWR-476] - conflicts with a mac macro 2019-05-20 05:13:02 -07:00
Anchor 37cd0acd59 [DRTVWR-476] - update googlemock,boost,colladom 2019-05-20 04:19:31 -07:00
Anchor c792ce6023 [DRTVWR-476] - update breakpad 2019-05-20 00:30:46 -07:00
Anchor a138374cb3 Merge 2019-05-18 21:43:35 -07:00
Steven Harrison (steven) 771e6344fe Pull from viewer-bear and merge 2019-05-17 16:49:58 +00:00
Steven Harrison (steven) 59c93cb861 SL-11213 No longer embedding the channel in the viewer release note urls. Update base URLs to match new viewer release note URL 2019-05-17 02:23:49 +00:00
Anchor a334194835 [DRTVWR-476] - disable dbghelp.h warnings 2019-05-15 03:57:10 -06:00
AndreyL ProductEngine e31f4a352d Mac buildfix 2019-05-14 01:14:54 +03:00
Anchor bcb251b911 Backed out changeset: de49423bb5ae 2019-05-09 10:42:11 -06:00
Anchor b22287f7f8 Backed out changeset: 02ef251a64b5 2019-05-09 00:01:13 -06:00
Anchor 78af976e99 [DRTVWR-476] - skip a math test 2019-05-08 23:49:02 -06:00
Anchor 1cfdc81c34 [DRTVWR-476] - update libpng, libndo, xmlrpc 2019-05-08 22:43:50 -06:00
Anchor e3f5b6dfed [DRTVWR-476] - update kdu 2019-05-08 20:36:23 -06:00
Anchor 9c9601ce8a [DRTVWR-476] - fix linking 2019-05-08 18:57:33 -06:00
Anchor 616075f084 [DRTVWR-476] - test adding at beginiing of list 2019-05-08 18:05:49 -06:00
Anchor 6eb4e88d94 [DRTVWR-476] - legacy_stdio_definitions shld be the last library linked 2019-05-08 17:37:05 -06:00
Anchor 0f51b0f267 [DRTVWR-476] - add legacy_stdio_definitions 2019-05-07 23:58:04 -06:00
Anchor 5a1a81b98c [DRTVWR-476] - update apr and kdu 2019-05-07 22:39:12 -06:00
Nat Goodspeed 34322f8f37 increment viewer version to 6.2.2 2019-05-07 15:24:01 -04:00
Nat Goodspeed 031ebc8d6d Added tag 6.2.1-release for changeset 706bdc7e25c6 2019-05-07 15:24:00 -04:00
Brad Kittenbrink 44fe16c6b8 Implemented some code review suggested cleanups. 2019-05-01 15:35:56 -07:00
Brad Kittenbrink fd980f8da2 Fix stall during login by yielding when needed from the LLXXMLRPCListener's Poller. 2019-05-01 15:28:55 -07:00