Commit Graph

51 Commits (353329c2c2e9e8fa1ff273de2016c9e155585f45)

Author SHA1 Message Date
Andrey Kleshchev e75519ef0e SL-15093 Crash nanov2_free_to_block #2
Mostly converted some boost pointers to std ones
Made ~LLNotificationChannelBase() more explicit to get a bit more data on location of another crash that likely happens when cleaning mItems
2021-05-31 19:36:36 +03:00
Andrey Kleshchev 5a6ef4e85e SL-14217 Shutdown crash
Don't process EventQueueGet responses from server when disconected
2020-10-28 12:34:30 +02:00
Rider Linden 70ac8d9fa7 SL-10238: Viewer spport for push notifications from the simulator contaiting partial groups of settings. Blend these settings into the current environment. 2018-12-12 14:07:23 -08:00
Brad Payne (Vir Linden) 57da9bcd1b merge from viewer-release 2016-08-15 09:52:06 -04:00
Rider Linden c0407af8ab STORM-2132: Remove obsoleted unique_ptr.hpp, use make_shared for pointer allocation. 2016-07-12 11:07:05 -07:00
Rider Linden c1c9b3d74e MAINT-6565: Grab a shared pointer and encapsulate it into the bind call in place of this. Ensures that the impl is not deleted while the coroutine is active. 2016-07-11 16:33:11 -07:00
Brad Payne (Vir Linden) cba0bb3038 SL-109 - little bit of log spam cleanup 2016-07-05 16:18:50 -04:00
Oz Linden 9be58e915a merge with 4.0.3-release 2016-04-04 15:53:09 -04:00
Rider Linden 2763bbd975 Initial changes for Vivox/Azumarill merge. Lots of temporary code and conditional compile switches. Begin switch from statemachine to coroutine. 2015-12-04 14:27:22 -08:00
Rider Linden 429729b592 MAINT-5804, MAINT-5890: Incorrectly trapping timeout in event poll and canceling coroutine before it's finished. 2015-11-19 17:15:17 -08:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Rider Linden bbb9d4f21b MAINT-5732: Change to the way event polling handles error conditions and cancel calls.
Refactor any remaining LLCore::HTTPHandlers to use boost::shared_ptr
Started minor refactor in the materials manager into coroutines (unfinished)
2015-10-14 17:46:24 -07:00
Rider Linden 75c6549fde Set consistent terminology for yield/wait -> suspend for coroutines. 2015-09-18 11:39:22 -07:00
Nat Goodspeed f1be78f7e2 MAINT-5351: Finish messy merge restoring 'selfless' changes. 2015-07-11 08:06:15 -04:00
Nat Goodspeed efa9a0f99c Backed out changeset bab1000e1b2d: restore 'selfless' changes 2015-07-10 19:30:10 -04:00
Rider Linden 247eb0c9c3 Backout selfles merge 738255dbbfd679d9e615baab3398e5e345bbb3c5 2015-07-07 19:41:27 +01:00
Nat Goodspeed b262ded7e0 MAINT-5351: Remove 'self' parameter from coroutine functions.
lleventcoro_test.cpp runs clean (as modified for new API), and all the rest
builds clean, but the resulting viewer is as yet untested.
2015-07-01 18:33:29 -04:00
Rider Linden 0d3fb07bfa Remove vestigial httpclient.h include from files that no longer need it. 2015-06-03 16:04:40 -07:00
Rider Linden 3e004ce66e Updated feature manager downloader to coroutine.
Added "raw" coroutine handler (returns raw result as LLSD::Binary) and split out the guts of the get, put, etc methods.
Moved getStatusFromLLSD from HttpCoroHandler into HttpCorutineAdapter
2015-05-11 16:52:02 -07:00
Rider Linden 794cdbc2ae Issue with LL_WARNS_IF sort out later. 2015-04-09 17:14:39 -07:00
Rider Linden e28a5b6ead Added LL_WARNS_IF to llerror.h
If the coro is given something other than a map from the http then move the return into a body section.
Changed windlight to use a coroutine and the new LLCore::Http libarary.
Extra comments into Event Polling.
2015-04-09 16:46:41 -07:00
Rider Linden fb082a185d Couple of cleanup items.
Switch to Long poll HTTP policy for event polling.
2015-04-08 17:25:01 -07:00
Rider Linden 6aa2812fad Removed dead code 2015-04-08 15:56:25 -07:00
Rider Linden 9965e13e83 Added timeout on failure. 2015-04-08 15:54:34 -07:00
Rider Linden 93382ee0c0 Moved some LLEventPolling internal classes to a named namespace
Canceling outstanding polling transactions
2015-04-08 14:29:37 -07:00
Rider Linden 1c91c8a106 Adding weak pointer support.
Event polling as a coroutine. (incomplete)
Groundwork for canceling HttpCoroutineAdapter yields.
2015-04-08 10:17:34 -07:00
Brad Payne (Vir Linden) 487ca1bad3 v-r -> s-e merge WIP 2014-05-14 17:50:59 -04:00
Brad Payne (Vir Linden) 7b9708a2e3 sunshine-external merge WIP 2014-05-13 10:02:26 -04:00
Don Kjer 7866356d77 Merge viewer-release => sunshine-internal 2013-10-29 13:20:18 +00:00
Richard Linden e340009fc5 second phase summer cleaning
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-08-09 17:11:19 -07:00
Brad Payne (Vir Linden) a04a706c1b merge 2013-05-21 16:18:48 -04:00
Graham Madarasz 025c890958 Merge vwr-dev-mat 2013-05-01 08:11:15 -07:00
Graham Madarasz 806d09b114 Merge 3.5.1 into Materials 2013-04-30 19:50:05 -07:00
Oz Linden ddd5659f81 merge changes for DRTVWR-294 2013-04-19 10:11:29 -04:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Don Kjer f945415210 Large changes to the LLCurl::Responder API, as well as pulling in some changes to common libraries from the server codebase:
* Additional error checking in http handlers.
* Uniform log spam for http errors.
* Switch to using constants for http heads and status codes.
* Fixed bugs in incorrectly checking if parsing LLSD xml resulted in an error.
* Reduced spam regarding LLSD parsing errors in the default completedRaw http handler.  It should not longer be necessary to short-circuit completedRaw to avoid spam.
* Ported over a few bug fixes from the server code.
* Switch mode http status codes to use S32 instead of U32.
* Ported LLSD::asStringRef from server code; avoids copying strings all over the place.
* Ported server change to LLSD::asBinary; this always returns a reference now instead of copying the entire binary blob.
* Ported server pretty notation format (and pretty binary format) to llsd serialization.

