Commit Graph

40429 Commits (bd008a170898e69beeb8bc0481b4bfd94de86c55)

Author SHA1 Message Date
Nat Goodspeed 18bb6d5d49 DRTVWR-476: Make test program --debug switch work like LOGTEST=DEBUG.
The comments within indra/test/test.cpp promise that --debug is, in fact, like
LOGTEST=DEBUG. Until now, that was a lie. LOGTEST=level displayed log output
on stderr as well as in testprogram.log, while --debug did not.

Add LLError::logToStderr() function, and make initForApplication() (i.e.
commonInit()) call that instead of instantiating RecordToStderr inline. Also
call it when test.cpp recognizes --debug switch.

Remove the mFileRecorder, mFixedBufferRecorder and mFileRecorderFileName
members from SettingsConfig. That tactic doesn't scale.

Instead, add findRecorder<RECORDER>() and removeRecorder<RECORDER>() template
functions to locate (or remove) a RecorderPtr to an object of the specified
subclass. Both are based on an underlying findRecorderPos<RECORDER>() template
function. Since we never expect to manage more than a handful of RecorderPtrs,
and since access to the deleted members is very much application setup rather
than any kind of ongoing access, a search loop suffices.

logToFile() uses removeRecorder<RecordToFile>() rather than removing
mFileRecorder (the only use of mFileRecorder).

logToFixedBuffer() uses removeRecorder<RecordToFixedBuffer>() rather than
removing mFixedBufferRecorder (the only use of mFixedBufferRecorder).

Make RecordToFile store the filename with which it was instantiated. Add a
getFilename() method to retrieve it. logFileName() is now based on
findRecorder<RecordToFile>() instead of mFileRecorderFileName (the only use of
mFileRecorderFileName).

Make RecordToStderr::mUseANSI a simple bool rather than a three-state enum,
and set it immediately on construction. Apparently the reason it was set
lazily was because it consults its own checkANSI() method, and of course
'this' doesn't acquire the leaf class type until the constructor has completed
successfully. But since nothing in checkANSI() depends on anything else in
RecordToStderr, making it static solves that problem.
2019-10-14 15:41:09 -04:00
andreykproductengine bd42fd13b0 SL-11719 Fixed init of conversation log 2019-10-14 20:49:16 +03:00
maxim_productengine 5ce0d6268b SL-12093 FIXED [ordered shutdown] conversation.log erased at log in when all logs are set to be saved 2019-10-10 16:35:11 +03:00
Nat Goodspeed 4aa4a52c08 DRTVWR-476: Fix overflow case in llcoro::postAndSuspend().
Actually the fix is in postAndSuspendSetup(), which affects postAndSuspend(),
postAndSuspendWithTimeout(), suspendUntilEventOnWithTimeout() and
suspendUntilEventOn().

By "overflow case" we mean the special circumstance in which:

* the LLEventPump in question is an LLEventMailDrop, meaning its listeners
  eventually expect to see every post()ed value
* one of the listeners is supposed to consume those values (has called
  LLCoros::set_consuming(true))
* post() is called more than once before that listener is resumed.

The magic of postAndSuspend() (et al.) is a temporary LLCoros::Promise. The
waiting coroutine calls get() on the corresponding Future, causing it to
suspend (as promised) until the Promise is fulfilled.

With the Boost.Fiber implementation of coroutines, fulfilling the Promise
doesn't immediately resume the suspended coroutine -- it merely marks it ready
to resume, next time the scheduler gets control.

A second post() call before the suspended coroutine is resumed results in a
second call to Promise::set_value(). But Promise is a one-shot entity. This
results in a promise_already_satisfied exception. Because a second post() call
during that time window is perfectly reasonable, we catch that exception and
carry on.

The tricky part is: when that exception is thrown, what should the listener
return? Previously we were returning the listener's current consuming setting,
just as when the set_value() call succeeds.

But when the LLEventPump is an LLEventMailDrop, and the listener's consuming
flag is true, that told LLEventMailDrop::post() that the value got through,
and that it needn't bother to save it in its history queue. The net effect was
to discard the value.

