aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_fax.c
diff options
context:
space:
mode:
authordhubbard <dhubbard@f38db490-d61c-443f-a65b-d21fe96a405b>2009-02-20 22:27:17 +0000
committerdhubbard <dhubbard@f38db490-d61c-443f-a65b-d21fe96a405b>2009-02-20 22:27:17 +0000
commit2e74a4907727d4e0bf09ed27f85ae71e98db9424 (patch)
treeaee5ff218b564c8435e834f62c0d01876f4b8993 /apps/app_fax.c
parent0b4c6ee3aab0dab2c730cfeffc7ac1bab477a341 (diff)
Merged revisions 177699 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r177699 | dhubbard | 2009-02-20 14:29:00 -0600 (Fri, 20 Feb 2009) | 9 lines Make app_fax compatible with spandsp-0.0.6pre4 Prior to spandsp-0.0.6pre4 the t30_stats_t structure used a pages_transferred integer to indicate the number of pages transferred (so far) during the fax session. The spandsp-0.0.6pre4 release removed the pages_transferred integer and replaced it with two different integers - pages_tx and pages_rx. This revision uses the new integers for spandsp-0.0.6pre4 while maintaining backwards compatibility for previous spandsp releases. ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@177785 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_fax.c')
-rw-r--r--apps/app_fax.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/apps/app_fax.c b/apps/app_fax.c
index 286594ca4..f555d97f0 100644
--- a/apps/app_fax.c
+++ b/apps/app_fax.c
@@ -161,6 +161,7 @@ static void phase_e_handler(t30_state_t *f, void *user_data, int result)
char buf[20];
fax_session *s = (fax_session *) user_data;
t30_stats_t stat;
+ int pages_transferred;
ast_debug(1, "Fax phase E handler. result=%d\n", result);
@@ -186,7 +187,12 @@ static void phase_e_handler(t30_state_t *f, void *user_data, int result)
pbx_builtin_setvar_helper(s->chan, "FAXSTATUS", "SUCCESS");
pbx_builtin_setvar_helper(s->chan, "FAXERROR", NULL);
pbx_builtin_setvar_helper(s->chan, "REMOTESTATIONID", far_ident);
- snprintf(buf, sizeof(buf), "%d", stat.pages_transferred);
+#if SPANDSP_RELEASE_DATE >= 20090220
+ pages_transferred = (s->direction) ? stat.pages_tx : stat.pages_rx;
+#else
+ pages_transferred = stat.pages_transferred;
+#endif
+ snprintf(buf, sizeof(buf), "%d", pages_transferred);
pbx_builtin_setvar_helper(s->chan, "FAXPAGES", buf);
snprintf(buf, sizeof(buf), "%d", stat.y_resolution);
pbx_builtin_setvar_helper(s->chan, "FAXRESOLUTION", buf);
@@ -195,7 +201,7 @@ static void phase_e_handler(t30_state_t *f, void *user_data, int result)
ast_debug(1, "Fax transmitted successfully.\n");
ast_debug(1, " Remote station ID: %s\n", far_ident);
- ast_debug(1, " Pages transferred: %d\n", stat.pages_transferred);
+ ast_debug(1, " Pages transferred: %d\n", pages_transferred);
ast_debug(1, " Image resolution: %d x %d\n", stat.x_resolution, stat.y_resolution);
ast_debug(1, " Transfer Rate: %d\n", stat.bit_rate);
@@ -215,7 +221,7 @@ static void phase_e_handler(t30_state_t *f, void *user_data, int result)
S_OR(s->chan->cid.cid_num, ""),
far_ident,
local_ident,
- stat.pages_transferred,
+ pages_transferred,
stat.y_resolution,
stat.bit_rate,
s->file_name);