summaryrefslogtreecommitdiff
path: root/pjsip-apps
diff options
context:
space:
mode:
authorRiza Sulistyo <riza@teluu.com>2013-05-28 12:03:36 +0000
committerRiza Sulistyo <riza@teluu.com>2013-05-28 12:03:36 +0000
commite18bd6d1665ae3e5112eb09ef5e085d2f39408bb (patch)
treec829e5265c3d4baf47f6c7f8cce86056dbf2ac86 /pjsip-apps
parent915719ad7c1d30167b7381bf36357c491a23fae4 (diff)
Re #1643: Restore configuration reset with added modification on app destroy. It was deleted from code to enable cli retain config values when restarted
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4525 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps')
-rw-r--r--pjsip-apps/src/pjsua/pjsua_app.c18
-rw-r--r--pjsip-apps/src/pjsua/pjsua_app_config.c9
2 files changed, 22 insertions, 5 deletions
diff --git a/pjsip-apps/src/pjsua/pjsua_app.c b/pjsip-apps/src/pjsua/pjsua_app.c
index bd67255e..eb04c717 100644
--- a/pjsip-apps/src/pjsua/pjsua_app.c
+++ b/pjsip-apps/src/pjsua/pjsua_app.c
@@ -1912,6 +1912,9 @@ static pj_status_t app_destroy()
{
pj_status_t status = PJ_SUCCESS;
unsigned i;
+ pj_bool_t use_cli = PJ_FALSE;
+ int cli_fe = 0;
+ pj_uint16_t cli_telnet_port = 0;
#ifdef STEREO_DEMO
if (app_config.snd) {
@@ -1970,6 +1973,21 @@ static pj_status_t app_destroy()
status = pjsua_destroy();
+ if (app_config.use_cli) {
+ use_cli = app_config.use_cli;
+ cli_fe = app_config.cli_cfg.cli_fe;
+ cli_telnet_port = app_config.cli_cfg.telnet_cfg.port;
+ }
+
+ /* Reset config */
+ pj_bzero(&app_config, sizeof(app_config));
+
+ if (use_cli) {
+ app_config.use_cli = use_cli;
+ app_config.cli_cfg.cli_fe = cli_fe;
+ app_config.cli_cfg.telnet_cfg.port = cli_telnet_port;
+ }
+
return status;
}
diff --git a/pjsip-apps/src/pjsua/pjsua_app_config.c b/pjsip-apps/src/pjsua/pjsua_app_config.c
index 5befc087..60d4aefa 100644
--- a/pjsip-apps/src/pjsua/pjsua_app_config.c
+++ b/pjsip-apps/src/pjsua/pjsua_app_config.c
@@ -1454,8 +1454,7 @@ static void default_config()
for (i=0; i<PJ_ARRAY_SIZE(cfg->buddy_cfg); ++i)
pjsua_buddy_config_default(&cfg->buddy_cfg[i]);
-
- cfg->buddy_cnt = 0;
+
cfg->vid.vcapture_dev = PJMEDIA_VID_DEFAULT_CAPTURE_DEV;
cfg->vid.vrender_dev = PJMEDIA_VID_DEFAULT_RENDER_DEV;
cfg->aud_cnt = 1;
@@ -1472,7 +1471,7 @@ static pj_status_t parse_config(int argc, char *argv[], pj_str_t *uri_arg)
pj_status_t status;
/* Initialize default config */
- default_config(app_config);
+ default_config();
/* Parse the arguments */
status = parse_args(argc, argv, uri_arg);
@@ -1480,8 +1479,8 @@ static pj_status_t parse_config(int argc, char *argv[], pj_str_t *uri_arg)
}
pj_status_t load_config(int argc,
- char **argv,
- pj_str_t *uri_arg)
+ char **argv,
+ pj_str_t *uri_arg)
{
pj_status_t status;
pj_bool_t use_cli = PJ_FALSE;