* The new LLCurl::Responder API no longer has two error handlers to choose from.  Overriding the following methods have been deprecated:
** error - use httpFailure
** errorWithContent - use httpFailure
** result - use httpSuccess
** completed - use httpCompleted
** completedHeader - no longer necessary; call getResponseHeaders() from a completion method to obtain these headers.

* In order to 'catch' a completed http request, override one of these methods:
** httpSuccess - Called for any 2xx status code.
** httpFailure - Called for any non-2xx status code.
** httpComplete - Called for all status codes.  Default implementation is to call either httpSuccess or httpFailure.
* It is recommended to keep these methods protected/private in order to avoid triggering of these methods without using a 'push' method (see below).

* Uniform error handling should followed whenever possible by calling a variant of this during httpFailure:
** llwarns << dumpResponse() << llendl;
* Be sure to include LOG_CLASS(your_class_name) in your class in order for the log entry to give more context.

* In order to 'push' a result into the responder, you should no longer call error, errorWithContent, result, or completed.
* Nor should you directly call httpSuccess/Failure/Completed (unless passing a message up to a parent class).
* Instead, you can set the internal content of a responder and trigger a corresponding method using the following methods:
** successResult - Sets results and calls httpSuccess
** failureResult - Sets results and calls httpFailure
** completedResult - Sets results and calls httpCompleted

* To obtain information about a the response from a reponder method, use the following getters:
** getStatus - HTTP status code
** getReason - Reason string
** getContent - Content (Parsed body LLSD)
** getResponseHeaders - Response Headers (LLSD map)
** getHTTPMethod - HTTP method of the request
** getURL - URL of the request

* It is still possible to override completeRaw if you want to manipulate data directly out of LLPumpIO.

* See indra/llmessage/llcurl.h for more information.
2013-03-13 06:26:25 +00:00
Don Kjer 54cdc322b8 Fixing issues with not detecting when LLSD XML parsing fails. Changing most http error handlers to understand LLSD error responses. Fleshing out most http error handler message spam. 2013-03-05 22:05:22 -08:00
Dave Parks 374f20edf0 Fix non-thread-safe refcounting of LLHTTPClient::Responder and fix out-of-order deletion of LLTextureFetch on shutdown 2012-10-03 14:30:21 -05:00
Oz Linden 06b0d72efa Change license from GPL to LGPL (version 2.1) 2010-08-13 07:24:57 -04:00
Tofu Linden ec0dd8968c Update the rest of the LLEventTimer users to #include lleventtimer.h. I think. 2010-02-06 19:19:07 +00:00
Mark Palange 46f8fb8781 svn merge -r107016:108767 svn+ssh://svn.lindenlab.com/svn/linden/viewer/viewer_1-22
Merge back of viewer 1.22 RC6 and RC7 change to trunk.
QAR-1214 and QAR-1227
2009-02-03 21:15:57 +00:00
Aaron Brashears e3cf284388 Result of svn merge -r107256:107258 svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165 2009-01-08 00:05:06 +00:00
Mark Palange 04decf22b9 Merge 98702-99587 viewer_1-21 -> release Merging changes made between 1.21 RC5 secu-fix to 1.21.6 release. 2008-10-20 22:16:40 +00:00
Kelly Washington 2336b76f0d merge -r94900 linden/branches/kelly/qar-825 to linden/release
QAR-825 DEV-18489 Event poll is brittle and doesn't parse status correctly
2008-08-26 17:15:20 +00:00
Aaron Brashears 5595a99623 Result of svn merge -r71162:71205 svn+ssh://svn/svn/linden/branches/new-license into release. only changes files which are not deployed or the comments section of code. 2007-10-04 23:19:43 +00:00
Melinda Green 07c24d0437 Passed QA, merging minifriends-3:70006 back to release 2007-09-19 21:28:44 +00:00
Tess Chu 57b8fef824 svn merge --ignore-ancestry svn+ssh://svn/svn/linden/release@65088 svn+ssh://svn/svn/linden/branches/release-candidate@65078 -> release Paired by Tess and rdw. 2007-07-11 21:29:02 +00:00
Kelly Washington e03bb0606a merge -r62831:64079 branches/maintenance to release 2007-06-21 22:40:22 +00:00
Don Kjer 4ecb9cb63e svn merge -r 59163:61099 svn+ssh://svn/svn/linden/branches/release-candidate into release 2007-05-01 21:39:25 +00:00
Steven Bennetts aa96d1fddf merge -r 59337:59951 Branch_1-14-0 -> release. 2007-04-03 00:16:59 +00:00