Commit Graph

177 Commits (bdc94eac5cda3dd6700a1cd462178b7ac3c4cfec)

Author SHA1 Message Date
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
Nat Goodspeed 80d17b2dd9 MAINT-4952: Use IntrusivePtr for BufferArray,HttpHeaders,HttpOptions.
Specifically, change the ptr_t typedefs for these LLCore classes to use
IntrusivePtr rather than directly using boost::intrusive_ptr. This allows us
to use a simple ptr_t(raw ptr) constructor rather than having to remember to
code ptr_t(raw ptr, false) everywhere. In fact, the latter form is now invalid:
remove the now-extraneous 'false' constructor parameters.
2015-06-29 17:19:51 -04:00
Rider Linden aba8d5e488 Removed homelocation responder (rolled into llagent)
Removed sdhandler from llagent.
Removed unused values from llacountingccostmgr
Fixed smart pontier creation in llfacebook
2015-06-09 13:06:09 -07: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 fe8dec32db Merge 2015-04-13 09:37:09 -07:00
Rider Linden 2d3e4576d7 Formatting change to get past merge conflict. 2015-04-13 09:20:54 -07:00
Rider Linden 8a76284e48 Results from code review with Nat. Consolidate some of the coroutine/http code into a single adapter. 2015-04-07 10:30:10 -07:00
Oz Linden 66bc510786 detect xml errors in parsing xml files and remove those files 2015-04-02 21:43:34 -04:00
Rider Linden edc1439bd6 Added AvatarNameCache as coroutine, with LLCore::HttpHandler to respond correctly to Event Pumps.
Added get/setRequestURL() to LLCore::HttpResponse
Removed URI from the HttpSDHandler.
2015-04-01 16:37:00 -07:00
Kitty Barnett 839fe0fa12 Merged with default tip (Revision ffde74743e89)
--HG--
branch : RLVa
2015-05-09 00:53:24 +02:00
Nicky 006190f2a1 Merge with tools update. 2015-05-05 13:09:27 +02:00
Kitty Barnett c4d557d529 Merged with default tip (Revision aeab2661776f)
--HG--
branch : RLVa
2014-10-29 21:45:12 +02:00
Ansariel f4bfb1aadf Merge LL V3.7.9 (AIS3 + SSA) 2014-10-22 02:02:08 +02:00
Brad Payne (Vir Linden) d9e3a2948a merge 2014-03-12 17:24:07 -04:00
Mnikolenko ProductEngine a54a56118a MAINT-3374 FIXED Don't show username after display name if this setting is disabled. 2013-11-06 11:42:48 +02:00
Mnikolenko ProductEngine aaf6c7954d MAINT-3374 FIXED Don't show username after display name if this setting is disabled. 2013-11-06 11:42:48 +02:00
Cinders b2c25178dd More contact sets cleanup 2013-12-14 00:22:07 -07:00
Cinders 238e858223 Add single quotes to aliased names 2013-12-12 12:48:36 -07:00
Kitty Barnett 10a289598b Merged with default tip (Revision 74cc289067c8)
--HG--
branch : RLVa
2013-07-21 22:33:04 +02:00
Brad Payne (Vir Linden) a04a706c1b merge 2013-05-21 16:18:48 -04:00
Kitty Barnett a9ffc0120a Merged with default tip (Revision 13149a524874)
--HG--
branch : RLVa
2013-05-06 23:54:58 +02:00
Oz Linden ddd5659f81 merge changes for DRTVWR-294 2013-04-19 10:11:29 -04:00
Don Kjer beeefb4526 Renaming HTTP_HEADER_* into HTTP_IN_HEADER_* and HTTP_OUT_HEADER_* to make it more clear which header strings should be used for incoming vs outgoing situations.
Using constants for commonly used llhttpnode context strings.
2013-04-04 21:50:45 +00:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Kitty Barnett 752951003b Merged with viewer-sunshine tip (Revision 61124f8f8473)
--HG--
branch : RLVa
2013-03-19 22:45:32 +01:00
Don Kjer 662d67e3b5 Merging LLCURL::Responder changes with CHUI changes. Fixed gcc 4.6 compile failures 2013-03-13 08:46:59 +00: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
prep 207d9fd767 Viewer-chui merge 2013-03-11 14:45:53 -04: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
Kitty Barnett 4101c43f5f Merged with viewer-sunshine tip (Revision 87a6fc812214)
--HG--
branch : RLVa
2013-02-20 19:25:10 +01:00
Kitty Barnett e1b955226d Merged with viewer-sunshine tip (Revision bd1162cb6fbe)
--HG--
branch : RLVa
2013-02-11 23:04:05 +01:00
Cinders 490f6bc1cc FIRE-11330 Part 1 - Don't style chat name slurls as html links 2013-08-21 13:12:29 -06:00
Cinders b9119593ee Remove redundant function since merge 2013-08-01 06:32:20 -06:00
Tank_Master d4640277d0 Merge LL 3.5.3 release. 2013-07-09 16:24:58 -07:00
Tank_Master 14001c54df Gastly CHUI merge pass 1, don't count on anything to work. 2013-06-26 12:14:54 -07:00
Merov Linden 573ab07a40 Merge pull from lindenlab/viewer-beta 2013-01-10 14:51:59 -08:00
Kelly Washington 2cba564b24 MAINT-2184 [crashhunters] new crash in LLUUID::toString
Fix dangling references.
2013-01-03 09:17:25 -08:00
Merov Linden 9b556fb3fe CHUI-599 : Use the account name in all places that are not UI related but use avatar names to index, search and other code only uses. 2012-12-14 14:19:17 -08:00
Merov Linden a6f1690128 CHUI-580, CHUI-406 : Fixed : Finished avatar name caching, also fixed the display of (waiting) when names don't come (mostly in legacy mode). 2012-12-07 18:58:52 -08:00
Merov Linden bb322a1ccc CHUI-580 : Fixed : Clean up the use of display name. Allow the use of the legacy protocol in settings.xml 2012-12-07 00:10:50 -08:00
Merov Linden 3a49beed0e CHUI-580 : WIP : Change the display name cache system, deprecating the old protocol and using the cap (People API) whenever available. Still has occurence of Resident as last name to clean up. 2012-12-05 20:25:46 -08:00
Kelly Washington 5646e564e5 MAINT-1897 Poor performance viewing large group member lists
* Split avatar name requests up among multiple frames to prevent overloading
  the nameserver and having requests time out.
