summaryrefslogtreecommitdiff
path: root/indra/newview/llvoicewebrtc.h
diff options
context:
space:
mode:
authorRoxie Linden <roxie@lindenlab.com>2024-02-01 21:53:33 -0800
committerRoxie Linden <roxie@lindenlab.com>2024-02-08 18:35:55 -0800
commit0cd8ad6ebb6e76bfc04cf6c423b0dc586161c6f7 (patch)
treea7fe176001188df619f75db8dd36494252e6c992 /indra/newview/llvoicewebrtc.h
parentecd6b87b195321f522e27e5f62fe33eeaec48b4e (diff)
Hang up when peer hangs up in ad-hoc driven p2p call
Diffstat (limited to 'indra/newview/llvoicewebrtc.h')
-rw-r--r--indra/newview/llvoicewebrtc.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/indra/newview/llvoicewebrtc.h b/indra/newview/llvoicewebrtc.h
index 5ddfbd9ea4..e1a740929b 100644
--- a/indra/newview/llvoicewebrtc.h
+++ b/indra/newview/llvoicewebrtc.h
@@ -144,8 +144,8 @@ public:
// Note that gestures should only fire if this returns true.
bool inProximalChannel() override;
- void setNonSpatialChannel(const std::string& uri, const std::string& credentials) override {
- startAdHocSession(uri, credentials);
+ void setNonSpatialChannel(const std::string& uri, const std::string& credentials, bool hangup_on_last_leave) override {
+ startAdHocSession(uri, credentials, hangup_on_last_leave);
}
bool setSpatialChannel(const std::string &uri, const std::string &credentials) override
@@ -388,6 +388,8 @@ public:
static bool hasSession(const std::string &sessionID)
{ return mSessions.find(sessionID) != mSessions.end(); }
+ bool mHangupOnLastLeave;
+
protected:
sessionState();
std::list<connectionPtr_t> mWebRTCConnections;
@@ -428,7 +430,7 @@ public:
class adhocSessionState : public sessionState
{
public:
- adhocSessionState(const std::string &channelID, const std::string& credentials);
+ adhocSessionState(const std::string &channelID, const std::string& credentials, bool hangup_on_last_leave);
bool isSpatial() override { return false; }
bool isEstate() override { return false; }
@@ -601,7 +603,7 @@ private:
bool startEstateSession();
bool startParcelSession(const std::string& channelID, S32 parcelID);
- bool startAdHocSession(const std::string& channelID, const std::string& credentials);
+ bool startAdHocSession(const std::string& channelID, const std::string& credentials, bool hangup_on_last_leave);
void joinSession(const sessionStatePtr_t &session);