diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c
index 5578e7f..597451c 100644
--- a/pjsip/src/pjsua-lib/pjsua_acc.c
+++ b/pjsip/src/pjsua-lib/pjsua_acc.c
@@ -487,6 +487,8 @@
 {
     pjsua_acc *acc;
     pj_str_t contact;
+    char contact_buf[512];
+    pj_pool_t *pool;
     pj_status_t status;
 
     acc = &pjsua_var.acc[acc_id];
@@ -496,6 +498,12 @@
 	return PJ_SUCCESS;
     }
 
+    /* Destroy existing session, if any */
+    if (acc->regc) {
+	pjsip_regc_destroy(acc->regc);
+	acc->regc = NULL;
+    }
+
     /* initialize SIP registration if registrar is configured */
 
     status = pjsip_regc_create( pjsua_var.endpt, 
@@ -507,7 +515,8 @@
 	return status;
     }
 
-    status = pjsua_acc_create_uac_contact( pjsua_var.pool, &contact,
+    pool = pj_pool_create_on_buf(NULL, contact_buf, sizeof(contact_buf));
+    status = pjsua_acc_create_uac_contact( pool, &contact,
 					   acc_id, &acc->cfg.reg_uri);
     if (status != PJ_SUCCESS) {
 	pjsua_perror(THIS_FILE, "Unable to generate suitable Contact header"
@@ -562,7 +571,6 @@
 
     if (renew) {
 	if (pjsua_var.acc[acc_id].regc == NULL) {
-	    // Need route set.
 	    status = pjsua_regc_init(acc_id);
 	    if (status != PJ_SUCCESS) {
 		pjsua_perror(THIS_FILE, "Unable to create registration", 