Instead, return the listener's consuming flag only when Promise::set_value()
succeeds. When it throws promise_already_satisfied, unconditionally return
false. That directs LLEventMailDrop::post() to enqueue the undelivered value
so that the *next* suspendUntilEventOn() call can pick it up.
2019-10-07 17:18:29 -04:00
Oz Linden d89130c32a rename SLVoice log file and rotate the way we do for SecondLife.log 2019-10-04 15:16:24 -04:00
Oz Linden 1cb5ec9023 upgrade SLVoice to 4.10.0000.32327.5fc3fe7c.531581 2019-10-04 11:12:38 -04:00
Nat Goodspeed b754eba78b DRTVWR-476: Fix Windows line endings 2019-10-04 08:45:00 -04:00
Nat Goodspeed 35dfa830d2 DRTVWR-476: Update to viewer-manager build 531568 2019-10-03 17:18:46 -04:00
Nat Goodspeed 342f04a9ad DRTVWR-476: Update to openjpeg build 531548 2019-10-03 13:52:07 -04:00
Nat Goodspeed 0f612be5f6 DRTVWR-476: Update vlc-bin, jsoncpp, pcre, libndofdev, libhunspell, bugsplat, fmodex, llca, jpeglib, libxml2, slvoice, glod, dullahan, glext, kdu, uriparser, glh_linear, tut, nghttp2, dictionaries, zlib, llphysicsextensions_source, openjpeg, nvapi, expat, viewer-manager, google_breakpad, libpng, ogg_vorbis, openssl, xmlrpc-epi, apr_suite, freetype, boost, colladadom, googlemock, curl, havok-source
Update vlc-bin to codeticket version 531366.
Update jsoncpp to codeticket version 531360.
Update pcre to codeticket version 531373.
Update libndofdev to codeticket version 531359.
Update libhunspell to codeticket version 531369.
Update bugsplat to codeticket version 531352.
Update fmodex to codeticket version 531266.
Update llca to codeticket version 531253.
Update jpeglib to codeticket version 531361.
Update libxml2 to codeticket version 531380.
Update slvoice to codeticket version 531358.
Update glod to codeticket version 531370.
Update dullahan to codeticket version 531387.
Update glext to codeticket version 531247.
Update kdu to codeticket version 531363.
Update uriparser to codeticket version 531367.
Update glh_linear to codeticket version 531260.
Update tut to codeticket version 531246.
Update nghttp2 to codeticket version 531364.
Update dictionaries to codeticket version 531288.
Update zlib to codeticket version 531372.
Update llphysicsextensions_source to codeticket version 531362.
Update openjpeg to codeticket version 531368.
Update nvapi to codeticket version 531376.
Update expat to codeticket version 531365.
Update viewer-manager to codeticket version 531239.
Update google_breakpad to codeticket version 531388.
Update libpng to codeticket version 531386.
Update ogg_vorbis to codeticket version 531357.
Update openssl to codeticket version 531379.
Update xmlrpc-epi to codeticket version 531374.
Update apr_suite to codeticket version 531375.
Update freetype to codeticket version 531385.
Update boost to codeticket version 531381.
Update colladadom to codeticket version 531391.
Update googlemock to codeticket version 531390.
Update curl to codeticket version 531389.
Update havok-source to codeticket version 531509.
2019-10-02 16:34:05 -04:00
Oz Linden 7e494d402d experimental 4.10 win64 package 2019-10-01 13:08:55 -04:00
Nat Goodspeed 4566bcd1f8 DRTVWR-476: Update to havok-source build 531405 2019-09-28 19:31:32 -04:00
Nat Goodspeed b0f9d5c839 Automated merge with ssh://bitbucket.org/lindenlab/viewer-xcode11 2019-09-28 12:41:22 -04:00
Oz Linden f7d6fa677c update to SLVoice build 4.9.0002.32137.3410b595.531271 2019-09-27 11:49:39 -04:00
Nat Goodspeed 52c9f57819 DRTVWR-476: Track change to NSView in Xcode 11's 10.15 SDK. 2019-09-25 16:48:36 -04:00
Nat Goodspeed c0b13466f1 DRTVWR-476: Add Stack Overflow link for Brad's Xcode 11 signing fix. 2019-09-25 16:46:49 -04:00
Nat Goodspeed b5dbcbd8f8 Automated merge with ssh://bitbucket.org/lindenlabinternal/viewer-xcode11 2019-09-25 16:31:33 -04:00
Nat Goodspeed 8070100626 Automated merge with ssh://bitbucket.org/lindenlabinternal/viewer-xcode11 2019-09-25 16:29:48 -04:00
Oz Linden 00d7698999 upgrade to SLVoice package after fix for ortp linking 2019-09-25 15:54:40 -04:00
Brad Kittenbrink 5d671ff210 Disabled broken automatic code signing for local development when using Xcode 11 2019-09-25 12:53:38 -07:00
Nat Goodspeed 77621dd3fc Automated merge with ssh://bitbucket.org/lindenlab/viewer-vs2017 2019-09-24 14:35:26 -04:00
Oz Linden da560ac644 VOICE-80: suppress output to console on Windows 2019-09-20 14:33:57 -04:00
Nat Goodspeed 44ce972fc4 DRTVWR-476: Re-enable an llcoproceduremanager_test case.
Use new Sync class to make the driving logic wait for the coprocedure to run.
2019-09-19 16:36:41 -04:00
Steven Harrison (steven) 9430a569d8 SL-11984 Correct status page URLs 2019-09-18 21:23:57 +00:00
AndreyL ProductEngine d7f73cfc5b Backed out changeset: eb99f42d0fdc 2019-10-15 21:15:32 +03:00
AndreyL ProductEngine 885c56a660 Downstream merge from lindenlab/viewer-bear 2019-10-15 20:36:12 +03:00
AndreyL ProductEngine 35d3901b99 Merged in lindenlab/viewer-release 2019-10-15 20:34:44 +03:00
maxim_productengine 9666a96e68 SL-12115 FIXED The camera flies away when sitting on a new object with edit mode enabled 2019-10-15 15:56:40 +03:00
AndreyL ProductEngine fe490d52b4 Merged in lindenlab/viewer-xcode11 2019-10-09 19:28:30 +03:00
Rider Linden 3feba8be0d SL-11430: Transaction ID is passed as aux_id from offline message. No special parsing required to get type from binary_bucket. 2019-10-01 16:49:33 -07:00
Oz Linden c9bb783331 update to SLVoice version 4.9.0002.32137.3410b595.531025 2019-09-17 14:40:25 -04:00
andreykproductengine 5d96cf3f71 SL-11917 Updated VVM 2019-09-17 14:55:06 +03:00
andreykproductengine 0ea0b98084 DRTVWR-493 LLLogChat to singleton 2019-09-16 20:32:25 +03:00
AndreyL ProductEngine 2f7b606202 Backed out changeset: 8e228364f324 2019-09-14 05:14:24 +03:00
AndreyL ProductEngine 548d688adf Backed out changeset: b4182ee25942 2019-09-14 05:14:07 +03:00
AndreyL ProductEngine 28640c19e8 Backed out changeset: 4273d752fb17 2019-09-14 05:13:58 +03:00
AndreyL ProductEngine ddbe9583ff Backed out changeset: a6398f90389a 2019-09-14 05:13:53 +03:00
AndreyL ProductEngine a07b64d30e Backed out changeset: 4a7dac768fae 2019-09-14 05:13:45 +03:00
AndreyL ProductEngine 423a9645e0 Backed out changeset: 20da15768791 2019-09-14 05:13:35 +03:00
AndreyL ProductEngine a100d62783 Backed out changeset: 8da237b54852 2019-09-14 05:13:27 +03:00
AndreyL ProductEngine 11390ad8ed Backed out changeset: 122dc88276c7 2019-09-14 05:13:19 +03:00
AndreyL ProductEngine 1b2579eca2 SL-11536 Backed out CEF update (changeset: c246ab81b298) 2019-09-14 02:28:34 +03:00
Oz Linden 1ed2cfaaf6 correct Mac SLVoice executable name 2019-09-13 15:21:47 -04:00
Oz Linden eccc8f6721 update Mac slvoice build 2019-09-13 09:43:28 -04:00
Nat Goodspeed b3675542e1 DRTVWR-476: Add Sync class to help with stepwise coroutine tests.
Sync is specifically intended for test programs. It is based on an
LLScalarCond<int>. The idea is that each of two coroutines can watch for the
other to get a chance to run, indicated by incrementing the wrapped int and
notifying the wrapped condition_variable. This is less hand-wavy than calling
llcoro::suspend() and hoping that the other routine will have had a chance to
run.

Use Sync in lleventcoro_test.cpp.

Also refactor lleventcoro_test.cpp so that instead of a collection of static
data requiring a clear() call at start of each individual test function, the
relevant data is all part of the test_data struct common to all test
functions. Make the helper coroutine functions members of test_data too.

Introduce llcoro::logname(), a convenience function to log the name of the
currently executing coroutine or "main" if in the thread's main coroutine.
2019-09-11 09:33:07 -04:00
Nat Goodspeed 97d611eedc DRTVWR-476: Improve llprocess_test.cpp diagnostic output.
If the test<1>() child process terminates with nonzero rc, also report any
stdout/stderr it might have emitted first.
2019-09-10 17:21:34 -04:00
AndreyL ProductEngine 23932e2f79 Downstream merge from lindenlab/viewer-bear 2019-09-10 23:18:25 +03:00
AndreyL ProductEngine 535aad96af Downstream merge from lindenlab/viewer-lynx 2019-09-10 23:17:02 +03:00
andreykproductengine 37eb735ba7 Merged in lindenlab/viewer-release 2019-09-10 20:30:25 +03:00
Nat Goodspeed 24c7d14199 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2019-09-10 11:54:43 -04:00