2012-11-12 14:10:02 -08:00
Kitty Barnett 5b7edaec37 Merged with .RLVa tip
--HG--
branch : RLVa
2012-09-20 16:37:37 +02:00
Oz Linden c2e902d56a merge back beta fixes 2012-08-20 14:45:47 -04:00
Todd Stinson 7cbbdbd896 PATH-849: CRASHFIX This should fix the crash caused by LLPathfindingObject::handleAvatarNameFetch being called after the corresponding LLPathfindingObject has been deleted. 2012-08-13 16:55:51 -07:00
Cinders 5572302504 Trivial whitespace cleanup... 2013-03-22 18:16:47 -06:00
Tank_Master 1d43cb8943 Merge SSB push 4 2013-03-08 17:54:49 -08:00
Tonya Souther 30e8da41b0 Merging Cocoa UI rework. 2013-01-05 13:55:41 -06:00
Tank_Master cc44316aed Merge LL 3.4.3,
Note: aligned some of our code with LL's, spcifically feature table, gpu table, texture fetching, and some rendering defaults behavior.
2012-12-18 00:36:35 -08:00
Tank_Master 5b5f4c8bf5 Merge LL 3.4.2 release,
broken revision, KDU package needs updating, mac packager also likely broken
2012-12-14 07:59:55 -08:00
Ansariel 3f77049357 FIRE-8424: Don't trim 'resident' from legacy names causes webprofile search to fail 2012-12-04 10:49:51 +01:00
Cinders bbc16a5441 FIRE-6659: Option to not strip "Resident" from legacy names. 2012-11-01 22:25:51 -06:00
Ansariel ccbfeef031 Fixed indention 2012-10-15 22:58:16 +02:00
Ansariel cd2db0789b FIRE-4297: Fix for "Sort contact lists by username even when display names are shown" not working if display names are disabled 2012-10-15 22:53:33 +02:00
Todd Stinson cb646c988f PATH-849: CRASHFIX This should fix the crash caused by LLPathfindingObject::handleAvatarNameFetch being called after the corresponding LLPathfindingObject has been deleted. 2012-08-13 16:55:51 -07:00
Brad Payne (Vir Linden) 30140f66be SH-3079 FIX - minimize retries and avoid log spam when people API is missing 2012-05-03 17:25:02 -04:00
Ansariel 6c287ccf97 Changed avatarname cache to not re-request names for avatars with null uuid on reuqest errors 2012-05-17 14:56:17 +02:00
Ansariel a3af449300 Cleaned up partly messed up display name expiration; The minimum expiration duration is already ensured in nameExpirationFromHeaders() 2012-05-17 14:33:12 +02:00
Kitty Barnett 1e73066654 - review : partial review of RlvUIEnabler and related scattered code blocks
--HG--
branch : RLVa
2011-05-27 15:48:16 +02:00
Kitty Barnett a713ffa247 Merged with default tip (Revision ddfc2ed6aee1)
--HG--
branch : RLVa
2011-05-25 13:37:12 +02:00
Richard Linden 72c43237fc STORM-1039 FIXED Bad iterator access in llavatarnamecache.cpp:564
missed else case
2011-04-28 19:33:20 -07:00
Richard Linden 6e5794376d STORM-1039 FIXED Bad iterator access in llavatarnamecache.cpp:564
fixed crash on startup
2011-04-28 19:04:08 -07:00
Paul ProductEngine 38a0dbf04f STORM-1039 FIXED Bad iterator access in llavatarnamecache.cpp:564
- Replaced 'while' loop by 'for'

