Code cleanup
This commit is contained in:
parent
304b358f9d
commit
226b07c6be
@ -1498,7 +1498,7 @@ static int _gsm_trigger_cmgr(GSM * gsm, char const * result)
|
|||||||
free(p);
|
free(p);
|
||||||
p = q;
|
p = q;
|
||||||
}
|
}
|
||||||
*length = l;
|
gsm->event.message.length = l;
|
||||||
gsm->event.message.number = gsm->number; /* XXX ugly */
|
gsm->event.message.number = gsm->number; /* XXX ugly */
|
||||||
gsm->event.message.content = p;
|
gsm->event.message.content = p;
|
||||||
_gsm_event_send(gsm, GSM_EVENT_TYPE_MESSAGE);
|
_gsm_event_send(gsm, GSM_EVENT_TYPE_MESSAGE);
|
||||||
|
50
src/phone.c
50
src/phone.c
@ -2300,6 +2300,7 @@ static void _phone_track(Phone * phone, PhoneTrack what, gboolean track)
|
|||||||
/* callbacks */
|
/* callbacks */
|
||||||
/* phone_gsm_event */
|
/* phone_gsm_event */
|
||||||
static int _gsm_event_error(Phone * phone, GSMEvent * event);
|
static int _gsm_event_error(Phone * phone, GSMEvent * event);
|
||||||
|
static int _gsm_event_message(Phone * phone, GSMEvent * event);
|
||||||
static int _gsm_event_phone_activity(Phone * phone, GSMPhoneActivity activity);
|
static int _gsm_event_phone_activity(Phone * phone, GSMPhoneActivity activity);
|
||||||
static void _on_sim_pin_valid_response(GtkWidget * widget, gint response,
|
static void _on_sim_pin_valid_response(GtkWidget * widget, gint response,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
@ -2308,8 +2309,6 @@ static int _phone_gsm_event(GSMEvent * event, gpointer data)
|
|||||||
{
|
{
|
||||||
Phone * phone = data;
|
Phone * phone = data;
|
||||||
GSMRegistrationReport report;
|
GSMRegistrationReport report;
|
||||||
GSMEncoding encoding;
|
|
||||||
char * content;
|
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "DEBUG: %s(%d)\n", __func__, event->type);
|
fprintf(stderr, "DEBUG: %s(%d)\n", __func__, event->type);
|
||||||
@ -2374,20 +2373,7 @@ static int _phone_gsm_event(GSMEvent * event, gpointer data)
|
|||||||
event->incoming_message.index);
|
event->incoming_message.index);
|
||||||
return 0;
|
return 0;
|
||||||
case GSM_EVENT_TYPE_MESSAGE:
|
case GSM_EVENT_TYPE_MESSAGE:
|
||||||
encoding = event->message.encoding;
|
return _gsm_event_message(phone, event);
|
||||||
if((content = malloc(event->message.length)) == NULL)
|
|
||||||
return 1; /* XXX report error */
|
|
||||||
memcpy(content, event->message.content,
|
|
||||||
event->message.length);
|
|
||||||
phone_event(phone, PHONE_EVENT_SMS_RECEIVING, &encoding,
|
|
||||||
&content, &event->message.length);
|
|
||||||
phone_event(phone, PHONE_EVENT_SMS_RECEIVED);
|
|
||||||
/* FIXME may be unsuitable (eg not UTF-8...) */
|
|
||||||
phone_messages_set(phone, event->message.index,
|
|
||||||
event->message.number,
|
|
||||||
event->message.date, content);
|
|
||||||
free(content);
|
|
||||||
return 0;
|
|
||||||
case GSM_EVENT_TYPE_MESSAGE_LIST:
|
case GSM_EVENT_TYPE_MESSAGE_LIST:
|
||||||
_phone_fetch_messages(phone, event->message_list.start,
|
_phone_fetch_messages(phone, event->message_list.start,
|
||||||
event->message_list.end);
|
event->message_list.end);
|
||||||
@ -2477,6 +2463,38 @@ static int _gsm_event_error(Phone * phone, GSMEvent * event)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int _gsm_event_message(Phone * phone, GSMEvent * event)
|
||||||
|
{
|
||||||
|
GSMEncoding encoding;
|
||||||
|
char * content;
|
||||||
|
size_t length;
|
||||||
|
|
||||||
|
encoding = event->message.encoding;
|
||||||
|
length = event->message.length;
|
||||||
|
if((content = malloc(length)) == NULL)
|
||||||
|
return 1; /* XXX report error */
|
||||||
|
memcpy(content, event->message.content, length);
|
||||||
|
phone_event(phone, PHONE_EVENT_SMS_RECEIVING, &encoding, &content,
|
||||||
|
&length);
|
||||||
|
phone_event(phone, PHONE_EVENT_SMS_RECEIVED);
|
||||||
|
switch(encoding)
|
||||||
|
{
|
||||||
|
case GSM_ENCODING_UTF8:
|
||||||
|
phone_messages_set(phone, event->message.index,
|
||||||
|
event->message.number,
|
||||||
|
event->message.date, content);
|
||||||
|
break;
|
||||||
|
case GSM_ENCODING_RAW_DATA:
|
||||||
|
phone_messages_set(phone, event->message.index,
|
||||||
|
event->message.number,
|
||||||
|
event->message.date,
|
||||||
|
"Raw data (not shown)");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
free(content);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int _gsm_event_phone_activity(Phone * phone, GSMPhoneActivity activity)
|
static int _gsm_event_phone_activity(Phone * phone, GSMPhoneActivity activity)
|
||||||
{
|
{
|
||||||
switch(activity)
|
switch(activity)
|
||||||
|
Loading…
Reference in New Issue
Block a user