summaryrefslogtreecommitdiffstats
path: root/joinpbx.cpp
diff options
context:
space:
mode:
authorSuper User2007-09-15 10:40:29 +0200
committerSuper User2007-09-15 10:40:29 +0200
commit78f7f22944e2473d66b7d1828b24ee415f04e4d8 (patch)
tree3b5d95af71932b93061d870d9b5316ee141e5d4d /joinpbx.cpp
parentadded partyline join and leave jingle option (diff)
downloadlcr-78f7f22944e2473d66b7d1828b24ee415f04e4d8.tar.gz
lcr-78f7f22944e2473d66b7d1828b24ee415f04e4d8.tar.xz
lcr-78f7f22944e2473d66b7d1828b24ee415f04e4d8.zip
fixes for some join-object-release problems
Diffstat (limited to 'joinpbx.cpp')
-rw-r--r--joinpbx.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/joinpbx.cpp b/joinpbx.cpp
index 750705f..ec03dc5 100644
--- a/joinpbx.cpp
+++ b/joinpbx.cpp
@@ -855,6 +855,12 @@ void JoinPBX::message_epoint(unsigned long epoint_id, int message_type, union pa
break;
case RELATION_TYPE_CALLING: /* by calling */
+ /* remove us, if we don't have a called releation yet */
+ if (!j_relation->next)
+ {
+ release(j_relation, LOCATION_PRIVATE_LOCAL, CAUSE_NORMAL);
+ return; // must return, because join IS destroyed
+ }
/* remove all relations that are in called */
release_again2:
reltemp = j_relation;