parent
baee01fd76
commit
e70669f3d1
|
@ -75,14 +75,14 @@ _ecore_dbus_event_server_data(void *udata, int ev_type, void *ev)
|
|||
Ecore_DBus_Event_Server_Data *event;
|
||||
|
||||
event = ev;
|
||||
if (!event->method) return 0;
|
||||
printf("_ecore_dbus_event_server_data %s\n", event->method);
|
||||
if (!strcmp(event->method, "org.freedesktop.DBus.Hello"))
|
||||
if (event->type != ECORE_DBUS_MESSAGE_TYPE_METHOD_RETURN) return 0;
|
||||
printf("_ecore_dbus_event_server_data %s\n", event->member);
|
||||
if (!strcmp(event->member, "org.freedesktop.DBus.Hello"))
|
||||
{
|
||||
printf("List names\n");
|
||||
ecore_dbus_method_list_names(event->server);
|
||||
}
|
||||
else if (!strcmp(event->method, "org.freedesktop.DBus.ListNames"))
|
||||
else if (!strcmp(event->member, "org.freedesktop.DBus.ListNames"))
|
||||
{
|
||||
Ecore_List *names;
|
||||
|
||||
|
|
|
@ -46,6 +46,15 @@ extern "C" {
|
|||
ECORE_DBUS_BUS_ACTIVATION
|
||||
} Ecore_DBus_Type;
|
||||
|
||||
typedef enum _Ecore_DBus_Message_Type
|
||||
{
|
||||
ECORE_DBUS_MESSAGE_TYPE_INVALID,
|
||||
ECORE_DBUS_MESSAGE_TYPE_METHOD_CALL,
|
||||
ECORE_DBUS_MESSAGE_TYPE_METHOD_RETURN,
|
||||
ECORE_DBUS_MESSAGE_TYPE_ERROR,
|
||||
ECORE_DBUS_MESSAGE_TYPE_SIGNAL
|
||||
} Ecore_DBus_Message_Type;
|
||||
|
||||
typedef enum _Ecore_DBus_Data_Type
|
||||
{
|
||||
ECORE_DBUS_DATA_TYPE_INVALID = ((int) '\0'),
|
||||
|
@ -84,7 +93,8 @@ extern "C" {
|
|||
struct _Ecore_DBus_Event_Server_Data
|
||||
{
|
||||
Ecore_DBus_Server *server;
|
||||
char *method;
|
||||
Ecore_DBus_Message_Type type;
|
||||
char *member;
|
||||
Ecore_DBus_Message *message;
|
||||
};
|
||||
|
||||
|
|
|
@ -377,9 +377,10 @@ _ecore_dbus_event_server_data(void *udata, int ev_type, void *ev)
|
|||
method = NULL;
|
||||
}
|
||||
ev = malloc(sizeof(Ecore_DBus_Event_Server_Data));
|
||||
ev->type = msg->type;
|
||||
ev->server = svr;
|
||||
ev->message = msg;
|
||||
ev->method = method;
|
||||
ev->member = method;
|
||||
ecore_event_add(ECORE_DBUS_EVENT_SERVER_DATA, ev,
|
||||
_ecore_dbus_event_server_data_free, NULL);
|
||||
}
|
||||
|
@ -394,6 +395,6 @@ _ecore_dbus_event_server_data_free(void *data, void *ev)
|
|||
|
||||
event = ev;
|
||||
_ecore_dbus_message_free(event->message);
|
||||
if (event->method) free(event->method);
|
||||
if (event->member) free(event->member);
|
||||
free(ev);
|
||||
}
|
||||
|
|
|
@ -54,15 +54,6 @@ typedef enum _Ecore_DBus_Auth_Type
|
|||
ECORE_DBUS_AUTH_TYPE_SKEY
|
||||
} Ecore_DBus_Auth_Type;
|
||||
|
||||
typedef enum _Ecore_DBus_Message_Type
|
||||
{
|
||||
ECORE_DBUS_MESSAGE_TYPE_INVALID,
|
||||
ECORE_DBUS_MESSAGE_TYPE_METHOD_CALL,
|
||||
ECORE_DBUS_MESSAGE_TYPE_METHOD_RETURN,
|
||||
ECORE_DBUS_MESSAGE_TYPE_ERROR,
|
||||
ECORE_DBUS_MESSAGE_TYPE_SIGNAL
|
||||
} Ecore_DBus_Message_Type;
|
||||
|
||||
struct _Ecore_DBus_Server
|
||||
{
|
||||
Ecore_List2 __list_data;
|
||||
|
|
Loading…
Reference in New Issue