[svn-commits] mvanbaak: trunk r170460 - /trunk/channels/chan_skinny.c
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Fri Jan 23 10:57:08 CST 2009
Author: mvanbaak
Date: Fri Jan 23 10:57:07 2009
New Revision: 170460
URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=170460
Log:
Dont clear the display of skinny phones when not needed.
(closes issue #13182)
Reported by: pj
Patches:
2009011901_dontcleardisplay.diff.txt uploaded by mvanbaak (license 7)
Tested by: mvanbaak, pj
Modified:
trunk/channels/chan_skinny.c
Modified: trunk/channels/chan_skinny.c
URL: http://svn.digium.com/svn-view/asterisk/trunk/channels/chan_skinny.c?view=diff&rev=170460&r1=170459&r2=170460
==============================================================================
--- trunk/channels/chan_skinny.c (original)
+++ trunk/channels/chan_skinny.c Fri Jan 23 10:57:07 2009
@@ -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 {
@@ -2540,12 +2543,6 @@
}
ast_verb(3, "Skinny mwi_event_cb found %d new messages\n", new_msgs);
}
-}
-
-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.
@@ -3492,6 +3489,7 @@
transmit_stopmediatransmission(d, sub);
transmit_speaker_mode(d, SKINNY_SPEAKEROFF);
transmit_ringer_mode(d, SKINNY_RING_OFF);
+ transmit_displaymessage(d, NULL, l->instance, sub->callid); /* clear display */
transmit_tone(d, SKINNY_SILENCE, l->instance, sub->callid);
/* we should check to see if we can start the ringer if another line is ringing */
}
@@ -4155,7 +4153,6 @@
return -1;
transmit_response(s->device, req);
- do_housekeeping(s);
return 1;
}
@@ -4845,10 +4842,6 @@
ast_log(LOG_WARNING, "Skinny(%s@%s-%d) channel already destroyed\n",
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 +5561,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);
}
}
More information about the svn-commits
mailing list