summaryrefslogtreecommitdiff
path: root/indra/newview/llvoicevivox.cpp
AgeCommit message (Collapse)Author
2013-03-13Large changes to the LLCurl::Responder API, as well as pulling in some ↵Don Kjer
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-11Viewer-chui mergeprep
2013-03-05Fixing issues with not detecting when LLSD XML parsing fails. Changing most ↵Don Kjer
http error handlers to understand LLSD error responses. Fleshing out most http error handler message spam.
2013-02-08Interim version with SLIM removed from voice.Aura Linden
2013-01-18CHUI-379 FIXED Restore Voice Morphing menumaksymsproductengine
2012-12-17CHUI-580 : WIP : Added disconnect of callbacks once they're called to ↵Merov Linden
prevent filling up the callback queue
2012-12-17Merge with viewer-chuiMerov Linden
2012-12-17CHUI-580 : WIP : Protect callback connections passed to ↵Merov Linden
LLAvatarNameCache::get() where necessary
2012-12-14CHUI-599 : Use the account name in all places that are not UI related but ↵Merov Linden
use avatar names to index, search and other code only uses.
2012-12-05CHUI-580 : WIP : Change the display name cache system, deprecating the old ↵Merov Linden
protocol and using the cap (People API) whenever available. Still has occurence of Resident as last name to clean up.
2012-11-27CHUI-544 (Legacy name shows in conversation list for user that answers a ↵MaximB ProductEngine
voice call)
2012-11-08Pull merge from richard/viewer-chui.Merov Linden
2012-11-08Pull and merge from ssh://stinson@hg.lindenlab.com/richard/viewer-chui/.William Todd Stinson
2012-11-08CHUI-484: Updating the code to rather than refer to it as Busy Mode, it now ↵William Todd Stinson
refers to it as Do Not Disturb mode.
2012-11-07CHUI-450 (Your own name does not appear in nearby chat participant list if ↵MaximB ProductEngine
voice chat disabled) Added audio module initialization without faking mVoiceEnabled value
2012-11-05CHUI-468 : Suppress LLCallFloater completelyMerov Linden
2012-11-05CHUI-450 (Your own name does not appear in nearby chat participant list if ↵MaximB ProductEngine
voice chat disabled)
2012-10-11Updating linux build to gcc4.6Don Kjer
2012-07-27Pull and merge from ssh://stinson@hg.lindenlab.com/richard/viewer-chui/.Todd Stinson
2012-07-27CHUI-151 FIXED (Implement conversation log)Paul ProductEngine
A brief explanation of what have been implemented. More information can be found in comments. 1. Created conversation history viewer (llfloaterconversationpreview) 2. Created LLConversation and LLConversationLog classes which represent and hold data of conversations (llconversationlog) 3. Created LLConversationLogList and LLConversationLogListItem which are the visual representation of LLConversationLog and LLConversation respectively 4. Created LLFloaterConversationLog - which holds and displays LLConversationLogList
2012-01-22Use LLProcess::create() to launch SLVoice, rather than inline code.Nat Goodspeed
This appears to close a long-pending action item, as it seems the original LLProcessLauncher implementation was in fact cloned-and-edited from this logic in LLVivoxVoiceClient::stateMachine(). In any case, leveraging LLProcess buys us: - reduced redundancy; fewer maintenance points - logging for both success and errors - (possibly) better SLVoice.exe lifespan management.
2011-12-12merge changes for vmrg-204Oz Linden
2011-12-02EXP-1451 FIX -- I want to put my NEARBY CHAT window at the bottom left, but ↵Leslie Linden
then it obscures chatted text. I repositioned the chat, move and camera floaters. Chat toasts now start 80 up from the bottom left rather than 10.
2011-11-28a try fix for sh-2651: [crashhunters] Crash after google translate failureXiaohong Bao
and sh-2658: crash in LLPluginMessage::parse
2011-10-18merge changes for STORM-1654Oz Linden
2011-10-14Merge backout of b782a75c99e6Dave Parks
2011-10-14Backed out changeset b782a75c99e6Dave Parks
2011-10-14EXP-1282 FIXED Bottom bar removed.Seth ProductEngine
- LLBottomTray code and XUI removed. - "Speak" buttom which resided in Bottom bar removed. - Voice connection status update moved from LLBottomTray to LLVivoxVoiceClient.
2011-09-14merge changes for storm-1532Oz Linden
2011-08-31MergeXiaohong Bao
2011-08-18STORM-1532: Don't re-request ParcelVoiceInfoRequest capability if the region ↵Armin Weatherwax
definitely doesn't have it.
2011-07-21SH-2031 Fix for stall in "Cleanup"Dave Parks
2011-07-17SH-2031 High risk changeset, but potentially high reward. Addresses frame ↵Dave Parks
stalls in renderer by never using the fixed function pipeline if shaders are available.
2011-07-15Merge from viewer-developmentXiaohong Bao
2011-06-23Fix for VOICE-3 [crashhunters] LLVoiceVoiceClient::stateMachineRoxie Linden
Race condition with parcel changing while shutting down. If a parcel changes, we went into code that requests the cap for the new parcel voice channel info. This happened in any state, not the two states where it is really appropriate. stateRunning or stateNoSession. When shutting down, we may be in stateTerminate, stateLeavingSession, or so on, and we don't want to muck with getting caps and such during that time.
2011-05-02mergeDave Parks
2011-03-10Squared all dist_vec() based comparisons and other dist_vec() operations ↵Ricky Curtice
where sensible. Not all instances of dist_vec() were squared, only those where it wouldn't (hopefully) change the functionality.
2011-02-05Introduces a LLThreadLocalData class that can beAleric Inglewood
accessed through the static LLThread::tldata(). Currently this object contains two (public) thread-local objects: a LLAPRRootPool and a LLVolatileAPRPool. The first is the general memory pool used by this thread (and this thread alone), while the second is intended for short lived memory allocations (needed for APR). The advantages of not mixing those two is that the latter is used most frequently, and as a result of it's nature can be destroyed and reconstructed on a "regular" basis. This patch adds LLAPRPool (completely replacing the old one), which is a wrapper around apr_pool_t* and has complete thread-safity checking. Whenever an apr call requires memory for some resource, a memory pool in the form of an LLAPRPool object can be created with the same life-time as this resource; assuring clean up of the memory no sooner, but also not much later than the life-time of the resource that needs the memory. Many, many function calls and constructors had the pool parameter simply removed (it is no longer the concern of the developer, if you don't write code that actually does an libapr call then you are no longer bothered with memory pools at all). However, I kept the notion of short-lived and long-lived allocations alive (see my remark in the jira here: https://jira.secondlife.com/browse/STORM-864?focusedCommentId=235356&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-235356 which requires that the LLAPRFile API needs to allow the user to specify how long they think a file will stay open. By choosing 'short_lived' as default for the constructor that immediately opens a file, the number of instances where this needs to be specified is drastically reduced however (obviously, any automatic LLAPRFile is short lived). *** Addressed Boroondas remarks in https://codereview.secondlife.com/r/99/ regarding (doxygen) comments. This patch effectively only changes comments. Includes some 'merge' stuff that ended up in llvocache.cpp (while starting as a bug fix, now only resulting in a cleanup). *** Added comment 'The use of apr_pool_t is OK here'. Added this comment on every line where apr_pool_t is correctly being used. This should make it easier to spot (future) errors where someone started to use apr_pool_t; you can just grep all sources for 'apr_pool_t' and immediately see where it's being used while LLAPRPool should have been used. Note that merging this patch is very easy: If there are no other uses of apr_pool_t in the code (one grep) and it compiles, then it will work. *** Second Merge (needed to remove 'delete mCreationMutex' from LLImageDecodeThread::~LLImageDecodeThread). *** Added back #include <apr_pools.h>. Apparently that is needed on libapr version 1.2.8., the version used by Linden Lab, for calls to apr_queue_*. This is a bug in libapr (we also include <apr_queue.h>, that is fixed in (at least) 1.3.7. Note that 1.2.8 is VERY old. Even 1.3.x is old. *** License fixes (GPL -> LGPL). And typo in comments. Addresses merov's comments on the review board. *** Added Merov's compile fixes for windows.
2010-12-13Automated merge up from viewer-developmentLoren Shih
2010-11-15mergeRichard Linden
2010-10-20Automated merge up from viewer-developmentLoren Shih
2010-10-13correct licenses (fix problem with license change merge)Oz Linden
2010-09-27mergeDave Parks
2010-09-24Added the VoiceDisableMic debug setting to completely disable the ability to ↵Monroe Linden
open the mic. Also hoisted PTT key handling from LLVivoxVoiceClient up to LLVoiceClient. This cleans up LLVoiceModuleInterface a bit and makes the PTT logic more centralized. Reviewed by Richard.
2010-09-21Fix for build failures - disabling tcmalloc for nowBrad Payne (Vir Linden)
2010-09-16MergeLeyla Farazha
2010-09-14STORM-121 FIXED Unify clean up of objects on voice client shutdown so that ↵Aimee Linden
it happens consistently.
2010-09-03Post-convert merge by convert_monolith.py from ↵Aimee Linden
/Users/Aimee/Documents/Work/Linden-Lab/Development/viewer/convert/viewer-identity-evolution
2010-08-21CID-370Aimee Linden
Checker: UNINIT_CTOR Function: LLVivoxProtocolParser::LLVivoxProtocolParser() File: /indra/newview/llvoicevivox.cpp
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden