[Pkg-voip-commits] r8931 - in /asterisk/trunk/debian: changelog patches/gcc46 patches/series

tzafrir at alioth.debian.org tzafrir at alioth.debian.org
Wed May 11 01:08:11 UTC 2011


Author: tzafrir
Date: Wed May 11 01:08:09 2011
New Revision: 8931

URL: http://svn.debian.org/wsvn/pkg-voip/?sc=1&rev=8931
Log:
Patch gcc46: Some gcc-4.6 fixes from upstream. Get rid of some
build warnings.

Added:
    asterisk/trunk/debian/patches/gcc46
Modified:
    asterisk/trunk/debian/changelog
    asterisk/trunk/debian/patches/series

Modified: asterisk/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/changelog?rev=8931&op=diff
==============================================================================
--- asterisk/trunk/debian/changelog (original)
+++ asterisk/trunk/debian/changelog Wed May 11 01:08:09 2011
@@ -13,6 +13,8 @@
     - And logic added to rules file not to copy their files on non-linux.
     - Patch kfreebsd: Fix building with kFreeBSD.
     - Patch no_uname: Fix building with kFreeBSD: an uglier patch.
+  * Patch gcc46: Some gcc-4.6 fixes from upstream. Get rid of some
+    build warnings.
 
  -- Tzafrir Cohen <tzafrir at debian.org>  Tue, 03 May 2011 17:23:47 +0300
 

