[Asterisk-code-review] app confbridge: Make sure name recordings are always removed... (asterisk[14])

Sergej Kasumovic asteriskteam at digium.com
Fri Jul 14 01:29:31 CDT 2017


Sergej Kasumovic has uploaded this change for review. ( https://gerrit.asterisk.org/6021


Change subject: app_confbridge: Make sure name recordings are always removed from the filesystem
......................................................................

app_confbridge: Make sure name recordings are always removed from the filesystem

This commit fixes two possible scenarios:

* When recording name and if during recording you hangup, file is never
removed. This is due to the fact file location is nulled.
* When recording name and if you hangup during thank-you prompt, file
is never removed.

ASTERISK-27123 #close

Change-Id: I39b7271408b4b54ce880c5111a886aa8f28c2625
---
M apps/app_confbridge.c
1 file changed, 6 insertions(+), 1 deletion(-)



  git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/21/6021/1

diff --git a/apps/app_confbridge.c b/apps/app_confbridge.c
index e2a35ff..cd9b2c9 100644
--- a/apps/app_confbridge.c
+++ b/apps/app_confbridge.c
@@ -2140,6 +2140,7 @@
 	}
 
 	if (res == -1) {
+		ast_filedelete(user->name_rec_location, NULL);
 		user->name_rec_location[0] = '\0';
 		return -1;
 	}
@@ -2230,7 +2231,7 @@
 static int confbridge_exec(struct ast_channel *chan, const char *data)
 {
 	int res = 0, volume_adjustments[2];
-	int quiet = 0;
+	int quiet = 0, async_delete_task_pushed = 0;
 	char *parse;
 	const char *b_profile_name = NULL;
 	const char *u_profile_name = NULL;
@@ -2476,6 +2477,7 @@
 		async_play_sound_file(conference,
 			conf_get_sound(CONF_SOUND_HAS_LEFT, conference->b_profile.sounds), NULL);
 		async_delete_name_rec(conference, user.name_rec_location);
+		async_delete_task_pushed = 1;
 	}
 
 	/* play the leave sound */
@@ -2504,6 +2506,9 @@
 	}
 
 confbridge_cleanup:
+	if (!async_delete_task_pushed && !ast_strlen_zero(user.name_rec_location)) {
+		ast_filedelete(user.name_rec_location, NULL);
+	}
 	ast_bridge_features_cleanup(&user.features);
 	conf_bridge_profile_destroy(&user.b_profile);
 	return res;

-- 
To view, visit https://gerrit.asterisk.org/6021
To unsubscribe, visit https://gerrit.asterisk.org/settings

Gerrit-Project: asterisk
Gerrit-Branch: 14
Gerrit-MessageType: newchange
Gerrit-Change-Id: I39b7271408b4b54ce880c5111a886aa8f28c2625
Gerrit-Change-Number: 6021
Gerrit-PatchSet: 1
Gerrit-Owner: Sergej Kasumovic <sergej at bicomsystems.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20170714/d8a66e66/attachment-0001.html>


More information about the asterisk-code-review mailing list