summaryrefslogtreecommitdiffstats
path: root/gatchat
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2010-03-31 18:47:30 -0500
committerDenis Kenzior <denkenz@gmail.com>2010-03-31 18:47:30 -0500
commitcc1bb46ffadaf41e3c501cc03eeabb9c1ba5ee08 (patch)
tree4658747bc7aa9037f7599d8450c00a4e7705a880 /gatchat
parentd6093b819fd31be14becc6dfcaeb30001eb88bc1 (diff)
downloadofono-cc1bb46ffadaf41e3c501cc03eeabb9c1ba5ee08.tar.bz2
Refactor: Use GAtDisconnectFunc for ppp disconnect
The ppp argument to the current disconnect callback is useless as the ppp structure is most likely stored in user data anyway.
Diffstat (limited to 'gatchat')
-rw-r--r--gatchat/gatppp.c10
-rw-r--r--gatchat/gatppp.h7
-rw-r--r--gatchat/ppp.c2
-rw-r--r--gatchat/ppp.h2
4 files changed, 11 insertions, 10 deletions
diff --git a/gatchat/gatppp.c b/gatchat/gatppp.c
index 7afff531..556387ae 100644
--- a/gatchat/gatppp.c
+++ b/gatchat/gatppp.c
@@ -59,11 +59,13 @@ void g_at_ppp_set_connect_function(GAtPPP *ppp, GAtPPPConnectFunc func,
ppp->connect_data = user_data;
}
-void g_at_ppp_set_disconnect_function(GAtPPP *ppp,
- GAtPPPDisconnectFunc callback,
- gpointer user_data)
+void g_at_ppp_set_disconnect_function(GAtPPP *ppp, GAtDisconnectFunc func,
+ gpointer user_data)
{
- ppp->disconnect_cb = callback;
+ if (func == NULL)
+ return;
+
+ ppp->disconnect_cb = func;
ppp->disconnect_data = user_data;
}
diff --git a/gatchat/gatppp.h b/gatchat/gatppp.h
index 41aadcad..b37f74d5 100644
--- a/gatchat/gatppp.h
+++ b/gatchat/gatppp.h
@@ -26,6 +26,8 @@
extern "C" {
#endif
+#include "gat.h"
+
struct _GAtPPP;
typedef struct _GAtPPP GAtPPP;
@@ -39,14 +41,11 @@ typedef void (*GAtPPPConnectFunc)(GAtPPPConnectStatus success,
const char *dns1, const char *dns2,
gpointer user_data);
-typedef void (*GAtPPPDisconnectFunc)(GAtPPP *ppp, gpointer user_data);
-
GAtPPP * g_at_ppp_new(GIOChannel *modem);
void g_at_ppp_open(GAtPPP *ppp);
void g_at_ppp_set_connect_function(GAtPPP *ppp, GAtPPPConnectFunc callback,
gpointer user_data);
-void g_at_ppp_set_disconnect_function(GAtPPP *ppp,
- GAtPPPDisconnectFunc callback,
+void g_at_ppp_set_disconnect_function(GAtPPP *ppp, GAtDisconnectFunc func,
gpointer user_data);
void g_at_ppp_shutdown(GAtPPP *ppp);
void g_at_ppp_ref(GAtPPP *ppp);
diff --git a/gatchat/ppp.c b/gatchat/ppp.c
index 7755791c..99af49a3 100644
--- a/gatchat/ppp.c
+++ b/gatchat/ppp.c
@@ -383,7 +383,7 @@ static void ppp_dead(GAtPPP *ppp)
{
/* notify interested parties */
if (ppp->disconnect_cb)
- ppp->disconnect_cb(ppp, ppp->disconnect_data);
+ ppp->disconnect_cb(ppp->disconnect_data);
if (g_atomic_int_get(&ppp->ref_count))
return;
diff --git a/gatchat/ppp.h b/gatchat/ppp.h
index 6797603d..9a9eab2b 100644
--- a/gatchat/ppp.h
+++ b/gatchat/ppp.h
@@ -133,7 +133,7 @@ struct _GAtPPP {
GQueue *recv_queue;
GAtPPPConnectFunc connect_cb;
gpointer connect_data;
- GAtPPPDisconnectFunc disconnect_cb;
+ GAtDisconnectFunc disconnect_cb;
gpointer disconnect_data;
gint modem_watch;
};