[asterisk-commits] qwell: trunk r287644 - in /trunk: ./ channels/chan_skinny.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Sep 20 16:30:16 CDT 2010


Author: qwell
Date: Mon Sep 20 16:30:12 2010
New Revision: 287644

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=287644
Log:
Merged revisions 287643 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r287643 | qwell | 2010-09-20 16:29:46 -0500 (Mon, 20 Sep 2010) | 15 lines
  
  Merged revisions 287642 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r287642 | qwell | 2010-09-20 16:28:32 -0500 (Mon, 20 Sep 2010) | 8 lines
    
    Don't crash when parking a non-bridged call.
    
    (closes issue #17680)
    Reported by: jmhunter
    Patches: 
          chan_skinny-park-v1.txt uploaded by DEA (license 3)
    Tested by: jmhunter, DEA
  ........
................

Modified:
    trunk/   (props changed)
    trunk/channels/chan_skinny.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.8-merged' - no diff available.

Modified: trunk/channels/chan_skinny.c
URL: http://svnview.digium.com/svn/asterisk/trunk/channels/chan_skinny.c?view=diff&rev=287644&r1=287643&r2=287644
==============================================================================
--- trunk/channels/chan_skinny.c (original)
+++ trunk/channels/chan_skinny.c Mon Sep 20 16:30:12 2010
@@ -5164,17 +5164,21 @@
 
 		if ((sub && sub->owner) && (sub->owner->_state ==  AST_STATE_UP)){
 			c = sub->owner;
-			if (!ast_masq_park_call(ast_bridged_channel(c), c, 0, &extout)) {
-				snprintf(message, sizeof(message), "Call Parked at: %d", extout);
-				transmit_displaynotify(d, message, 10);
+			if (ast_bridged_channel(c)) {
+				if (!ast_masq_park_call(ast_bridged_channel(c), c, 0, &extout)) {
+					snprintf(message, sizeof(message), "Call Parked at: %d", extout);
+					transmit_displaynotify(d, message, 10);
+				} else {
+					transmit_displaynotify(d, "Call Park failed", 10);
+				}
 			} else {
-				transmit_displaynotify(d, "Call Park failed", 10);
+				transmit_displaynotify(d, "Call Park not available", 10);
 			}
 		} else {
 			transmit_displaynotify(d, "Call Park not available", 10);
 		}
-		}
-		break;
+		break;
+		}
 	case STIMULUS_DND:
 		if (skinnydebug)
 			ast_verb(1, "Received Stimulus: DND (%d/%d)\n", instance, callreference);
@@ -6056,17 +6060,21 @@
 
 		if ((sub && sub->owner) && (sub->owner->_state ==  AST_STATE_UP)){
 			c = sub->owner;
-			if (!ast_masq_park_call(ast_bridged_channel(c), c, 0, &extout)) {
-				snprintf(message, sizeof(message), "Call Parked at: %d", extout);
-				transmit_displaynotify(d, message, 10);
+			if (ast_bridged_channel(c)) {
+				if (!ast_masq_park_call(ast_bridged_channel(c), c, 0, &extout)) {
+					snprintf(message, sizeof(message), "Call Parked at: %d", extout);
+					transmit_displaynotify(d, message, 10);
+				} else {
+					transmit_displaynotify(d, "Call Park failed", 10);
+				}
 			} else {
-				transmit_displaynotify(d, "Call Park failed", 10);
+				transmit_displaynotify(d, "Call Park not available", 10);
 			}
 		} else {
 			transmit_displaynotify(d, "Call Park not available", 10);
 		}
-		}
-		break;
+		break;
+		}
 	case SOFTKEY_JOIN:
 		if (skinnydebug)
 			ast_verb(1, "Received Softkey Event: Join(%d/%d)\n", instance, callreference);




More information about the asterisk-commits mailing list