diff -ur linphone-1.0.1/coreapi/linphonecore.c linphone-1.0.1-p1/coreapi/linphonecore.c --- linphone-1.0.1/coreapi/linphonecore.c 2005-03-16 17:16:55.000000000 +0100 +++ linphone-1.0.1-p1/coreapi/linphonecore.c 2005-07-16 13:29:44.000000000 +0200 @@ -34,6 +34,10 @@ #include #include +#include +#include +#include + #ifdef INET6 #include #endif @@ -121,6 +125,7 @@ LinphoneCall * linphone_call_new_incoming(LinphoneCore *lc, const char *from, const char *to, int cid, int did) { + char command[1024]; LinphoneCall *call=g_new0(LinphoneCall,1); osip_from_t *me= linphone_core_get_primary_contact_parsed(lc); call->dir=LinphoneCallIncoming; @@ -129,6 +134,8 @@ call->core=lc; call->sdpctx=sdp_handler_create_context(&linphone_sdphandler,NULL,me->url->username); linphone_call_init_common(call, osip_strdup(from), osip_strdup(to)); + snprintf(command, sizeof(command), "~/.linphonerc ring '%s' & disown", from); + system(command); return call; } diff -ur linphone-1.0.1/mediastreamer/audiostream.c linphone-1.0.1-p1/mediastreamer/audiostream.c --- linphone-1.0.1/mediastreamer/audiostream.c 2005-03-17 10:20:34.000000000 +0100 +++ linphone-1.0.1-p1/mediastreamer/audiostream.c 2005-07-16 13:34:46.000000000 +0200 @@ -20,6 +20,8 @@ #include "mediastream.h" +#include + #ifdef INET6 #include #include @@ -311,6 +313,7 @@ void ring_stop(RingStream *stream) { + system("~/.linphonerc stop & disown"); ms_stop(stream->timer); ms_sync_detach(stream->timer,stream->source); ms_sync_destroy(stream->timer);