- Deleted unnecessary 'cur' iterator
2011-04-15 18:50:03 +03:00
Kitty Barnett 604345b918 Merged with .RLVa tip
--HG--
branch : RLVa
2011-02-19 01:12:23 +01:00
Oz Linden 24f73fda0f remove problematic include used during debug 2011-01-18 15:59:45 -05:00
Oz Linden 8c2f2eb1f3 make storing the cache obey the same unrefreshed time as other usage 2011-01-18 07:37:56 -05:00
Oz Linden e106678422 DN-202: Make avatar name caching more aggressive and error handling more uniform
Add logging (mostly at DEBUG level)
2011-01-16 21:41:08 -05:00
Oz Linden c5d8624ba4 renamed temp name flag member in name cache to avoid confusion with similar names in other classes 2011-01-15 09:09:41 -05:00
leyla_linden 089665ce4e Falling back to legacy cache on display name fetch error 2010-12-09 15:26:03 -08:00
Kitty Barnett c4cd977586 - changed : force the use of display names when @shownames=n restricted
--HG--
branch : RLVa
2010-12-08 22:34:14 +01:00
Leyla Farazha 76d708bdb5 Turning down dummy avatar name entry expiration to 2 minutes 2010-11-11 15:53:13 -08:00
LGG@LGG-LAPPY 8e900947f9 Fix for FIRE-3048
IMs/online notifications appearing multiple times when you've removed a contact's display name
2011-09-20 20:45:50 -05:00
Arrehn 8be9495460 DisplayName Cache Lookup Performance Improvements - 1HR expiration experiment 2011-09-05 01:37:42 -04:00
Selo b8a34ab1a3 FIX Caching DNs .... Making now sure to fire a request when a DN is not in cache or expired 2011-09-04 21:13:13 +02:00
Liny 2923d413ef EoL change, no code change 2011-09-01 18:08:44 -07:00
LGG@LGG-LAPPY 7e4388d7dd Contact Sets For Firestorm (Comm->Contact Sets) 2011-09-01 09:50:54 -05:00
Arrehn e277b8a4ac Merge with LL 2.6.9, initial work. Needs tests, extra XUI merging with particular skins. 2011-08-04 11:53:40 -04:00
Arrehn 0edfaea01d Remove namecache logging for now, still need to analyze whether this is needed at all. 2011-06-25 10:31:42 -04:00
Tank_Master 91837db170 reimport changset 14913 to fix the display name issue in IM and group chat
http://hg.phoenixviewer.com/phoenix-firestorm-lgpl/rev/ead2e91b6da2
2011-06-13 21:46:30 -07:00
Arrehn 52f4999ecb Improved Legacy Name lookups, by Ansariel 2011-04-17 23:09:11 -04:00
Leyla Farazha a923da7fc7 DEV-52931 Toggling "View Display Names" doesn't take effect right away in the Friends list 2010-09-13 14:59:31 -07:00
Aimee Linden e45b3c6884 Correct license on newly exported files to LGPL. 2010-09-04 19:35:27 +01:00
Leyla Farazha c39d74ac98 synchronous llavatarcachename::get calls now return true even if entry is expired 2010-08-19 14:23:14 -07:00
Leyla Farazha c7d49b4cb2 DEV-52354 Username shown in local chat if idle for over 90 seconds
reviewd by richard
2010-08-04 17:11:01 -07:00
James Cook 88b9808de6 DEV-50013 Don't add delays to batch up name requests
In practice, bulk name requests are all added in a single frame,
triggered for example by opening a group membership dialog.  There's
no point to waiting to batch up more requests, and this slows down
the usual single-name lookup.  Reviewed with Simon.
2010-06-01 11:06:16 -07:00
James Cook b944a47927 DEV-50013 Script memory floater uses usernames 2010-05-28 09:59:47 -07:00
James Cook f4148502e4 Rename mSLID to mUsername to match the name of the field in the UI
Product made a late-breaking request to change the name of this
field.  The wire protocol for People API has not yet changed.
2010-05-18 16:00:45 -07:00
Leyla Farazha 2af4875309 DEV-50013 Friends in sidebar now correctly displaying names
reviewed by James
2010-05-13 17:26:06 -07:00
James Cook fa03333d58 DEV-49633 Prefer Retry-After for error handling backoff
Also, we can't parse Expires dates, so use Cache-Control max-age.
Reviewed with Huseby.
2010-05-07 10:41:02 -07:00
James Cook c0257c7fff DEV-49633 fixed, use Cache-Control max-age for display name expiration
We have no C++ libraries for parsing RFC 1123 dates, so parsing "Expires"
headers is risky.  max-age delta-seconds is easier to parse and equivalent
for this use.  Also added unit tests for max-age parsing.  Pair-programmed
with Huseby.
2010-05-06 16:29:51 -07:00
James Cook 5838494c50 DEV-49633 WIP, Display name cache uses "Expires" headers for timeouts 2010-05-04 16:20:02 -07:00
James Cook 18106568b2 DEV-49489 Fall back to legacy names if display names unavailable
Also made new names system wrap the old one to simplify call sites in the viewer
2010-04-28 11:00:11 -07:00
James Cook 56f5a6909d Menu item to disable display names for testing works again
Start up cache in not-running state on viewer.  Set cache running when
idle() is called.  Explicitly refresh name tags when toggled.
Reviewed with Simon
2010-04-27 13:54:40 -07:00
James Cook e4f2887983 Don't save dummy records (from 503 errors) to disk cache 2010-04-26 14:19:58 -07:00
James Cook c1ff714797 DEV-47529 Name cache can handle People API 503 service unavailable
It caches a dummy name "???" for a while and retries - soon for 503,
longer delay for other errors.  Reviewed with Simon.
2010-04-23 15:11:33 -07:00
James Cook 98f5fc5ff0 DEV-47529 Turn off display names if no capability from simulator, and
Display name update broadcasts entire new name record to nearby viewers
Display name update directly inserts new name into sim cache
indra.xml has display_names_enabled setting to control cap
Synchronized viewer and server versions of avatar name cache
Reviewed with Ambroff
2010-04-22 14:13:45 -07:00
James Cook 61d79980d8 Starting to implement running switch and 503 error handling 2010-04-22 10:24:17 -07:00
James Cook 022a598694 Viewer caches avatar display names between sessions
Reviewed with Simon
2010-04-20 17:05:49 -07:00