Index: channels/chan_skinny.c =================================================================== --- channels/chan_skinny.c (revision 169367) +++ channels/chan_skinny.c (working copy) @@ -2243,6 +2243,9 @@ //req->data.clearpromptstatus.lineInstance = instance; //req->data.clearpromptstatus.callReference = reference; + /* send datetime message. We have to do it here because it will clear the display on the phone if we do it elsewhere */ + handle_time_date_req_message(NULL, d->session); + if (skinnydebug) ast_verb(1, "Clearing Display\n"); } else { @@ -2542,12 +2545,6 @@ } } -static void do_housekeeping(struct skinnysession *s) -{ - /* Update time on device */ - handle_time_date_req_message(NULL, s); -} - /* I do not believe skinny can deal with video. Anyone know differently? */ /* Yes, it can. Currently 7985 and Cisco VT Advantage do video. */ @@ -4155,7 +4152,6 @@ return -1; transmit_response(s->device, req); - do_housekeeping(s); return 1; } @@ -4846,10 +4842,6 @@ l->name, d->name, sub->callid); } } - /* The bit commented below gives a very occasional core dump. */ - if ((l->hookstate == SKINNY_ONHOOK) && (AST_LIST_NEXT(sub, list) /*&& !AST_LIST_NEXT(sub, list)->rtp*/)) { - do_housekeeping(s); - } return 1; } @@ -5568,7 +5560,6 @@ } } if ((l->hookstate == SKINNY_ONHOOK) && (AST_LIST_NEXT(sub, list) && !AST_LIST_NEXT(sub, list)->rtp)) { - do_housekeeping(s); ast_devstate_changed(AST_DEVICE_NOT_INUSE, "Skinny/%s@%s", l->name, d->name); } }