diff -urN asterisk-1.2.12.1.orig/channels/chan_sip.c asterisk-1.2.12.1/channels/chan_sip.c --- asterisk-1.2.12.1.orig/channels/chan_sip.c 2006-09-09 05:14:03.000000000 -0700 +++ asterisk-1.2.12.1/channels/chan_sip.c 2006-09-24 07:56:46.000000000 -0700 @@ -7207,7 +7207,8 @@ p->amaflags = user->amaflags; p->callgroup = user->callgroup; p->pickupgroup = user->pickupgroup; - p->callingpres = user->callingpres; + if(user->callingpres) // taken from bug 7240 + p->callingpres = user->callingpres; p->capability = user->capability; p->jointcapability = user->capability; if (p->peercapability) @@ -7270,7 +7271,8 @@ ast_copy_string(p->subscribecontext, peer->subscribecontext, sizeof(p->subscribecontext)); ast_copy_string(p->peermd5secret, peer->md5secret, sizeof(p->peermd5secret)); p->peermd5secret[sizeof(p->peermd5secret)-1] = '\0'; - p->callingpres = peer->callingpres; + if(peer->callingpres) // taken from bug 7240 + p->callingpres = peer->callingpres; if (peer->maxms && peer->lastms) p->timer_t1 = peer->lastms; if (ast_test_flag(peer, SIP_INSECURE_INVITE)) {