Added: asterisk/trunk/debian/patches/gcc46
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/patches/gcc46?rev=8931&op=file
==============================================================================
--- asterisk/trunk/debian/patches/gcc46 (added)
+++ asterisk/trunk/debian/patches/gcc46 Wed May 11 01:08:09 2011
@@ -1,0 +1,1292 @@
+From: Russell Bryant <russell at digium.com>
+Date: Tue, 3 May 2011 19:55:49 +0000
+Subject: Fix a bunch of compiler warnings generated by gcc 4.6.0.
+
+Most of these are -Wunused-but-set-variable, but there were a few others
+mixed in here, as well.
+
+This is a patch from upstream and will be included in 1.8.5 or 1.8.6.
+
+Origin: http://svnview.digium.com/svn/asterisk?view=rev&rev=316265
+---
+ apps/app_amd.c                 |    3 ---
+ apps/app_festival.c            |    8 --------
+ apps/app_followme.c            |    2 --
+ apps/app_ices.c                |    3 ---
+ apps/app_minivm.c              |   24 ++++++++++++++----------
+ apps/app_originate.c           |    5 ++---
+ apps/app_queue.c               |    5 ++---
+ apps/app_voicemail.c           |    2 --
+ channels/chan_agent.c          |    8 +-------
+ channels/chan_phone.c          |   10 ++++------
+ channels/chan_skinny.c         |   23 +++--------------------
+ channels/chan_unistim.c        |    4 +---
+ codecs/lpc10/dyptrk.c          |    3 +--
+ formats/format_wav.c           |    3 +--
+ funcs/func_enum.c              |    6 ++----
+ include/asterisk/linkedlists.h |    3 ++-
+ main/asterisk.c                |    9 ++++-----
+ main/audiohook.c               |   18 ++++++------------
+ main/cdr.c                     |   11 -----------
+ main/channel.c                 |    3 +--
+ main/config.c                  |    3 +--
+ main/dsp.c                     |    2 --
+ main/features.c                |   11 ++---------
+ main/fskmodem_float.c          |    5 +----
+ main/manager.c                 |    2 +-
+ main/pbx.c                     |    7 +++----
+ main/plc.c                     |    2 --
+ main/rtp_engine.c              |   18 ++++++------------
+ main/udptl.c                   |    2 --
+ pbx/pbx_config.c               |    7 +------
+ res/res_agi.c                  |   11 +++++------
+ res/res_calendar.c             |    7 +++----
+ res/res_fax.c                  |   12 +++---------
+ res/res_musiconhold.c          |    4 ----
+ 34 files changed, 70 insertions(+), 176 deletions(-)
+
+diff --git a/apps/app_amd.c b/apps/app_amd.c
+index c978ce0..8e2d644 100644
+--- a/apps/app_amd.c
++++ b/apps/app_amd.c
+@@ -156,7 +156,6 @@ static void isAnsweringMachine(struct ast_channel *chan, const char *data)
+ 	int iTotalTime = 0;
+ 	int iWordsCount = 0;
+ 	int currentState = STATE_IN_WORD;
+-	int previousState = STATE_IN_SILENCE;
+ 	int consecutiveVoiceDuration = 0;
+ 	char amdCause[256] = "", amdStatus[256] = "";
+ 	char *parse = ast_strdupa(data);
+@@ -301,7 +300,6 @@ static void isAnsweringMachine(struct ast_channel *chan, const char *data)
+ 				
+ 				if (silenceDuration >= betweenWordsSilence) {
+ 					if (currentState != STATE_IN_SILENCE ) {
+-						previousState = currentState;
+ 						ast_verb(3, "AMD: Channel [%s]. Changed state to STATE_IN_SILENCE\n", chan->name);
+ 					}
+ 					/* Find words less than word duration */
+@@ -341,7 +339,6 @@ static void isAnsweringMachine(struct ast_channel *chan, const char *data)
+ 				if (consecutiveVoiceDuration >= minimumWordLength && currentState == STATE_IN_SILENCE) {
+ 					iWordsCount++;
+ 					ast_verb(3, "AMD: Channel [%s]. Word detected. iWordsCount:%d\n", chan->name, iWordsCount);
+-					previousState = currentState;
+ 					currentState = STATE_IN_WORD;
+ 				}
+ 				if (consecutiveVoiceDuration >= maximumWordLength){
+diff --git a/apps/app_festival.c b/apps/app_festival.c
+index ef8827a..2ab5616 100644
+--- a/apps/app_festival.c
++++ b/apps/app_festival.c
+@@ -163,7 +163,6 @@ static int send_waveform_to_channel(struct ast_channel *chan, char *waveform, in
+ {
+ 	int res = 0;
+ 	int fds[2];
+-	int pid = -1;
+ 	int needed = 0;
+ 	int owriteformat;
+ 	struct ast_frame *f;
+@@ -195,7 +194,6 @@ static int send_waveform_to_channel(struct ast_channel *chan, char *waveform, in
+ 	
+ 	res = send_waveform_to_fd(waveform, length, fds[1]);
+ 	if (res >= 0) {
+-		pid = res;
+ 		/* Order is important -- there's almost always going to be mp3...  we want to prioritize the
+ 		   user */
+ 		for (;;) {
+@@ -257,10 +255,6 @@ static int send_waveform_to_channel(struct ast_channel *chan, char *waveform, in
+ 	close(fds[0]);
+ 	close(fds[1]);
+ 
+-#if 0
+-	if (pid > -1)
+-		kill(pid, SIGKILL);
+-#endif
+ 	if (!res && owriteformat)
+ 		ast_set_write_format(chan, owriteformat);
+ 	return res;
+@@ -284,7 +278,6 @@ static int festival_exec(struct ast_channel *chan, const char *vdata)
+ 	char ack[4];
+ 	char *waveform;
+ 	int filesize;
+-	int wave;
+ 	char bigstring[MAXFESTLEN];
+ 	int i;
+ 	struct MD5Context md5ctx;
+@@ -493,7 +486,6 @@ static int festival_exec(struct ast_channel *chan, const char *vdata)
+ 
+ 	/* Read back info from server */
+ 	/* This assumes only one waveform will come back, also LP is unlikely */
+-	wave = 0;
+ 	do {
+ 		int read_data;
+ 		for (n = 0; n < 3; ) {
+diff --git a/apps/app_followme.c b/apps/app_followme.c
+index a71a683..941da52 100644
+--- a/apps/app_followme.c
++++ b/apps/app_followme.c
+@@ -790,7 +790,6 @@ static void findmeexec(struct fm_args *tpargs)
+ 	char *rest, *number;
+ 	struct findme_user *tmpuser;
+ 	struct findme_user *fmuser;
+-	struct findme_user *headuser;
+ 	struct findme_user_listptr *findme_user_list;
+ 	int status;
+ 
+@@ -901,7 +900,6 @@ static void findmeexec(struct fm_args *tpargs)
+ 
+ 		fmuser = NULL;
+ 		tmpuser = NULL;
+-		headuser = NULL;
+ 		if (winner)
+ 			break;
+ 
+diff --git a/apps/app_ices.c b/apps/app_ices.c
+index f2b9498..cfe4296 100644
+--- a/apps/app_ices.c
++++ b/apps/app_ices.c
+@@ -112,7 +112,6 @@ static int ices_exec(struct ast_channel *chan, const char *data)
+ 	int pid = -1;
+ 	int flags;
+ 	int oreadformat;
+-	struct timeval last;
+ 	struct ast_frame *f;
+ 	char filename[256]="";
+ 	char *c;
+@@ -122,8 +121,6 @@ static int ices_exec(struct ast_channel *chan, const char *data)
+ 		return -1;
+ 	}
+ 	
+-	last = ast_tv(0, 0);
+-	
+ 	if (pipe(fds)) {
+ 		ast_log(LOG_WARNING, "Unable to create pipe\n");
+ 		return -1;
+diff --git a/apps/app_minivm.c b/apps/app_minivm.c
+index 5537369..196f8fc 100644
+--- a/apps/app_minivm.c
++++ b/apps/app_minivm.c
+@@ -1266,13 +1266,22 @@ static int sendmail(struct minivm_template *template, struct minivm_account *vmu
+ 		char tmpcmd[PATH_MAX];
+ 		int tmpfd;
+ 
++		/**
++		 * XXX
++		 * /bug tmpfd is a leaked fd.  The file is also never unlinked.
++		 *      See app_voicemail.c for how the code works there that
++		 *      doesn't have this bug.
++		 */
++
+ 		ast_copy_string(newtmp, "/tmp/XXXXXX", sizeof(newtmp));
+ 		ast_debug(3, "newtmp: %s\n", newtmp);
+ 		tmpfd = mkstemp(newtmp);
+-		snprintf(tmpcmd, sizeof(tmpcmd), "sox -v %.4f %s.%s %s.%s", vmu->volgain, filename, format, newtmp, format);
+-		ast_safe_system(tmpcmd);
+-		finalfilename = newtmp;
+-		ast_debug(3, "VOLGAIN: Stored at: %s.%s - Level: %.4f - Mailbox: %s\n", filename, format, vmu->volgain, vmu->username);
++		if (tmpfd > -1) {
++			snprintf(tmpcmd, sizeof(tmpcmd), "sox -v %.4f %s.%s %s.%s", vmu->volgain, filename, format, newtmp, format);
++			ast_safe_system(tmpcmd);
++			finalfilename = newtmp;
++			ast_debug(3, "VOLGAIN: Stored at: %s.%s - Level: %.4f - Mailbox: %s\n", filename, format, vmu->volgain, vmu->username);
++		}
+ 	} else {
+ 		finalfilename = ast_strdupa(filename);
+ 	}
+@@ -1828,7 +1837,6 @@ static int leave_voicemail(struct ast_channel *chan, char *username, struct leav
+ 	char callerid[256];
+ 	FILE *txt;
+ 	int res = 0, txtdes;
+-	int msgnum;
+ 	int duration = 0;
+ 	char date[256];
+ 	char tmpdir[PATH_MAX];
+@@ -1871,7 +1879,6 @@ static int leave_voicemail(struct ast_channel *chan, char *username, struct leav
+ 		pbx_builtin_setvar_helper(chan, "MVM_RECORD_STATUS", "FAILED");
+ 		return res;
+ 	}
+-	msgnum = 0;
+ 
+ 	userdir = check_dirpath(tmpdir, sizeof(tmpdir), vmu->domain, username, "tmp");
+ 
+@@ -2452,7 +2459,6 @@ static int minivm_accmess_exec(struct ast_channel *chan, const char *data)
+ 	char *message = NULL;
+ 	char *prompt = NULL;
+ 	int duration;
+-	int cmd;
+ 
+ 	if (ast_strlen_zero(data))  {
+ 		ast_log(LOG_ERROR, "MinivmAccmess needs at least two arguments: account and option\n");
+@@ -2526,7 +2532,7 @@ static int minivm_accmess_exec(struct ast_channel *chan, const char *data)
+ 	}
+ 	snprintf(filename,sizeof(filename), "%s%s/%s/%s", MVM_SPOOL_DIR, vmu->domain, vmu->username, message);
+ 	/* Maybe we should check the result of play_record_review ? */
+-	cmd = play_record_review(chan, prompt, filename, global_maxgreet, default_vmformat, 0, vmu, &duration, NULL, FALSE);
++	play_record_review(chan, prompt, filename, global_maxgreet, default_vmformat, 0, vmu, &duration, NULL, FALSE);
+ 
+ 	ast_debug(1, "Recorded new %s message in %s (duration %d)\n", message, filename, duration);
+ 
+@@ -3238,12 +3244,10 @@ static int minivm_account_func_read(struct ast_channel *chan, const char *cmd, c
+ 		check_dirpath(buf, len, vmu->domain, vmu->username, NULL);
+ 	} else {	/* Look in channel variables */
+ 		struct ast_variable *var;
+-		int found = 0;
+ 
+ 		for (var = vmu->chanvars ; var ; var = var->next)
+ 			if (!strcmp(var->name, colname)) {
+ 				ast_copy_string(buf, var->value, len);
+-				found = 1;
+ 				break;
+ 			}
+ 	}
+diff --git a/apps/app_originate.c b/apps/app_originate.c
+index 659ea29..3d2594d 100644
+--- a/apps/app_originate.c
++++ b/apps/app_originate.c
+@@ -101,7 +101,6 @@ static int originate_exec(struct ast_channel *chan, const char *data)
+ 	char *parse;
+ 	char *chantech, *chandata;
+ 	int res = -1;
+-	int outgoing_res = 0;
+ 	int outgoing_status = 0;
+ 	static const unsigned int timeout = 30;
+ 	static const char default_exten[] = "s";
+@@ -148,14 +147,14 @@ static int originate_exec(struct ast_channel *chan, const char *data)
+ 		ast_debug(1, "Originating call to '%s/%s' and connecting them to extension %s,%s,%d\n",
+ 				chantech, chandata, args.arg1, exten, priority);
+ 
+-		outgoing_res = ast_pbx_outgoing_exten(chantech, AST_FORMAT_SLINEAR, chandata,
++		ast_pbx_outgoing_exten(chantech, AST_FORMAT_SLINEAR, chandata,
+ 				timeout * 1000, args.arg1, exten, priority, &outgoing_status, 0, NULL,
+ 				NULL, NULL, NULL, NULL);
+ 	} else if (!strcasecmp(args.type, "app")) {
+ 		ast_debug(1, "Originating call to '%s/%s' and connecting them to %s(%s)\n",
+ 				chantech, chandata, args.arg1, S_OR(args.arg2, ""));
+ 
+-		outgoing_res = ast_pbx_outgoing_app(chantech, AST_FORMAT_SLINEAR, chandata,
++		ast_pbx_outgoing_app(chantech, AST_FORMAT_SLINEAR, chandata,
+ 				timeout * 1000, args.arg1, args.arg2, &outgoing_status, 0, NULL,
+ 				NULL, NULL, NULL, NULL);
+ 	} else {
+diff --git a/apps/app_queue.c b/apps/app_queue.c
+index 465356e..48e30b0 100644
+--- a/apps/app_queue.c
++++ b/apps/app_queue.c
+@@ -4323,7 +4323,6 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
+ 	char *agiexec = NULL;
+ 	char *macroexec = NULL;
+ 	char *gosubexec = NULL;
+-	int ret = 0;
+ 	const char *monitorfilename;
+ 	const char *monitor_exec;
+ 	const char *monitor_options;
+@@ -4838,7 +4837,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
+ 					/* We purposely lock the CDR so that pbx_exec does not update the application data */
+ 					if (qe->chan->cdr)
+ 						ast_set_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED);
+-					ret = pbx_exec(qe->chan, mixmonapp, mixmonargs);
++					pbx_exec(qe->chan, mixmonapp, mixmonargs);
+ 					if (qe->chan->cdr)
+ 						ast_clear_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED);
+ 
+@@ -4970,7 +4969,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
+ 			application = pbx_findapp("agi");
+ 			if (application) {
+ 				agiexec = ast_strdupa(agi);
+-				ret = pbx_exec(qe->chan, application, agiexec);
++				pbx_exec(qe->chan, application, agiexec);
+ 			} else
+ 				ast_log(LOG_WARNING, "Asked to execute an AGI on this channel, but could not find application (agi)!\n");
+ 		}
+diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
+index fcbba79..051b409 100644
+--- a/apps/app_voicemail.c
++++ b/apps/app_voicemail.c
+@@ -7071,7 +7071,6 @@ static int forward_message(struct ast_channel *chan, char *context, struct vm_st
+ 	char *dir;
+ 	int curmsg;
+ 	char urgent_str[7] = "";
+-	char tmptxtfile[PATH_MAX];
+ 	int prompt_played = 0;
+ #ifndef IMAP_STORAGE
+ 	char msgfile[PATH_MAX], textfile[PATH_MAX], backup[PATH_MAX], backup_textfile[PATH_MAX];
+@@ -7084,7 +7083,6 @@ static int forward_message(struct ast_channel *chan, char *context, struct vm_st
+ 	dir = vms->curdir;
+ 	curmsg = vms->curmsg;
+ 
+-	tmptxtfile[0] = '\0';
+ 	while (!res && !valid_extensions) {
+ 		int use_directory = 0;
+ 		if (ast_test_flag((&globalflags), VM_DIRECFORWARD)) {
+diff --git a/channels/chan_agent.c b/channels/chan_agent.c
+index 09b1430..ad330aa 100644
+--- a/channels/chan_agent.c
++++ b/channels/chan_agent.c
+@@ -886,7 +886,6 @@ int agent_set_base_channel(struct ast_channel *chan, struct ast_channel *base)
+ static int agent_hangup(struct ast_channel *ast)
+ {
+ 	struct agent_pvt *p = ast->tech_pvt;
+-	int howlong = 0;
+ 
+ 	ast_mutex_lock(&p->lock);
+ 	p->owner = NULL;
+@@ -907,11 +906,8 @@ static int agent_hangup(struct ast_channel *ast)
+ 
+ 	ast_debug(1, "Hangup called for state %s\n", ast_state2str(ast->_state));
+ 	if (p->start && (ast->_state != AST_STATE_UP)) {
+-		howlong = time(NULL) - p->start;
+ 		p->start = 0;
+-	} else if (ast->_state == AST_STATE_RESERVED) 
+-		howlong = 0;
+-	else
++	} else
+ 		p->start = 0; 
+ 	if (p->chan) {
+ 		p->chan->_bridge = NULL;
+@@ -1855,7 +1851,6 @@ static int login_exec(struct ast_channel *chan, const char *data)
+ 	int max_login_tries = maxlogintries;
+ 	struct agent_pvt *p;
+ 	struct ast_module_user *u;
+-	int login_state = 0;
+ 	char user[AST_MAX_AGENT] = "";
+ 	char pass[AST_MAX_AGENT];
+ 	char agent[AST_MAX_AGENT] = "";
+@@ -1949,7 +1944,6 @@ static int login_exec(struct ast_channel *chan, const char *data)
+ 			ast_mutex_lock(&p->lock);
+ 			if (!strcmp(p->agent, user) &&
+ 			    !strcmp(p->password, pass) && !p->pending) {
+-				login_state = 1; /* Successful Login */
+ 
+ 				/* Ensure we can't be gotten until we're done */
+ 				p->lastdisc = ast_tvnow();
+diff --git a/channels/chan_phone.c b/channels/chan_phone.c
+index 531b95c..c857924 100644
+--- a/channels/chan_phone.c
++++ b/channels/chan_phone.c
+@@ -296,12 +296,10 @@ static int phone_call(struct ast_channel *ast, char *dest, int timeout)
+ 	ast_localtime(&UtcTime, &tm, NULL);
+ 
+ 	memset(&cid, 0, sizeof(PHONE_CID));
+-	if(&tm != NULL) {
+-		snprintf(cid.month, sizeof(cid.month), "%02d",(tm.tm_mon + 1));
+-		snprintf(cid.day, sizeof(cid.day),     "%02d", tm.tm_mday);
+-		snprintf(cid.hour, sizeof(cid.hour),   "%02d", tm.tm_hour);
+-		snprintf(cid.min, sizeof(cid.min),     "%02d", tm.tm_min);
+-	}
++    snprintf(cid.month, sizeof(cid.month), "%02d",(tm.tm_mon + 1));
++    snprintf(cid.day, sizeof(cid.day),     "%02d", tm.tm_mday);
++    snprintf(cid.hour, sizeof(cid.hour),   "%02d", tm.tm_hour);
++    snprintf(cid.min, sizeof(cid.min),     "%02d", tm.tm_min);
+ 	/* the standard format of ast->callerid is:  "name" <number>, but not always complete */
+ 	if (!ast->connected.id.name.valid
+ 		|| ast_strlen_zero(ast->connected.id.name.str)) {
+diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c
+index 9fea7cb..59a61f6 100644
+--- a/channels/chan_skinny.c
++++ b/channels/chan_skinny.c
+@@ -3482,8 +3482,6 @@ static int manager_skinny_show_lines(struct mansession *s, const struct message
+ 
+ static char *handle_skinny_show_lines(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
+ {
+-	int verbose = 0;
+-
+ 	switch (cmd) {
+ 	case CLI_INIT:
+ 		e->command = "skinny show lines [verbose]";
+@@ -3498,9 +3496,7 @@ static char *handle_skinny_show_lines(struct ast_cli_entry *e, int cmd, struct a
+ 	}
+ 
+ 	if (a->argc == e->args) {
+-		if (!strcasecmp(a->argv[e->args-1], "verbose")) {
+-			verbose = 1;
+-		} else {
++		if (strcasecmp(a->argv[e->args-1], "verbose")) {
+ 			return CLI_SHOWUSAGE;
+ 		}
+ 	} else if (a->argc != e->args - 1) {
+@@ -3913,7 +3909,6 @@ static void *skinny_ss(void *data)
+ static int skinny_call(struct ast_channel *ast, char *dest, int timeout)
+ {
+ 	int res = 0;
+-	int tone = 0;
+ 	struct skinny_subchannel *sub = ast->tech_pvt;
+ 	struct skinny_line *l = sub->parent;
+ 	struct skinny_device *d = l->device;
+@@ -3943,10 +3938,8 @@ static int skinny_call(struct ast_channel *ast, char *dest, int timeout)
+ 	
+ 	switch (l->hookstate) {
+ 	case SKINNY_OFFHOOK:
+-		tone = SKINNY_CALLWAITTONE;
+ 		break;
+ 	case SKINNY_ONHOOK:
+-		tone = SKINNY_ALERT;
+ 		l->activesub = sub;
+ 		break;
+ 	default:
+@@ -3975,7 +3968,6 @@ static int skinny_hangup(struct ast_channel *ast)
+ 	struct skinny_subchannel *sub = ast->tech_pvt;
+ 	struct skinny_line *l;
+ 	struct skinny_device *d;
+-	struct skinnysession *s;
+ 
+ 	if (!sub) {
+ 		ast_debug(1, "Asked to hangup channel not connected\n");
+@@ -3984,7 +3976,6 @@ static int skinny_hangup(struct ast_channel *ast)
+ 
+ 	l = sub->parent;
+ 	d = l->device;
+-	s = d->session;
+ 
+ 	if (skinnydebug)
+ 		ast_verb(3,"Hanging up %s/%d\n",d->name,sub->callid);
+@@ -5300,7 +5291,6 @@ static int handle_offhook_message(struct skinny_req *req, struct skinnysession *
+ 	struct skinny_line *tmp;
+ 	pthread_t t;
+ 	int instance;
+-	int reference;
+ 
+ 	/* if any line on a device is offhook, than the device must be offhook, 
+ 	   unless we have shared lines CCM seems that it would never get here, 
+@@ -5316,7 +5306,6 @@ static int handle_offhook_message(struct skinny_req *req, struct skinnysession *
+ 	}
+ 
+ 	instance = letohl(req->data.offhook.instance);
+-	reference = letohl(req->data.offhook.reference);
+ 
+ 	if (instance) {
+ 		sub = find_subchannel_by_instance_reference(d, d->lastlineinstance, d->lastcallreference);
+@@ -6629,15 +6618,11 @@ static int skinny_devicestate(void *data)
+ 
+ static struct ast_channel *skinny_request(const char *type, format_t format, const struct ast_channel *requestor, void *data, int *cause)
+ {
+-	format_t oldformat;
+-	
+ 	struct skinny_line *l;
+ 	struct ast_channel *tmpc = NULL;
+ 	char tmp[256];
+ 	char *dest = data;
+ 
+-	oldformat = format;
+-	
+ 	if (!(format &= AST_FORMAT_AUDIO_MASK)) {
+ 		ast_log(LOG_NOTICE, "Asked to get a channel of unsupported format '%s'\n", ast_getformatname_multiple(tmp, sizeof(tmp), format));
+ 		return NULL;
+@@ -7218,8 +7203,6 @@ static struct ast_channel *skinny_request(const char *type, format_t format, con
+   	int on = 1;
+   	struct ast_config *cfg;
+   	char *cat;
+-  	struct skinny_device *d;
+- 	struct skinny_line *l;
+   	int oldport = ntohs(bindaddr.sin_port);
+   	struct ast_flags config_flags = { 0 };
+  	
+@@ -7268,7 +7251,7 @@ static struct ast_channel *skinny_request(const char *type, format_t format, con
+ 	config_parse_variables(TYPE_DEF_LINE, default_line, ast_variable_browse(cfg, "lines"));
+ 	cat = ast_category_browse(cfg, "lines");
+ 	while (cat && strcasecmp(cat, "general") && strcasecmp(cat, "devices")) {
+-		l = config_line(cat, ast_variable_browse(cfg, cat));
++		config_line(cat, ast_variable_browse(cfg, cat));
+ 		cat = ast_category_browse(cfg, cat);
+ 	}
+ 		
+@@ -7278,7 +7261,7 @@ static struct ast_channel *skinny_request(const char *type, format_t format, con
+ 	config_parse_variables(TYPE_DEF_DEVICE, default_device, ast_variable_browse(cfg, "devices"));
+ 	cat = ast_category_browse(cfg, "devices");
+ 	while (cat && strcasecmp(cat, "general") && strcasecmp(cat, "lines")) {
+-		d = config_device(cat, ast_variable_browse(cfg, cat));
++		config_device(cat, ast_variable_browse(cfg, cat));
+ 		cat = ast_category_browse(cfg, cat);
+ 	}
+ 
+diff --git a/channels/chan_unistim.c b/channels/chan_unistim.c
+index 3908207..509d1de 100644
+--- a/channels/chan_unistim.c
++++ b/channels/chan_unistim.c
+@@ -1892,7 +1892,7 @@ static int attempt_transfer(struct unistim_subchannel *p1, struct unistim_subcha
+ 	int res = 0;
+ 	struct ast_channel
+ 	 *chana = NULL, *chanb = NULL, *bridgea = NULL, *bridgeb = NULL, *peera =
+-		NULL, *peerb = NULL, *peerc = NULL, *peerd = NULL;
++		NULL, *peerb = NULL, *peerc = NULL;
+ 
+ 	if (!p1->owner || !p2->owner) {
+ 		ast_log(LOG_WARNING, "Transfer attempted without dual ownership?\n");
+@@ -1907,12 +1907,10 @@ static int attempt_transfer(struct unistim_subchannel *p1, struct unistim_subcha
+ 		peera = chana;
+ 		peerb = chanb;
+ 		peerc = bridgea;
+-		peerd = bridgeb;
+ 	} else if (bridgeb) {
+ 		peera = chanb;
+ 		peerb = chana;
+ 		peerc = bridgeb;
+-		peerd = bridgea;
+ 	}
+ 
+ 	if (peera && peerb && peerc && (peerb != peerc)) {
+diff --git a/codecs/lpc10/dyptrk.c b/codecs/lpc10/dyptrk.c
+index 216b559..45fb5eb 100644
+--- a/codecs/lpc10/dyptrk.c
++++ b/codecs/lpc10/dyptrk.c
+@@ -143,7 +143,7 @@ extern struct {
+     /* Local variables */
+     integer pbar;
+     real sbar;
+-    integer path[2], iptr, i__, j;
++    integer iptr, i__, j;
+     real alpha, minsc, maxsc;
+ 
+ /*       Arguments */
+@@ -389,7 +389,6 @@ n*/
+     for (i__ = 1; i__ <= 2; ++i__) {
+ 	j = j % 2 + 1;
+ 	*pitch = p[*pitch + j * 60 - 61];
+-	path[i__ - 1] = *pitch;
+     }
+ 
+ /*       The following statement subtracts one from IPOINT, mod DEPTH.  I 
+diff --git a/formats/format_wav.c b/formats/format_wav.c
+index baeaf45..fdd6e14 100644
+--- a/formats/format_wav.c
++++ b/formats/format_wav.c
+@@ -355,7 +355,6 @@ static struct ast_frame *wav_read(struct ast_filestream *s, int *whennext)
+ #if __BYTE_ORDER == __BIG_ENDIAN
+ 	int x;
+ #endif
+-	short *tmp;
+ 	int bytes;
+ 	off_t here;
+ 	/* Send a frame from the file to the appropriate channel */
+@@ -382,8 +381,8 @@ static struct ast_frame *wav_read(struct ast_filestream *s, int *whennext)
+ 	s->fr.datalen = res;
+ 	s->fr.samples = samples = res / 2;
+ 
+-	tmp = (short *)(s->fr.data.ptr);
+ #if __BYTE_ORDER == __BIG_ENDIAN
++	tmp = (short *)(s->fr.data.ptr);
+ 	/* file format is little endian so we need to swap */
+ 	for( x = 0; x < samples; x++)
+ 		tmp[x] = (tmp[x] << 8) | ((tmp[x] & 0xff00) >> 8);
+diff --git a/funcs/func_enum.c b/funcs/func_enum.c
+index 378187e..d8c8b25 100644
+--- a/funcs/func_enum.c
++++ b/funcs/func_enum.c
+@@ -161,7 +161,6 @@ static int function_enum(struct ast_channel *chan, const char *cmd, char *data,
+ 		AST_APP_ARG(record);
+ 		AST_APP_ARG(zone);
+ 	);
+-	int res = 0;
+ 	char tech[80];
+ 	char dest[256] = "", tmp[2] = "", num[AST_MAX_EXTENSION] = "";
+ 	char *s, *p;
+@@ -205,7 +204,7 @@ static int function_enum(struct ast_channel *chan, const char *cmd, char *data,
+ 		}
+ 
+ 	}
+-	res = ast_get_enum(chan, num, dest, sizeof(dest), tech, sizeof(tech), args.zone, args.options, record, NULL);
++	ast_get_enum(chan, num, dest, sizeof(dest), tech, sizeof(tech), args.zone, args.options, record, NULL);
+ 
+ 	p = strchr(dest, ':');
+ 	if (p && strcasecmp(tech, "ALL") && !strchr(args.options, 'u')) {
+@@ -414,7 +413,6 @@ static struct ast_custom_function enum_function = {
+ static int function_txtcidname(struct ast_channel *chan, const char *cmd,
+ 			       char *data, char *buf, size_t len)
+ {
+-	int res;
+ 	AST_DECLARE_APP_ARGS(args,
+ 		AST_APP_ARG(number);
+ 		AST_APP_ARG(zone);
+@@ -438,7 +436,7 @@ static int function_txtcidname(struct ast_channel *chan, const char *cmd,
+ 		args.zone = "e164.arpa";
+ 	}
+ 
+-	res = ast_get_txt(chan, args.number, buf, len, args.zone);
++	ast_get_txt(chan, args.number, buf, len, args.zone);
+ 
+ 	return 0;
+ }
+diff --git a/include/asterisk/linkedlists.h b/include/asterisk/linkedlists.h
+index 82db092..8e86470 100644
+--- a/include/asterisk/linkedlists.h
++++ b/include/asterisk/linkedlists.h
+@@ -535,7 +535,8 @@ struct {								\
+ 	     (var);									\
+ 	     __list_prev = __new_prev, (var) = __list_next,				\
+ 	     __new_prev = (var),							\
+-	     __list_next = (var) ? (var)->field.next : NULL				\
++	     __list_next = (var) ? (var)->field.next : NULL,				\
++	     (void) __list_prev								\
+ 	    )
+ 
+ #define AST_RWLIST_TRAVERSE_SAFE_BEGIN AST_LIST_TRAVERSE_SAFE_BEGIN
+diff --git a/main/asterisk.c b/main/asterisk.c
+index 2ce2d89..eed623b 100644
+--- a/main/asterisk.c
++++ b/main/asterisk.c
+@@ -362,11 +362,10 @@ const char *ast_file_version_find(const char *file)
+ 	struct file_version *iterator;
+ 
+ 	AST_RWLIST_WRLOCK(&file_versions);
+-	AST_RWLIST_TRAVERSE_SAFE_BEGIN(&file_versions, iterator, list) {
++	AST_RWLIST_TRAVERSE(&file_versions, iterator, list) {
+ 		if (!strcasecmp(iterator->file, file))
+ 			break;
+- 	}
+-	AST_RWLIST_TRAVERSE_SAFE_END;
++	}
+ 	AST_RWLIST_UNLOCK(&file_versions);
+ 	if (iterator)
+ 		return iterator->version;
+@@ -575,9 +574,9 @@ static char *handle_show_sysinfo(struct ast_cli_entry *e, int cmd, struct ast_cl
+ {
+ 	uint64_t physmem, freeram;
+ 	uint64_t freeswap = 0;
+-	int totalswap = 0;
+ 	int nprocs = 0;
+ 	long uptime = 0;
++	int totalswap = 0;
+ #if defined(HAVE_SYSINFO)
+ 	struct sysinfo sys_info;
+ 	sysinfo(&sys_info);
+@@ -660,7 +659,7 @@ static char *handle_show_sysinfo(struct ast_cli_entry *e, int cmd, struct ast_cl
+ #if defined(HAVE_SYSINFO)
+ 	ast_cli(a->fd, "  Buffer RAM:                %" PRIu64 " KiB\n", ((uint64_t) sys_info.bufferram * sys_info.mem_unit) / 1024);
+ #endif
+-#if defined (HAVE_SYSCTL) && defined(HAVE_SWAPCTL)
++#if defined (HAVE_SYSCTL) || defined(HAVE_SWAPCTL)
+ 	ast_cli(a->fd, "  Total Swap Space:          %u KiB\n", totalswap);
+ 	ast_cli(a->fd, "  Free Swap Space:           %" PRIu64 " KiB\n\n", freeswap);
+ #endif
+diff --git a/main/audiohook.c b/main/audiohook.c
+index ad977ec..7509321 100644
+--- a/main/audiohook.c
++++ b/main/audiohook.c
+@@ -792,28 +792,25 @@ int ast_channel_audiohook_count_by_source(struct ast_channel *chan, const char *
+ 
+ 	switch (type) {
+ 		case AST_AUDIOHOOK_TYPE_SPY:
+-			AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->audiohooks->spy_list, ah, list) {
++			AST_LIST_TRAVERSE(&chan->audiohooks->spy_list, ah, list) {
+ 				if (!strcmp(ah->source, source)) {
+ 					count++;
+ 				}
+ 			}
+-			AST_LIST_TRAVERSE_SAFE_END;
+ 			break;
+ 		case AST_AUDIOHOOK_TYPE_WHISPER:
+-			AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->audiohooks->whisper_list, ah, list) {
++			AST_LIST_TRAVERSE(&chan->audiohooks->whisper_list, ah, list) {
+ 				if (!strcmp(ah->source, source)) {
+ 					count++;
+ 				}
+ 			}
+-			AST_LIST_TRAVERSE_SAFE_END;
+ 			break;
+ 		case AST_AUDIOHOOK_TYPE_MANIPULATE:
+-			AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->audiohooks->manipulate_list, ah, list) {
++			AST_LIST_TRAVERSE(&chan->audiohooks->manipulate_list, ah, list) {
+ 				if (!strcmp(ah->source, source)) {
+ 					count++;
+ 				}
+ 			}
+-			AST_LIST_TRAVERSE_SAFE_END;
+ 			break;
+ 		default:
+ 			ast_log(LOG_DEBUG, "Invalid audiohook type supplied, (%d)\n", type);
+@@ -833,25 +830,22 @@ int ast_channel_audiohook_count_by_source_running(struct ast_channel *chan, cons
+ 
+ 	switch (type) {
+ 		case AST_AUDIOHOOK_TYPE_SPY:
+-			AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->audiohooks->spy_list, ah, list) {
++			AST_LIST_TRAVERSE(&chan->audiohooks->spy_list, ah, list) {
+ 				if ((!strcmp(ah->source, source)) && (ah->status == AST_AUDIOHOOK_STATUS_RUNNING))
+ 					count++;
+ 			}
+-			AST_LIST_TRAVERSE_SAFE_END;
+ 			break;
+ 		case AST_AUDIOHOOK_TYPE_WHISPER:
+-			AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->audiohooks->whisper_list, ah, list) {
++			AST_LIST_TRAVERSE(&chan->audiohooks->whisper_list, ah, list) {
+ 				if ((!strcmp(ah->source, source)) && (ah->status == AST_AUDIOHOOK_STATUS_RUNNING))
+ 					count++;
+ 			}
+-			AST_LIST_TRAVERSE_SAFE_END;
+ 			break;
+ 		case AST_AUDIOHOOK_TYPE_MANIPULATE:
+-			AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->audiohooks->manipulate_list, ah, list) {
++			AST_LIST_TRAVERSE(&chan->audiohooks->manipulate_list, ah, list) {
+ 				if ((!strcmp(ah->source, source)) && (ah->status == AST_AUDIOHOOK_STATUS_RUNNING))
+ 					count++;
+ 			}
+-			AST_LIST_TRAVERSE_SAFE_END;
+ 			break;
+ 		default:
+ 			ast_log(LOG_DEBUG, "Invalid audiohook type supplied, (%d)\n", type);
+diff --git a/main/cdr.c b/main/cdr.c
+index f2ade21..9fe110b 100644
+--- a/main/cdr.c
++++ b/main/cdr.c
+@@ -716,11 +716,8 @@ void ast_cdr_merge(struct ast_cdr *to, struct ast_cdr *from)
+ 
+ void ast_cdr_start(struct ast_cdr *cdr)
+ {
+-	char *chan;
+-
+ 	for (; cdr; cdr = cdr->next) {
+ 		if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
+-			chan = S_OR(cdr->channel, "<unknown>");
+ 			check_post(cdr);
+ 			cdr->start = ast_tvnow();
+ 		}
+@@ -768,11 +765,8 @@ void ast_cdr_failed(struct ast_cdr *cdr)
+ 
+ void ast_cdr_noanswer(struct ast_cdr *cdr)
+ {
+-	char *chan;
+-
+ 	while (cdr) {
+ 		if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
+-			chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : "<unknown>";
+ 			check_post(cdr);
+ 			cdr->disposition = AST_CDR_NOANSWER;
+ 		}
+@@ -892,11 +886,8 @@ static int cdr_seq_inc(struct ast_cdr *cdr)
+ 
+ int ast_cdr_init(struct ast_cdr *cdr, struct ast_channel *c)
+ {
+-	char *chan;
+-
+ 	for ( ; cdr ; cdr = cdr->next) {
+ 		if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
+-			chan = S_OR(cdr->channel, "<unknown>");
+ 			ast_copy_string(cdr->channel, c->name, sizeof(cdr->channel));
+ 			set_one_cid(cdr, c);
+ 			cdr_seq_inc(cdr);
+@@ -1116,7 +1107,6 @@ int ast_cdr_amaflags2int(const char *flag)
+ 
+ static void post_cdr(struct ast_cdr *cdr)
+ {
+-	char *chan;
+ 	struct ast_cdr_beitem *i;
+ 
+ 	for ( ; cdr ; cdr = cdr->next) {
+@@ -1134,7 +1124,6 @@ static void post_cdr(struct ast_cdr *cdr)
+ 			continue;
+ 		}
+ 
+-		chan = S_OR(cdr->channel, "<unknown>");
+ 		check_post(cdr);
+ 		ast_set_flag(cdr, AST_CDR_FLAG_POSTED);
+ 		if (ast_test_flag(cdr, AST_CDR_FLAG_POST_DISABLED))
+diff --git a/main/channel.c b/main/channel.c
+index 7ab5a18..18569b3 100644
+--- a/main/channel.c
++++ b/main/channel.c
+@@ -2502,7 +2502,7 @@ struct ast_datastore *ast_channel_datastore_find(struct ast_channel *chan, const
+ 	if (info == NULL)
+ 		return NULL;
+ 
+-	AST_LIST_TRAVERSE_SAFE_BEGIN(&chan->datastores, datastore, entry) {
++	AST_LIST_TRAVERSE(&chan->datastores, datastore, entry) {
+ 		if (datastore->info != info) {
+ 			continue;
+ 		}
+@@ -2517,7 +2517,6 @@ struct ast_datastore *ast_channel_datastore_find(struct ast_channel *chan, const
+ 			break;
+ 		}
+ 	}
+-	AST_LIST_TRAVERSE_SAFE_END;
+ 
+ 	return datastore;
+ }
+diff --git a/main/config.c b/main/config.c
+index 62f25dc..dc5d5fe 100644
+--- a/main/config.c
++++ b/main/config.c
+@@ -1021,7 +1021,6 @@ static int process_text_line(struct ast_config *cfg, struct ast_category **cat,
+ 	} else if (cur[0] == '#') { /* A directive - #include or #exec */
+ 		char *cur2;
+ 		char real_inclusion_name[256];
+-		struct ast_config_include *inclu;
+ 		int do_include = 0;	/* otherwise, it is exec */
+ 
+ 		cur++;
+@@ -1094,7 +1093,7 @@ static int process_text_line(struct ast_config *cfg, struct ast_category **cat,
+ 		}
+ 		/* A #include */
+ 		/* record this inclusion */
+-		inclu = ast_include_new(cfg, cfg->include_level == 1 ? "" : configfile, cur, !do_include, cur2, lineno, real_inclusion_name, sizeof(real_inclusion_name));
++		ast_include_new(cfg, cfg->include_level == 1 ? "" : configfile, cur, !do_include, cur2, lineno, real_inclusion_name, sizeof(real_inclusion_name));
+ 
+ 		do_include = ast_config_internal_load(cur, cfg, flags, real_inclusion_name, who_asked) ? 1 : 0;
+ 		if (!ast_strlen_zero(exec_file))
+diff --git a/main/dsp.c b/main/dsp.c
+index cba01b5..bab6198 100644
+--- a/main/dsp.c
++++ b/main/dsp.c
+@@ -795,7 +795,6 @@ static int mf_detect(struct ast_dsp *dsp, digit_detect_state_t *s, int16_t amp[]
+ 	float energy[6];
+ 	int best;
+ 	int second_best;
+-	float famp;
+ 	int i;
+ 	int j;
+ 	int sample;
+@@ -820,7 +819,6 @@ static int mf_detect(struct ast_dsp *dsp, digit_detect_state_t *s, int16_t amp[]
+ 		/* The following unrolled loop takes only 35% (rough estimate) of the 
+ 		   time of a rolled loop on the machine on which it was developed */
+ 		for (j = sample;  j < limit;  j++) {
+-			famp = amp[j];
+ 			/* With GCC 2.95, the following unrolled code seems to take about 35%
+ 			   (rough estimate) as long as a neat little 0-3 loop */
+ 			goertzel_sample(s->td.mf.tone_out, amp[j]);
+diff --git a/main/features.c b/main/features.c
+index 2f5fc4b..c9ded43 100644
+--- a/main/features.c
++++ b/main/features.c
+@@ -918,7 +918,7 @@ struct ast_park_call_args {
+ static struct parkeduser *park_space_reserve(struct ast_channel *chan, struct ast_channel *peer, struct ast_park_call_args *args)
+ {
+ 	struct parkeduser *pu;
+-	int i, parking_space = -1, parking_range;
++	int i, parking_space = -1;
+ 	const char *parkinglotname = NULL;
+ 	const char *parkingexten;
+ 	struct ast_parkinglot *parkinglot = NULL;
+@@ -1031,9 +1031,6 @@ static struct parkeduser *park_space_reserve(struct ast_channel *chan, struct as
+ 		int start;
+ 		struct parkeduser *cur = NULL;
+ 
+-		/* Select parking space within range */
+-		parking_range = parkinglot->parking_stop - parkinglot->parking_start + 1;
+-
+ 		if (ast_test_flag(args, AST_PARK_OPT_RANDOMIZE)) {
+ 			start = ast_random() % (parkinglot->parking_stop - parkinglot->parking_start + 1);
+ 		} else {
+@@ -1082,7 +1079,6 @@ static struct parkeduser *park_space_reserve(struct ast_channel *chan, struct as
+ static int park_call_full(struct ast_channel *chan, struct ast_channel *peer, struct ast_park_call_args *args)
+ {
+ 	struct ast_context *con;
+-	int parkingnum_copy;
+ 	struct parkeduser *pu = args->pu;
+ 	const char *event_from;
+ 
+@@ -1111,7 +1107,6 @@ static int park_call_full(struct ast_channel *chan, struct ast_channel *peer, st
+ 	
+ 	pu->start = ast_tvnow();
+ 	pu->parkingtime = (args->timeout > 0) ? args->timeout : pu->parkinglot->parkingtime;
+-	parkingnum_copy = pu->parkingnum;
+ 	if (args->extout)
+ 		*(args->extout) = pu->parkingnum;
+ 
+@@ -3448,7 +3443,6 @@ int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast
+ 	int we_disabled_peer_cdr = 0;
+ 	struct ast_option_header *aoh;
+ 	struct ast_cdr *bridge_cdr = NULL;
+-	struct ast_cdr *orig_peer_cdr = NULL;
+ 	struct ast_cdr *chan_cdr = chan->cdr; /* the proper chan cdr, if there are forked cdrs */
+ 	struct ast_cdr *peer_cdr = peer->cdr; /* the proper chan cdr, if there are forked cdrs */
+ 	struct ast_cdr *new_chan_cdr = NULL; /* the proper chan cdr, if there are forked cdrs */
+@@ -3520,8 +3514,7 @@ int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast
+ 	}
+ 	ast_copy_string(orig_channame,chan->name,sizeof(orig_channame));
+ 	ast_copy_string(orig_peername,peer->name,sizeof(orig_peername));
+-	orig_peer_cdr = peer_cdr;
+-	
++
+ 	if (!chan_cdr || (chan_cdr && !ast_test_flag(chan_cdr, AST_CDR_FLAG_POST_DISABLED))) {
+ 		
+ 		if (chan_cdr) {
+diff --git a/main/fskmodem_float.c b/main/fskmodem_float.c
+index f773009..bc873ea 100644
+--- a/main/fskmodem_float.c
++++ b/main/fskmodem_float.c
+@@ -225,9 +225,7 @@ int fsk_serial(fsk_data *fskd, short *buffer, int *len, int *outbyte)
+ 	int i,j,n1,r;
+ 	int samples = 0;
+ 	int olen;
+-	int beginlen=*len;
+-	int beginlenx;
+-	
++
+ 	switch (fskd->state) {
+ 		/* Pick up where we left off */
+ 	case STATE_SEARCH_STARTBIT2:
+@@ -255,7 +253,6 @@ int fsk_serial(fsk_data *fskd, short *buffer, int *len, int *outbyte)
+ 		beginning of a start bit in the TDD sceanario. It just looks for sufficient
+ 		level to maybe, perhaps, guess, maybe that its maybe the beginning of
+ 		a start bit, perhaps. This whole thing stinks! */
+-		beginlenx=beginlen; /* just to avoid unused war warnings */
+ 		if (demodulator(fskd, &fskd->x1, GET_SAMPLE))
+ 			return -1;
+ 		samples++;
+diff --git a/main/manager.c b/main/manager.c
+index a8447ef..542e4bb 100644
+--- a/main/manager.c
++++ b/main/manager.c
+@@ -1727,7 +1727,7 @@ static const char *__astman_get_header(const struct message *m, char *var, int m
+ 		}
+ 	}
+ 
+-	return "";
++	return result;
+ }
+ 
+ /*
+diff --git a/main/pbx.c b/main/pbx.c
+index 00485f2..1d4ea02 100644
+--- a/main/pbx.c
++++ b/main/pbx.c
+@@ -6560,7 +6560,6 @@ static int manager_show_dialplan(struct mansession *s, const struct message *m)
+ 	const char *exten, *context;
+ 	const char *id = astman_get_header(m, "ActionID");
+ 	char idtext[256];
+-	int res;
+ 
+ 	/* Variables used for different counters */
+ 	struct dialplan_counters counters;
+@@ -6575,7 +6574,7 @@ static int manager_show_dialplan(struct mansession *s, const struct message *m)
+ 	exten = astman_get_header(m, "Extension");
+ 	context = astman_get_header(m, "Context");
+ 
+-	res = manager_show_dialplan_helper(s, m, idtext, context, exten, &counters, NULL);
++	manager_show_dialplan_helper(s, m, idtext, context, exten, &counters, NULL);
+ 
+ 	if (context && !counters.context_existence) {
+ 		char errorbuf[BUFSIZ];
+@@ -7409,7 +7408,7 @@ static const char * const months[] =
+ 
+ int ast_build_timing(struct ast_timing *i, const char *info_in)
+ {
+-	char *info_save, *info;
++	char *info;
+ 	int j, num_fields, last_sep = -1;
+ 
+ 	/* Check for empty just in case */
+@@ -7418,7 +7417,7 @@ int ast_build_timing(struct ast_timing *i, const char *info_in)
+ 	}
+ 
+ 	/* make a copy just in case we were passed a static string */
+-	info_save = info = ast_strdupa(info_in);
++	info = ast_strdupa(info_in);
+ 
+ 	/* count the number of fields in the timespec */
+ 	for (j = 0, num_fields = 1; info[j] != '\0'; j++) {
+diff --git a/main/plc.c b/main/plc.c
+index ef549ca..ef21312 100644
+--- a/main/plc.c
++++ b/main/plc.c
+@@ -177,10 +177,8 @@ int plc_fillin(plc_state_t *s, int16_t amp[], int len)
+ 	float old_weight;
+ 	float new_weight;
+ 	float gain;
+-	int16_t *orig_amp;
+ 	int orig_len;
+ 
+-	orig_amp = amp;
+ 	orig_len = len;
+ 	if (s->missing_samples == 0) {
+ 		/* As the gap in real speech starts we need to assess the last known pitch,
+diff --git a/main/rtp_engine.c b/main/rtp_engine.c
+index 4159170..b2b498f 100644
+--- a/main/rtp_engine.c
++++ b/main/rtp_engine.c
+@@ -1247,8 +1247,8 @@ enum ast_bridge_result ast_rtp_instance_bridge(struct ast_channel *c0, struct as
+ 			*tinstance0 = NULL, *tinstance1 = NULL;
+ 	struct ast_rtp_glue *glue0, *glue1;
+ 	struct ast_sockaddr addr1, addr2;
+-	enum ast_rtp_glue_result audio_glue0_res = AST_RTP_GLUE_RESULT_FORBID, video_glue0_res = AST_RTP_GLUE_RESULT_FORBID, text_glue0_res = AST_RTP_GLUE_RESULT_FORBID;
+-	enum ast_rtp_glue_result audio_glue1_res = AST_RTP_GLUE_RESULT_FORBID, video_glue1_res = AST_RTP_GLUE_RESULT_FORBID, text_glue1_res = AST_RTP_GLUE_RESULT_FORBID;
++	enum ast_rtp_glue_result audio_glue0_res = AST_RTP_GLUE_RESULT_FORBID, video_glue0_res = AST_RTP_GLUE_RESULT_FORBID;
++	enum ast_rtp_glue_result audio_glue1_res = AST_RTP_GLUE_RESULT_FORBID, video_glue1_res = AST_RTP_GLUE_RESULT_FORBID;
+ 	enum ast_bridge_result res = AST_BRIDGE_FAILED;
+ 	format_t codec0 = 0, codec1 = 0;
+ 	int unlock_chans = 1;
+@@ -1275,11 +1275,9 @@ enum ast_bridge_result ast_rtp_instance_bridge(struct ast_channel *c0, struct as
+ 
+ 	audio_glue0_res = glue0->get_rtp_info(c0, &instance0);
+ 	video_glue0_res = glue0->get_vrtp_info ? glue0->get_vrtp_info(c0, &vinstance0) : AST_RTP_GLUE_RESULT_FORBID;
+-	text_glue0_res = glue0->get_trtp_info ? glue0->get_trtp_info(c0, &tinstance0) : AST_RTP_GLUE_RESULT_FORBID;
+ 
+ 	audio_glue1_res = glue1->get_rtp_info(c1, &instance1);
+ 	video_glue1_res = glue1->get_vrtp_info ? glue1->get_vrtp_info(c1, &vinstance1) : AST_RTP_GLUE_RESULT_FORBID;
+-	text_glue1_res = glue1->get_trtp_info ? glue1->get_trtp_info(c1, &tinstance1) : AST_RTP_GLUE_RESULT_FORBID;
+ 
+ 	/* If we are carrying video, and both sides are not going to remotely bridge... fail the native bridge */
+ 	if (video_glue0_res != AST_RTP_GLUE_RESULT_FORBID && (audio_glue0_res != AST_RTP_GLUE_RESULT_REMOTE || video_glue0_res != AST_RTP_GLUE_RESULT_REMOTE)) {
+@@ -1381,8 +1379,8 @@ void ast_rtp_instance_early_bridge_make_compatible(struct ast_channel *c0, struc
+ 		*vinstance0 = NULL, *vinstance1 = NULL,
+ 		*tinstance0 = NULL, *tinstance1 = NULL;
+ 	struct ast_rtp_glue *glue0, *glue1;
+-	enum ast_rtp_glue_result audio_glue0_res = AST_RTP_GLUE_RESULT_FORBID, video_glue0_res = AST_RTP_GLUE_RESULT_FORBID, text_glue0_res = AST_RTP_GLUE_RESULT_FORBID;
+-	enum ast_rtp_glue_result audio_glue1_res = AST_RTP_GLUE_RESULT_FORBID, video_glue1_res = AST_RTP_GLUE_RESULT_FORBID, text_glue1_res = AST_RTP_GLUE_RESULT_FORBID;
++	enum ast_rtp_glue_result audio_glue0_res = AST_RTP_GLUE_RESULT_FORBID, video_glue0_res = AST_RTP_GLUE_RESULT_FORBID;
++	enum ast_rtp_glue_result audio_glue1_res = AST_RTP_GLUE_RESULT_FORBID, video_glue1_res = AST_RTP_GLUE_RESULT_FORBID;
+ 	format_t codec0 = 0, codec1 = 0;
+ 	int res = 0;
+ 
+@@ -1402,11 +1400,9 @@ void ast_rtp_instance_early_bridge_make_compatible(struct ast_channel *c0, struc
+ 
+ 	audio_glue0_res = glue0->get_rtp_info(c0, &instance0);
+ 	video_glue0_res = glue0->get_vrtp_info ? glue0->get_vrtp_info(c0, &vinstance0) : AST_RTP_GLUE_RESULT_FORBID;
+-	text_glue0_res = glue0->get_trtp_info ? glue0->get_trtp_info(c0, &tinstance0) : AST_RTP_GLUE_RESULT_FORBID;
+ 
+ 	audio_glue1_res = glue1->get_rtp_info(c1, &instance1);
+ 	video_glue1_res = glue1->get_vrtp_info ? glue1->get_vrtp_info(c1, &vinstance1) : AST_RTP_GLUE_RESULT_FORBID;
+-	text_glue1_res = glue1->get_trtp_info ? glue1->get_trtp_info(c1, &tinstance1) : AST_RTP_GLUE_RESULT_FORBID;
+ 
+ 	/* If we are carrying video, and both sides are not going to remotely bridge... fail the native bridge */
+ 	if (video_glue0_res != AST_RTP_GLUE_RESULT_FORBID && (audio_glue0_res != AST_RTP_GLUE_RESULT_REMOTE || video_glue0_res != AST_RTP_GLUE_RESULT_REMOTE)) {
+@@ -1465,8 +1461,8 @@ int ast_rtp_instance_early_bridge(struct ast_channel *c0, struct ast_channel *c1
+ 			*vinstance0 = NULL, *vinstance1 = NULL,
+ 			*tinstance0 = NULL, *tinstance1 = NULL;
+ 	struct ast_rtp_glue *glue0, *glue1;
+-	enum ast_rtp_glue_result audio_glue0_res = AST_RTP_GLUE_RESULT_FORBID, video_glue0_res = AST_RTP_GLUE_RESULT_FORBID, text_glue0_res = AST_RTP_GLUE_RESULT_FORBID;
+-	enum ast_rtp_glue_result audio_glue1_res = AST_RTP_GLUE_RESULT_FORBID, video_glue1_res = AST_RTP_GLUE_RESULT_FORBID, text_glue1_res = AST_RTP_GLUE_RESULT_FORBID;
++	enum ast_rtp_glue_result audio_glue0_res = AST_RTP_GLUE_RESULT_FORBID, video_glue0_res = AST_RTP_GLUE_RESULT_FORBID;
++	enum ast_rtp_glue_result audio_glue1_res = AST_RTP_GLUE_RESULT_FORBID, video_glue1_res = AST_RTP_GLUE_RESULT_FORBID;
+ 	format_t codec0 = 0, codec1 = 0;
+ 	int res = 0;
+ 
+@@ -1491,11 +1487,9 @@ int ast_rtp_instance_early_bridge(struct ast_channel *c0, struct ast_channel *c1
+ 
+ 	audio_glue0_res = glue0->get_rtp_info(c0, &instance0);
+ 	video_glue0_res = glue0->get_vrtp_info ? glue0->get_vrtp_info(c0, &vinstance0) : AST_RTP_GLUE_RESULT_FORBID;
+-	text_glue0_res = glue0->get_trtp_info ? glue0->get_trtp_info(c0, &tinstance0) : AST_RTP_GLUE_RESULT_FORBID;
+ 
+ 	audio_glue1_res = glue1->get_rtp_info(c1, &instance1);
+ 	video_glue1_res = glue1->get_vrtp_info ? glue1->get_vrtp_info(c1, &vinstance1) : AST_RTP_GLUE_RESULT_FORBID;
+-	text_glue1_res = glue1->get_trtp_info ? glue1->get_trtp_info(c1, &tinstance1) : AST_RTP_GLUE_RESULT_FORBID;
+ 
+ 	/* If we are carrying video, and both sides are not going to remotely bridge... fail the native bridge */
+ 	if (video_glue0_res != AST_RTP_GLUE_RESULT_FORBID && (audio_glue0_res != AST_RTP_GLUE_RESULT_REMOTE || video_glue0_res != AST_RTP_GLUE_RESULT_REMOTE)) {
+diff --git a/main/udptl.c b/main/udptl.c
+index f172c33..97233ff 100644
+--- a/main/udptl.c
++++ b/main/udptl.c
+@@ -664,7 +664,6 @@ struct ast_frame *ast_udptl_read(struct ast_udptl *udptl)
+ 	int res;
+ 	struct ast_sockaddr addr;
+ 	uint16_t seqno = 0;
+-	uint16_t *udptlheader;
+ 	
+ 	/* Cache where the header will go */
+ 	res = ast_recvfrom(udptl->fd,
+@@ -672,7 +671,6 @@ struct ast_frame *ast_udptl_read(struct ast_udptl *udptl)
+ 			sizeof(udptl->rawdata) - AST_FRIENDLY_OFFSET,
+ 			0,
+ 			&addr);
+-	udptlheader = (uint16_t *)(udptl->rawdata + AST_FRIENDLY_OFFSET);
+ 	if (res < 0) {
+ 		if (errno != EAGAIN)
+ 			ast_log(LOG_WARNING, "(%s): UDPTL read error: %s\n",
+diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c
+index cd5947f..5e52052 100644
+--- a/pbx/pbx_config.c
++++ b/pbx/pbx_config.c
+@@ -677,7 +677,7 @@ static char *handle_cli_dialplan_save(struct ast_cli_entry *e, int cmd, struct a
+ 	int incomplete = 0; /* incomplete config write? */
+ 	FILE *output;
+ 	struct ast_flags config_flags = { 0 };
+-	const char *base, *slash, *file;
++	const char *base, *slash;
+ 
+ 	switch (cmd) {
+ 	case CLI_INIT:
+@@ -716,16 +716,13 @@ static char *handle_cli_dialplan_save(struct ast_cli_entry *e, int cmd, struct a
+ 		if (!strstr(a->argv[2], ".conf")) { /*no, this is assumed to be a pathname */
+ 			/* if filename ends with '/', do not add one */
+ 			slash = (*(a->argv[2] + strlen(a->argv[2]) -1) == '/') ? "/" : "";
+-			file = config;	/* default: 'extensions.conf' */
+ 		} else {	/* yes, complete file name */
+ 			slash = "";
+-			file = "";
+ 		}
+ 	} else {
+ 		/* no config file, default one */
+ 		base = ast_config_AST_CONFIG_DIR;
+ 		slash = "/";
+-		file = config;
+ 	}
+ 	snprintf(filename, sizeof(filename), "%s%s%s", base, slash, config);
+ 
+@@ -1627,7 +1624,6 @@ static void pbx_load_users(void)
+ 	char dahdicopy[256];
+ 	char *ext, altcopy[256];
+ 	char *c;
+-	int len;
+ 	int hasvoicemail;
+ 	int start, finish, x;
+ 	struct ast_context *con = NULL;
+@@ -1641,7 +1637,6 @@ static void pbx_load_users(void)
+ 		if (!strcasecmp(cat, "general"))
+ 			continue;
+ 		iface[0] = '\0';
+-		len = sizeof(iface);
+ 		if (ast_true(ast_config_option(cfg, cat, "hassip"))) {
+ 			snprintf(tmp, sizeof(tmp), "SIP/%s", cat);
+ 			append_interface(iface, sizeof(iface), tmp);
+diff --git a/res/res_agi.c b/res/res_agi.c
+index de76d26..ffc5373 100644
+--- a/res/res_agi.c
++++ b/res/res_agi.c
+@@ -1922,7 +1922,7 @@ static int handle_controlstreamfile(struct ast_channel *chan, AGI *agi, int argc
+ 
+ static int handle_streamfile(struct ast_channel *chan, AGI *agi, int argc, const char * const argv[])
+ {
+-	int res, vres;
++	int res;
+ 	struct ast_filestream *fs, *vfs;
+ 	long sample_offset = 0, max_length;
+ 	const char *edigits = "";
+@@ -1951,7 +1951,7 @@ static int handle_streamfile(struct ast_channel *chan, AGI *agi, int argc, const
+ 	ast_seekstream(fs, sample_offset, SEEK_SET);
+ 	res = ast_applystream(chan, fs);
+ 	if (vfs)
+-		vres = ast_applystream(chan, vfs);
++		ast_applystream(chan, vfs);
+ 	ast_playstream(fs);
+ 	if (vfs)
+ 		ast_playstream(vfs);
+@@ -1972,7 +1972,7 @@ static int handle_streamfile(struct ast_channel *chan, AGI *agi, int argc, const
+ /*! \brief get option - really similar to the handle_streamfile, but with a timeout */
+ static int handle_getoption(struct ast_channel *chan, AGI *agi, int argc, const char * const argv[])
+ {
+-	int res, vres;
++	int res;
+ 	struct ast_filestream *fs, *vfs;
+ 	long sample_offset = 0, max_length;
+ 	int timeout = 0;
+@@ -2007,7 +2007,7 @@ static int handle_getoption(struct ast_channel *chan, AGI *agi, int argc, const
+ 	ast_seekstream(fs, sample_offset, SEEK_SET);
+ 	res = ast_applystream(chan, fs);
+ 	if (vfs)
+-		vres = ast_applystream(chan, vfs);
++		ast_applystream(chan, vfs);
+ 	ast_playstream(fs);
+ 	if (vfs)
+ 		ast_playstream(vfs);
+@@ -2889,7 +2889,7 @@ static int handle_speechrecognize(struct ast_channel *chan, AGI *agi, int argc,
+ 	struct ast_speech *speech = agi->speech;
+ 	const char *prompt;
+ 	char dtmf = 0, tmp[4096] = "", *buf = tmp;
+-	int timeout = 0, offset = 0, old_read_format = 0, res = 0, i = 0;
++	int timeout = 0, offset = 0, res = 0, i = 0;
+ 	long current_offset = 0;
+ 	const char *reason = NULL;
+ 	struct ast_frame *fr = NULL;
+@@ -2913,7 +2913,6 @@ static int handle_speechrecognize(struct ast_channel *chan, AGI *agi, int argc,
+ 		offset = atoi(argv[4]);
+ 
+ 	/* We want frames coming in signed linear */
+-	old_read_format = chan->readformat;
+ 	if (ast_set_read_format(chan, AST_FORMAT_SLINEAR)) {
+ 		ast_agi_send(agi->fd, chan, "200 result=0\n");
+ 		return RESULT_SUCCESS;
+diff --git a/res/res_calendar.c b/res/res_calendar.c
+index dee944f..b53ce60 100644
+--- a/res/res_calendar.c
++++ b/res/res_calendar.c
+@@ -1665,7 +1665,7 @@ static void *do_refresh(void *data)
+ 	for (;;) {
+ 		struct timeval now = ast_tvnow();
+ 		struct timespec ts = {0,};
+-		int res, wait;
++		int wait;
+ 
+ 		ast_mutex_lock(&refreshlock);
+ 
+@@ -1674,7 +1674,7 @@ static void *do_refresh(void *data)
+ 		}
+ 
+ 		ts.tv_sec = (now.tv_sec + wait / 1000) + 1;
+-		res = ast_cond_timedwait(&refresh_condition, &refreshlock, &ts);
++		ast_cond_timedwait(&refresh_condition, &refreshlock, &ts);
+ 
+ 		ast_mutex_unlock(&refreshlock);
+ 
+@@ -1701,10 +1701,9 @@ static int unload_module(void)
+ 	ao2_callback(calendars, OBJ_UNLINK | OBJ_NODATA | OBJ_MULTIPLE, NULL, NULL);
+ 
+ 	AST_LIST_LOCK(&techs);
+-	AST_LIST_TRAVERSE_SAFE_BEGIN(&techs, tech, list) {
++	AST_LIST_TRAVERSE(&techs, tech, list) {
+ 		ast_unload_resource(tech->module, 0);
+ 	}
+-	AST_LIST_TRAVERSE_SAFE_END;
+ 	AST_LIST_UNLOCK(&techs);
+ 
+ 	return 0;
+diff --git a/res/res_fax.c b/res/res_fax.c
+index cc2ee5e..141cf47 100644
+--- a/res/res_fax.c
++++ b/res/res_fax.c
+@@ -2324,9 +2324,7 @@ static char *fax_session_tab_complete(struct ast_cli_args *a)
+ 		}
+ 		ao2_ref(s, -1);
+ 	}
+-	if (ao2_iterator_destroy != NULL) {
+-		ao2_iterator_destroy(&i);
+-	}
++	ao2_iterator_destroy(&i);
+ 	return name;
+ }
+ 
+@@ -2560,9 +2558,7 @@ static char *cli_fax_show_sessions(struct ast_cli_entry *e, int cmd, struct ast_
+ 			ast_log(LOG_ERROR, "error printing filenames for 'fax show sessions' command");
+ 			ao2_unlock(s);
+ 			ao2_ref(s, -1);
+-			if (ao2_iterator_destroy != NULL) {
+-				ao2_iterator_destroy(&i);
+-			}
++			ao2_iterator_destroy(&i);
+ 			return CLI_FAILURE;
+ 		}
+ 
+@@ -2576,9 +2572,7 @@ static char *cli_fax_show_sessions(struct ast_cli_entry *e, int cmd, struct ast_
+ 		ao2_unlock(s);
+ 		ao2_ref(s, -1);
+ 	}
+-	if (ao2_iterator_destroy != NULL) {
+-		ao2_iterator_destroy(&i);
+-	}
++	ao2_iterator_destroy(&i);
+ 	session_count = ao2_container_count(faxregistry.container);
+ 	ast_cli(a->fd, "\n%d FAX sessions\n\n", session_count);
+ 
+diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c
+index 45280bf..9385b1f 100644
+--- a/res/res_musiconhold.c
++++ b/res/res_musiconhold.c
+@@ -631,13 +631,11 @@ static void *monmp3thread(void *data)
+ 		}
+ 		if (class->timer) {
+ 			struct pollfd pfd = { .fd = ast_timer_fd(class->timer), .events = POLLIN, };
+-			struct timeval tv;
+ 
+ #ifdef SOLARIS
+ 			thr_yield();
+ #endif
+ 			/* Pause some amount of time */
+-			tv = ast_tvnow();
+ 			if (ast_poll(&pfd, 1, -1) > 0) {
+ 				ast_timer_ack(class->timer, 1);
+ 				res = 320;
+@@ -1017,7 +1015,6 @@ static int moh_scan_files(struct mohclass *class) {
+ 	char filepath[PATH_MAX];
+ 	char *ext;
+ 	struct stat statbuf;
+-	int dirnamelen;
+ 	int i;
+ 
+ 	if (class->dir[0] != '/') {
+@@ -1038,7 +1035,6 @@ static int moh_scan_files(struct mohclass *class) {
+ 		ast_free(class->filearray[i]);
+ 
+ 	class->total_files = 0;
+-	dirnamelen = strlen(dir_path) + 2;
+ 	if (!getcwd(path, sizeof(path))) {
+ 		ast_log(LOG_WARNING, "getcwd() failed: %s\n", strerror(errno));
+ 		return -1;
+-- 
+1.7.4.4
+

Modified: asterisk/trunk/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-voip/asterisk/trunk/debian/patches/series?rev=8931&op=diff
==============================================================================
--- asterisk/trunk/debian/patches/series (original)
+++ asterisk/trunk/debian/patches/series Wed May 11 01:08:09 2011
@@ -24,3 +24,4 @@
 refix_bashism
 no_uname
 kfreebsd
+gcc46




More information about the Pkg-voip-commits mailing list