forked from enlightenment/enlightenment
parent
851015e654
commit
0041b7d1ef
|
@ -16,7 +16,7 @@
|
||||||
# ifdef __cplusplus
|
# ifdef __cplusplus
|
||||||
extern "C"
|
extern "C"
|
||||||
# endif
|
# endif
|
||||||
void *alloca (size_t);
|
void *alloca(size_t);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
|
@ -60,34 +60,68 @@ static E_DBus_Signal_Handler *_hal_poll = NULL;
|
||||||
static E_DBus_Connection *_e_fm_main_hal_conn = NULL;
|
static E_DBus_Connection *_e_fm_main_hal_conn = NULL;
|
||||||
static Eina_List *_e_stores = NULL;
|
static Eina_List *_e_stores = NULL;
|
||||||
|
|
||||||
static void _e_fm_main_hal_cb_dev_all(void *user_data, void *reply_data, DBusError *error);
|
static void _e_fm_main_hal_cb_dev_all(void *user_data,
|
||||||
static void _e_fm_main_hal_cb_dev_store(void *user_data, void *reply_data, DBusError *error);
|
void *reply_data,
|
||||||
static void _e_fm_main_hal_cb_dev_vol(void *user_data, void *reply_data, DBusError *error);
|
DBusError *error);
|
||||||
static void _e_fm_main_hal_cb_store_is(void *user_data, void *reply_data, DBusError *error);
|
static void _e_fm_main_hal_cb_dev_store(void *user_data,
|
||||||
static void _e_fm_main_hal_cb_vol_is(void *user_data, void *reply_data, DBusError *error);
|
void *reply_data,
|
||||||
static void _e_fm_main_hal_cb_dev_add(void *data, DBusMessage *msg);
|
DBusError *error);
|
||||||
static void _e_fm_main_hal_cb_dev_del(void *data, DBusMessage *msg);
|
static void _e_fm_main_hal_cb_dev_vol(void *user_data,
|
||||||
static void _e_fm_main_hal_cb_cap_add(void *data, DBusMessage *msg);
|
void *reply_data,
|
||||||
static void _e_fm_main_hal_cb_prop_modified(void *data, DBusMessage *msg);
|
DBusError *error);
|
||||||
static void _e_fm_main_hal_cb_store_prop(void *data, void *reply_data, DBusError *error);
|
static void _e_fm_main_hal_cb_store_is(void *user_data,
|
||||||
static void _e_fm_main_hal_cb_vol_prop(void *data, void *reply_data, DBusError *error);
|
void *reply_data,
|
||||||
static void _e_fm_main_hal_cb_vol_prop_mount_modified(void *data, void *reply_data, DBusError *error);
|
DBusError *error);
|
||||||
static void _e_fm_main_hal_cb_vol_mounted(void *user_data, void *method_return, DBusError *error);
|
static void _e_fm_main_hal_cb_vol_is(void *user_data,
|
||||||
static void _e_fm_main_hal_cb_vol_unmounted(void *user_data, void *method_return, DBusError *error);
|
void *reply_data,
|
||||||
static void _e_fm_main_hal_cb_vol_unmounted_before_eject(void *user_data, void *method_return, DBusError *error);
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_cb_dev_add(void *data,
|
||||||
|
DBusMessage *msg);
|
||||||
|
static void _e_fm_main_hal_cb_dev_del(void *data,
|
||||||
|
DBusMessage *msg);
|
||||||
|
static void _e_fm_main_hal_cb_cap_add(void *data,
|
||||||
|
DBusMessage *msg);
|
||||||
|
static void _e_fm_main_hal_cb_prop_modified(void *data,
|
||||||
|
DBusMessage *msg);
|
||||||
|
static void _e_fm_main_hal_cb_store_prop(void *data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_cb_vol_prop(void *data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_cb_vol_prop_mount_modified(void *data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_cb_vol_mounted(void *user_data,
|
||||||
|
void *method_return,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_cb_vol_unmounted(void *user_data,
|
||||||
|
void *method_return,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_cb_vol_unmounted_before_eject(void *user_data,
|
||||||
|
void *method_return,
|
||||||
|
DBusError *error);
|
||||||
|
|
||||||
static Eina_Bool _e_fm_main_hal_vb_vol_ejecting_after_unmount(void *data);
|
static Eina_Bool _e_fm_main_hal_vb_vol_ejecting_after_unmount(void *data);
|
||||||
static void _e_fm_main_hal_cb_vol_ejected(void *user_data, void *method_return, DBusError *error);
|
static void _e_fm_main_hal_cb_vol_ejected(void *user_data,
|
||||||
static int _e_fm_main_hal_format_error_msg(char **buf, E_Volume *v, DBusError *error);
|
void *method_return,
|
||||||
static void _e_fm_main_hal_test(void *data, DBusMessage *msg, DBusError *error);
|
DBusError *error);
|
||||||
static void _e_fm_main_hal_poll(void *data, DBusMessage *msg);
|
static int _e_fm_main_hal_format_error_msg(char **buf,
|
||||||
|
E_Volume *v,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_test(void *data,
|
||||||
|
DBusMessage *msg,
|
||||||
|
DBusError *error);
|
||||||
|
static void _e_fm_main_hal_poll(void *data,
|
||||||
|
DBusMessage *msg);
|
||||||
|
|
||||||
static Eina_Bool _e_fm_main_hal_vol_mount_timeout(void *data);
|
static Eina_Bool _e_fm_main_hal_vol_mount_timeout(void *data);
|
||||||
static Eina_Bool _e_fm_main_hal_vol_unmount_timeout(void *data);
|
static Eina_Bool _e_fm_main_hal_vol_unmount_timeout(void *data);
|
||||||
static Eina_Bool _e_fm_main_hal_vol_eject_timeout(void *data);
|
static Eina_Bool _e_fm_main_hal_vol_eject_timeout(void *data);
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_poll(void *data __UNUSED__, DBusMessage *msg)
|
_e_fm_main_hal_poll(void *data __UNUSED__,
|
||||||
|
DBusMessage *msg)
|
||||||
{
|
{
|
||||||
DBusError err;
|
DBusError err;
|
||||||
const char *name, *from, *to;
|
const char *name, *from, *to;
|
||||||
|
@ -106,7 +140,9 @@ _e_fm_main_hal_poll(void *data __UNUSED__, DBusMessage *msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_test(void *data __UNUSED__, DBusMessage *msg __UNUSED__, DBusError *error)
|
_e_fm_main_hal_test(void *data __UNUSED__,
|
||||||
|
DBusMessage *msg __UNUSED__,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
if ((error) && (dbus_error_is_set(error)))
|
if ((error) && (dbus_error_is_set(error)))
|
||||||
{
|
{
|
||||||
|
@ -150,7 +186,9 @@ _e_fm_main_hal_test(void *data __UNUSED__, DBusMessage *msg __UNUSED__, DBusErro
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_dev_all(void *user_data __UNUSED__, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_dev_all(void *user_data __UNUSED__,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Hal_Manager_Get_All_Devices_Return *ret = reply_data;
|
E_Hal_Manager_Get_All_Devices_Return *ret = reply_data;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
|
@ -168,14 +206,16 @@ _e_fm_main_hal_cb_dev_all(void *user_data __UNUSED__, void *reply_data, DBusErro
|
||||||
{
|
{
|
||||||
// printf("DB INIT DEV+: %s\n", udi);
|
// printf("DB INIT DEV+: %s\n", udi);
|
||||||
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "storage",
|
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "storage",
|
||||||
_e_fm_main_hal_cb_store_is, (void*)eina_stringshare_add(udi));
|
_e_fm_main_hal_cb_store_is, (void *)eina_stringshare_add(udi));
|
||||||
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "volume",
|
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "volume",
|
||||||
_e_fm_main_hal_cb_vol_is, (void*)eina_stringshare_add(udi));
|
_e_fm_main_hal_cb_vol_is, (void *)eina_stringshare_add(udi));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_dev_store(void *user_data __UNUSED__, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_dev_store(void *user_data __UNUSED__,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Hal_Manager_Find_Device_By_Capability_Return *ret = reply_data;
|
E_Hal_Manager_Find_Device_By_Capability_Return *ret = reply_data;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
|
@ -197,7 +237,9 @@ _e_fm_main_hal_cb_dev_store(void *user_data __UNUSED__, void *reply_data, DBusEr
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_dev_vol(void *user_data __UNUSED__, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_dev_vol(void *user_data __UNUSED__,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Hal_Manager_Find_Device_By_Capability_Return *ret = reply_data;
|
E_Hal_Manager_Find_Device_By_Capability_Return *ret = reply_data;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
|
@ -219,7 +261,9 @@ _e_fm_main_hal_cb_dev_vol(void *user_data __UNUSED__, void *reply_data, DBusErro
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_store_is(void *user_data, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_store_is(void *user_data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
char *udi = user_data;
|
char *udi = user_data;
|
||||||
E_Hal_Device_Query_Capability_Return *ret = reply_data;
|
E_Hal_Device_Query_Capability_Return *ret = reply_data;
|
||||||
|
@ -236,12 +280,14 @@ _e_fm_main_hal_cb_store_is(void *user_data, void *reply_data, DBusError *error)
|
||||||
_e_fm_main_hal_storage_add(udi);
|
_e_fm_main_hal_storage_add(udi);
|
||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
eina_stringshare_del(udi);
|
eina_stringshare_del(udi);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_is(void *user_data, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_vol_is(void *user_data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
char *udi = user_data;
|
char *udi = user_data;
|
||||||
E_Hal_Device_Query_Capability_Return *ret = reply_data;
|
E_Hal_Device_Query_Capability_Return *ret = reply_data;
|
||||||
|
@ -258,12 +304,13 @@ _e_fm_main_hal_cb_vol_is(void *user_data, void *reply_data, DBusError *error)
|
||||||
_e_fm_main_hal_volume_add(udi, 0);
|
_e_fm_main_hal_volume_add(udi, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
eina_stringshare_del(udi);
|
eina_stringshare_del(udi);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_dev_add(void *data __UNUSED__, DBusMessage *msg)
|
_e_fm_main_hal_cb_dev_add(void *data __UNUSED__,
|
||||||
|
DBusMessage *msg)
|
||||||
{
|
{
|
||||||
DBusError err;
|
DBusError err;
|
||||||
char *udi = NULL;
|
char *udi = NULL;
|
||||||
|
@ -272,13 +319,14 @@ _e_fm_main_hal_cb_dev_add(void *data __UNUSED__, DBusMessage *msg)
|
||||||
dbus_message_get_args(msg, &err, DBUS_TYPE_STRING, &udi, DBUS_TYPE_INVALID);
|
dbus_message_get_args(msg, &err, DBUS_TYPE_STRING, &udi, DBUS_TYPE_INVALID);
|
||||||
if (!udi) return;
|
if (!udi) return;
|
||||||
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "storage",
|
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "storage",
|
||||||
_e_fm_main_hal_cb_store_is, (void*)eina_stringshare_add(udi));
|
_e_fm_main_hal_cb_store_is, (void *)eina_stringshare_add(udi));
|
||||||
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "volume",
|
e_hal_device_query_capability(_e_fm_main_hal_conn, udi, "volume",
|
||||||
_e_fm_main_hal_cb_vol_is, (void*)eina_stringshare_add(udi));
|
_e_fm_main_hal_cb_vol_is, (void *)eina_stringshare_add(udi));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_dev_del(void *data __UNUSED__, DBusMessage *msg)
|
_e_fm_main_hal_cb_dev_del(void *data __UNUSED__,
|
||||||
|
DBusMessage *msg)
|
||||||
{
|
{
|
||||||
DBusError err;
|
DBusError err;
|
||||||
char *udi;
|
char *udi;
|
||||||
|
@ -294,7 +342,8 @@ _e_fm_main_hal_cb_dev_del(void *data __UNUSED__, DBusMessage *msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_cap_add(void *data __UNUSED__, DBusMessage *msg)
|
_e_fm_main_hal_cb_cap_add(void *data __UNUSED__,
|
||||||
|
DBusMessage *msg)
|
||||||
{
|
{
|
||||||
DBusError err;
|
DBusError err;
|
||||||
char *udi, *capability;
|
char *udi, *capability;
|
||||||
|
@ -313,11 +362,13 @@ _e_fm_main_hal_cb_cap_add(void *data __UNUSED__, DBusMessage *msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_prop_modified(void *data, DBusMessage *msg)
|
_e_fm_main_hal_cb_prop_modified(void *data,
|
||||||
|
DBusMessage *msg)
|
||||||
{
|
{
|
||||||
E_Volume *v;
|
E_Volume *v;
|
||||||
DBusMessageIter iter, sub, subsub;
|
DBusMessageIter iter, sub, subsub;
|
||||||
struct {
|
struct
|
||||||
|
{
|
||||||
const char *name;
|
const char *name;
|
||||||
int added;
|
int added;
|
||||||
int removed;
|
int removed;
|
||||||
|
@ -361,7 +412,9 @@ _e_fm_main_hal_cb_prop_modified(void *data, DBusMessage *msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_store_prop(void *data, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_store_prop(void *data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Storage *s = data;
|
E_Storage *s = data;
|
||||||
E_Hal_Properties *ret = reply_data;
|
E_Hal_Properties *ret = reply_data;
|
||||||
|
@ -419,7 +472,7 @@ _e_fm_main_hal_cb_store_prop(void *data, void *reply_data, DBusError *error)
|
||||||
if (msg_data)
|
if (msg_data)
|
||||||
{
|
{
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_STORAGE_ADD,
|
E_FM_OP_STORAGE_ADD,
|
||||||
0, 0, 0, msg_data, msg_size);
|
0, 0, 0, msg_data, msg_size);
|
||||||
free(msg_data);
|
free(msg_data);
|
||||||
|
@ -427,13 +480,15 @@ _e_fm_main_hal_cb_store_prop(void *data, void *reply_data, DBusError *error)
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
// printf("ERR %s\n", s->udi);
|
// printf("ERR %s\n", s->udi);
|
||||||
_e_fm_main_hal_storage_del(s->udi);
|
_e_fm_main_hal_storage_del(s->udi);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_prop(void *data, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_vol_prop(void *data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Volume *v = data;
|
E_Volume *v = data;
|
||||||
E_Storage *s = NULL;
|
E_Storage *s = NULL;
|
||||||
|
@ -513,7 +568,7 @@ _e_fm_main_hal_cb_vol_prop(void *data, void *reply_data, DBusError *error)
|
||||||
if (msg_data)
|
if (msg_data)
|
||||||
{
|
{
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_VOLUME_ADD,
|
E_FM_OP_VOLUME_ADD,
|
||||||
0, 0, 0, msg_data, msg_size);
|
0, 0, 0, msg_data, msg_size);
|
||||||
free(msg_data);
|
free(msg_data);
|
||||||
|
@ -521,13 +576,15 @@ _e_fm_main_hal_cb_vol_prop(void *data, void *reply_data, DBusError *error)
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
_e_fm_main_hal_volume_del(v->udi);
|
_e_fm_main_hal_volume_del(v->udi);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
_e_fm_main_hal_format_error_msg(char **buf, E_Volume *v, DBusError *error)
|
_e_fm_main_hal_format_error_msg(char **buf,
|
||||||
|
E_Volume *v,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
int size, vu, vm, en;
|
int size, vu, vm, en;
|
||||||
char *tmp;
|
char *tmp;
|
||||||
|
@ -550,7 +607,9 @@ _e_fm_main_hal_format_error_msg(char **buf, E_Volume *v, DBusError *error)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_prop_mount_modified(void *data, void *reply_data, DBusError *error)
|
_e_fm_main_hal_cb_vol_prop_mount_modified(void *data,
|
||||||
|
void *reply_data,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Volume *v = data;
|
E_Volume *v = data;
|
||||||
E_Hal_Device_Get_All_Properties_Return *ret = reply_data;
|
E_Hal_Device_Get_All_Properties_Return *ret = reply_data;
|
||||||
|
@ -564,10 +623,10 @@ _e_fm_main_hal_cb_vol_prop_mount_modified(void *data, void *reply_data, DBusErro
|
||||||
|
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
||||||
if (v->mounted)
|
if (v->mounted)
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_UNMOUNT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_UNMOUNT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
else
|
else
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_MOUNT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_MOUNT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
dbus_error_free(error);
|
dbus_error_free(error);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
@ -593,12 +652,12 @@ _e_fm_main_hal_cb_vol_prop_mount_modified(void *data, void *reply_data, DBusErro
|
||||||
strcpy(buf + strlen(buf) + 1, v->mount_point);
|
strcpy(buf + strlen(buf) + 1, v->mount_point);
|
||||||
if (v->mounted)
|
if (v->mounted)
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_MOUNT_DONE,
|
E_FM_OP_MOUNT_DONE,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
else
|
else
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_UNMOUNT_DONE,
|
E_FM_OP_UNMOUNT_DONE,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
}
|
}
|
||||||
|
@ -618,7 +677,7 @@ _e_fm_main_hal_vol_mount_timeout(void *data)
|
||||||
error.name = "org.enlightenment.fm2.MountTimeout";
|
error.name = "org.enlightenment.fm2.MountTimeout";
|
||||||
error.message = "Unable to mount the volume with specified time-out.";
|
error.message = "Unable to mount the volume with specified time-out.";
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, &error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, &error);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_MOUNT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_MOUNT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
|
||||||
|
@ -626,7 +685,9 @@ _e_fm_main_hal_vol_mount_timeout(void *data)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_mounted(void *user_data, void *method_return __UNUSED__, DBusError *error)
|
_e_fm_main_hal_cb_vol_mounted(void *user_data,
|
||||||
|
void *method_return __UNUSED__,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Volume *v = user_data;
|
E_Volume *v = user_data;
|
||||||
char *buf;
|
char *buf;
|
||||||
|
@ -641,7 +702,7 @@ _e_fm_main_hal_cb_vol_mounted(void *user_data, void *method_return __UNUSED__, D
|
||||||
if (dbus_error_is_set(error))
|
if (dbus_error_is_set(error))
|
||||||
{
|
{
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_MOUNT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_MOUNT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
dbus_error_free(error);
|
dbus_error_free(error);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
@ -656,13 +717,12 @@ _e_fm_main_hal_cb_vol_mounted(void *user_data, void *method_return __UNUSED__, D
|
||||||
strcpy(buf, v->udi);
|
strcpy(buf, v->udi);
|
||||||
strcpy(buf + strlen(buf) + 1, v->mount_point);
|
strcpy(buf + strlen(buf) + 1, v->mount_point);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_MOUNT_DONE,
|
E_FM_OP_MOUNT_DONE,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_e_fm_main_hal_vol_unmount_timeout(void *data)
|
_e_fm_main_hal_vol_unmount_timeout(void *data)
|
||||||
{
|
{
|
||||||
|
@ -676,7 +736,7 @@ _e_fm_main_hal_vol_unmount_timeout(void *data)
|
||||||
error.name = "org.enlightenment.fm2.UnmountTimeout";
|
error.name = "org.enlightenment.fm2.UnmountTimeout";
|
||||||
error.message = "Unable to unmount the volume with specified time-out.";
|
error.message = "Unable to unmount the volume with specified time-out.";
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, &error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, &error);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_UNMOUNT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_UNMOUNT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
|
||||||
|
@ -684,7 +744,9 @@ _e_fm_main_hal_vol_unmount_timeout(void *data)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_unmounted(void *user_data, void *method_return __UNUSED__, DBusError *error)
|
_e_fm_main_hal_cb_vol_unmounted(void *user_data,
|
||||||
|
void *method_return __UNUSED__,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Volume *v = user_data;
|
E_Volume *v = user_data;
|
||||||
char *buf;
|
char *buf;
|
||||||
|
@ -699,7 +761,7 @@ _e_fm_main_hal_cb_vol_unmounted(void *user_data, void *method_return __UNUSED__,
|
||||||
if (dbus_error_is_set(error))
|
if (dbus_error_is_set(error))
|
||||||
{
|
{
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_UNMOUNT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_UNMOUNT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
dbus_error_free(error);
|
dbus_error_free(error);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
@ -714,13 +776,12 @@ _e_fm_main_hal_cb_vol_unmounted(void *user_data, void *method_return __UNUSED__,
|
||||||
strcpy(buf, v->udi);
|
strcpy(buf, v->udi);
|
||||||
strcpy(buf + strlen(buf) + 1, v->mount_point);
|
strcpy(buf + strlen(buf) + 1, v->mount_point);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_UNMOUNT_DONE,
|
E_FM_OP_UNMOUNT_DONE,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_e_fm_main_hal_vol_eject_timeout(void *data)
|
_e_fm_main_hal_vol_eject_timeout(void *data)
|
||||||
{
|
{
|
||||||
|
@ -734,7 +795,7 @@ _e_fm_main_hal_vol_eject_timeout(void *data)
|
||||||
error.name = "org.enlightenment.fm2.EjectTimeout";
|
error.name = "org.enlightenment.fm2.EjectTimeout";
|
||||||
error.message = "Unable to eject the media with specified time-out.";
|
error.message = "Unable to eject the media with specified time-out.";
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, &error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, &error);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_EJECT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_EJECT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
|
||||||
|
@ -754,7 +815,9 @@ _e_fm_main_hal_vb_vol_ejecting_after_unmount(void *data)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_unmounted_before_eject(void *user_data, void *method_return, DBusError *error)
|
_e_fm_main_hal_cb_vol_unmounted_before_eject(void *user_data,
|
||||||
|
void *method_return,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Volume *v = user_data;
|
E_Volume *v = user_data;
|
||||||
char err;
|
char err;
|
||||||
|
@ -768,7 +831,9 @@ _e_fm_main_hal_cb_vol_unmounted_before_eject(void *user_data, void *method_retur
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_e_fm_main_hal_cb_vol_ejected(void *user_data, void *method_return __UNUSED__, DBusError *error)
|
_e_fm_main_hal_cb_vol_ejected(void *user_data,
|
||||||
|
void *method_return __UNUSED__,
|
||||||
|
DBusError *error)
|
||||||
{
|
{
|
||||||
E_Volume *v = user_data;
|
E_Volume *v = user_data;
|
||||||
char *buf;
|
char *buf;
|
||||||
|
@ -783,7 +848,7 @@ _e_fm_main_hal_cb_vol_ejected(void *user_data, void *method_return __UNUSED__, D
|
||||||
if (dbus_error_is_set(error))
|
if (dbus_error_is_set(error))
|
||||||
{
|
{
|
||||||
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
size = _e_fm_main_hal_format_error_msg(&buf, v, error);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server, 6/*E_IPC_DOMAIN_FM*/, E_FM_OP_EJECT_ERROR,
|
ecore_ipc_server_send(_e_fm_ipc_server, 6 /*E_IPC_DOMAIN_FM*/, E_FM_OP_EJECT_ERROR,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
dbus_error_free(error);
|
dbus_error_free(error);
|
||||||
free(buf);
|
free(buf);
|
||||||
|
@ -794,7 +859,7 @@ _e_fm_main_hal_cb_vol_ejected(void *user_data, void *method_return __UNUSED__, D
|
||||||
buf = alloca(size);
|
buf = alloca(size);
|
||||||
strcpy(buf, v->udi);
|
strcpy(buf, v->udi);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_EJECT_DONE,
|
E_FM_OP_EJECT_DONE,
|
||||||
0, 0, 0, buf, size);
|
0, 0, 0, buf, size);
|
||||||
}
|
}
|
||||||
|
@ -802,7 +867,8 @@ _e_fm_main_hal_cb_vol_ejected(void *user_data, void *method_return __UNUSED__, D
|
||||||
static Eina_List *_e_vols = NULL;
|
static Eina_List *_e_vols = NULL;
|
||||||
|
|
||||||
E_Volume *
|
E_Volume *
|
||||||
_e_fm_main_hal_volume_add(const char *udi, Eina_Bool first_time)
|
_e_fm_main_hal_volume_add(const char *udi,
|
||||||
|
Eina_Bool first_time)
|
||||||
{
|
{
|
||||||
E_Volume *v;
|
E_Volume *v;
|
||||||
|
|
||||||
|
@ -846,7 +912,7 @@ _e_fm_main_hal_volume_del(const char *udi)
|
||||||
// printf("--VOL %s\n", v->udi);
|
// printf("--VOL %s\n", v->udi);
|
||||||
/* FIXME: send event of storage volume (disk) removed */
|
/* FIXME: send event of storage volume (disk) removed */
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_VOLUME_DEL,
|
E_FM_OP_VOLUME_DEL,
|
||||||
0, 0, 0, v->udi, eina_stringshare_strlen(v->udi) + 1);
|
0, 0, 0, v->udi, eina_stringshare_strlen(v->udi) + 1);
|
||||||
}
|
}
|
||||||
|
@ -997,7 +1063,7 @@ _e_fm_main_hal_storage_del(const char *udi)
|
||||||
{
|
{
|
||||||
// printf("--STO %s\n", s->udi);
|
// printf("--STO %s\n", s->udi);
|
||||||
ecore_ipc_server_send(_e_fm_ipc_server,
|
ecore_ipc_server_send(_e_fm_ipc_server,
|
||||||
6/*E_IPC_DOMAIN_FM*/,
|
6 /*E_IPC_DOMAIN_FM*/,
|
||||||
E_FM_OP_STORAGE_DEL,
|
E_FM_OP_STORAGE_DEL,
|
||||||
0, 0, 0, s->udi, strlen(s->udi) + 1);
|
0, 0, 0, s->udi, strlen(s->udi) + 1);
|
||||||
}
|
}
|
||||||
|
@ -1017,3 +1083,4 @@ _e_fm_main_hal_storage_find(const char *udi)
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue