diff options
Diffstat (limited to 'linden/indra/newview/llvoiceclient.cpp')
-rw-r--r-- | linden/indra/newview/llvoiceclient.cpp | 45 |
1 files changed, 27 insertions, 18 deletions
diff --git a/linden/indra/newview/llvoiceclient.cpp b/linden/indra/newview/llvoiceclient.cpp index 3800b4d..da7b840 100644 --- a/linden/indra/newview/llvoiceclient.cpp +++ b/linden/indra/newview/llvoiceclient.cpp | |||
@@ -62,6 +62,7 @@ | |||
62 | #include "llfirstuse.h" | 62 | #include "llfirstuse.h" |
63 | #include "llviewerwindow.h" | 63 | #include "llviewerwindow.h" |
64 | #include "llviewercamera.h" | 64 | #include "llviewercamera.h" |
65 | #include "hippolimits.h" | ||
65 | 66 | ||
66 | #include "llfloaterfriends.h" //VIVOX, inorder to refresh communicate panel | 67 | #include "llfloaterfriends.h" //VIVOX, inorder to refresh communicate panel |
67 | #include "llfloaterchat.h" // for LLFloaterChat::addChat() | 68 | #include "llfloaterchat.h" // for LLFloaterChat::addChat() |
@@ -1524,15 +1525,22 @@ void LLVoiceClient::setState(state inState) | |||
1524 | 1525 | ||
1525 | mState = inState; | 1526 | mState = inState; |
1526 | } | 1527 | } |
1528 | void LLVoiceClient::close() | ||
1529 | { | ||
1530 | setState(stateDisableCleanup); | ||
1531 | } | ||
1532 | |||
1533 | void LLVoiceClient::start() | ||
1534 | { | ||
1535 | setState(stateStart); | ||
1536 | } | ||
1527 | 1537 | ||
1528 | void LLVoiceClient::stateMachine() | 1538 | void LLVoiceClient::stateMachine() |
1529 | { | 1539 | { |
1530 | if(gDisconnected) | 1540 | |
1531 | { | 1541 | // Disable voice as long as the viewer is disconnected from the sim (login/relog) |
1532 | // The viewer has been disconnected from the sim. Disable voice. | 1542 | setVoiceEnabled(!gDisconnected); |
1533 | setVoiceEnabled(false); | 1543 | |
1534 | } | ||
1535 | |||
1536 | if(mVoiceEnabled) | 1544 | if(mVoiceEnabled) |
1537 | { | 1545 | { |
1538 | updatePosition(); | 1546 | updatePosition(); |
@@ -1549,7 +1557,7 @@ void LLVoiceClient::stateMachine() | |||
1549 | if(!mConnected) | 1557 | if(!mConnected) |
1550 | { | 1558 | { |
1551 | // if voice was turned off after the daemon was launched but before we could connect to it, we may need to issue a kill. | 1559 | // if voice was turned off after the daemon was launched but before we could connect to it, we may need to issue a kill. |
1552 | LL_INFOS("Voice") << "Disabling voice before connection to daemon, terminating." << LL_ENDL; | 1560 | LL_WARNS("Voice") << "Disabling voice before connection to daemon, terminating." << LL_ENDL; |
1553 | killGateway(); | 1561 | killGateway(); |
1554 | } | 1562 | } |
1555 | 1563 | ||
@@ -1654,12 +1662,12 @@ void LLVoiceClient::stateMachine() | |||
1654 | //std::string exe_path = gDirUtilp->getAppRODataDir(); | 1662 | //std::string exe_path = gDirUtilp->getAppRODataDir(); |
1655 | std::string exe_path = gDirUtilp->getExecutableDir(); | 1663 | std::string exe_path = gDirUtilp->getExecutableDir(); |
1656 | exe_path += gDirUtilp->getDirDelimiter(); | 1664 | exe_path += gDirUtilp->getDirDelimiter(); |
1665 | #if LL_DARWIN | ||
1666 | exe_path += "../Resources/"; | ||
1667 | #endif | ||
1668 | exe_path += gSavedSettings.getString("VoiceModule"); | ||
1657 | #if LL_WINDOWS | 1669 | #if LL_WINDOWS |
1658 | exe_path += "SLVoice.exe"; | 1670 | exe_path += ".exe"; |
1659 | #elif LL_DARWIN | ||
1660 | exe_path += "../Resources/SLVoice"; | ||
1661 | #else | ||
1662 | exe_path += "SLVoice"; | ||
1663 | #endif | 1671 | #endif |
1664 | // See if the vivox executable exists | 1672 | // See if the vivox executable exists |
1665 | llstat s; | 1673 | llstat s; |
@@ -1687,7 +1695,8 @@ void LLVoiceClient::stateMachine() | |||
1687 | STARTUPINFOA sinfo; | 1695 | STARTUPINFOA sinfo; |
1688 | memset(&sinfo, 0, sizeof(sinfo)); | 1696 | memset(&sinfo, 0, sizeof(sinfo)); |
1689 | std::string exe_dir = gDirUtilp->getAppRODataDir(); | 1697 | std::string exe_dir = gDirUtilp->getAppRODataDir(); |
1690 | cmd = "SLVoice.exe"; | 1698 | cmd = gSavedSettings.getString("VoiceModule"); |
1699 | cmd += ".exe"; | ||
1691 | cmd += args; | 1700 | cmd += args; |
1692 | 1701 | ||
1693 | // So retarded. Windows requires that the second parameter to CreateProcessA be a writable (non-const) string... | 1702 | // So retarded. Windows requires that the second parameter to CreateProcessA be a writable (non-const) string... |
@@ -1753,7 +1762,7 @@ void LLVoiceClient::stateMachine() | |||
1753 | } | 1762 | } |
1754 | else | 1763 | else |
1755 | { | 1764 | { |
1756 | LL_INFOS("Voice") << exe_path << " not found." << LL_ENDL; | 1765 | LL_WARNS("Voice") << exe_path << " not found." << LL_ENDL; |
1757 | mVoiceEnabled = false; | 1766 | mVoiceEnabled = false; |
1758 | } | 1767 | } |
1759 | } | 1768 | } |
@@ -3772,7 +3781,7 @@ void LLVoiceClient::loginResponse(int statusCode, std::string &statusString, std | |||
3772 | if ( statusCode == 401 ) | 3781 | if ( statusCode == 401 ) |
3773 | { | 3782 | { |
3774 | // Login failure which is probably caused by the delay after a user's password being updated. | 3783 | // Login failure which is probably caused by the delay after a user's password being updated. |
3775 | LL_INFOS("Voice") << "Account.Login response failure (" << statusCode << "): " << statusString << LL_ENDL; | 3784 | LL_WARNS("Voice") << "Account.Login response failure (" << statusCode << "): " << statusString << LL_ENDL; |
3776 | setState(stateLoginRetry); | 3785 | setState(stateLoginRetry); |
3777 | } | 3786 | } |
3778 | else if(statusCode != 0) | 3787 | else if(statusCode != 0) |
@@ -3950,7 +3959,7 @@ void LLVoiceClient::sessionAddedEvent( | |||
3950 | } | 3959 | } |
3951 | else | 3960 | else |
3952 | { | 3961 | { |
3953 | LL_INFOS("Voice") << "Could not generate caller id from uri, using hash of uri " << session->mSIPURI << LL_ENDL; | 3962 | LL_WARNS("Voice") << "Could not generate caller id from uri, using hash of uri " << session->mSIPURI << LL_ENDL; |
3954 | setUUIDFromStringHash(session->mCallerID, session->mSIPURI); | 3963 | setUUIDFromStringHash(session->mCallerID, session->mSIPURI); |
3955 | session->mSynthesizedCallerID = true; | 3964 | session->mSynthesizedCallerID = true; |
3956 | 3965 | ||
@@ -4468,7 +4477,7 @@ void LLVoiceClient::participantUpdatedEvent( | |||
4468 | } | 4477 | } |
4469 | else | 4478 | else |
4470 | { | 4479 | { |
4471 | LL_INFOS("Voice") << "unknown session " << sessionHandle << LL_ENDL; | 4480 | LL_WARNS("Voice") << "unknown session " << sessionHandle << LL_ENDL; |
4472 | } | 4481 | } |
4473 | } | 4482 | } |
4474 | 4483 | ||
@@ -5062,7 +5071,7 @@ void LLVoiceClient::parcelChanged() | |||
5062 | else | 5071 | else |
5063 | { | 5072 | { |
5064 | // The transition to stateNoChannel needs to kick this off again. | 5073 | // The transition to stateNoChannel needs to kick this off again. |
5065 | LL_INFOS("Voice") << "not logged in yet, deferring" << LL_ENDL; | 5074 | LL_WARNS("Voice") << "not logged in yet, deferring" << LL_ENDL; |
5066 | } | 5075 | } |
5067 | } | 5076 | } |
5068 | 5077 | ||