aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_rpt.c
diff options
context:
space:
mode:
authorkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-11 15:13:54 +0000
committerkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-11 15:13:54 +0000
commit636da18aef62d45c2a4d5c8375db4e3e9a6a8fa7 (patch)
tree0897894650d3dde3ed9811ef6d72420445a13423 /apps/app_rpt.c
parent177767109c3763492cd688a7f3300fd0eef513f7 (diff)
Merged revisions 107466 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r107466 | kpfleming | 2008-03-11 10:13:38 -0500 (Tue, 11 Mar 2008) | 10 lines Merged revisions 107464 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r107464 | kpfleming | 2008-03-11 09:53:03 -0500 (Tue, 11 Mar 2008) | 2 lines fix various other problems found by gcc 4.3 ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@107467 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_rpt.c')
-rw-r--r--apps/app_rpt.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/apps/app_rpt.c b/apps/app_rpt.c
index 0957af0ea..1246e39e8 100644
--- a/apps/app_rpt.c
+++ b/apps/app_rpt.c
@@ -888,12 +888,8 @@ static void load_rpt_vars(int n, int init)
ast_free(rpt_vars[n].p.tailmsgbuf);
memset(&rpt_vars[n].p, 0, sizeof(rpt_vars[n].p));
if (init) {
- char *cp;
- int savearea = (char *)&rpt_vars[n].p - (char *)&rpt_vars[n];
-
- cp = (char *) &rpt_vars[n].p;
- memset(cp + sizeof(rpt_vars[n].p), 0,
- sizeof(rpt_vars[n]) - (sizeof(rpt_vars[n].p) + savearea));
+ /* clear all the fields in the structure after 'p' */
+ memset(&rpt_vars[n].p + sizeof(rpt_vars[0].p), 0, sizeof(rpt_vars[0]) - sizeof(rpt_vars[0].p) - offsetof(typeof(rpt_vars[0]), p));
rpt_vars[n].tele.next = &rpt_vars[n].tele;
rpt_vars[n].tele.prev = &rpt_vars[n].tele;
rpt_vars[n].rpt_thread = AST_PTHREADT_NULL;