forked from enlightenment/enlightenment
efsd respawnign by e17 is more robust now...
SVN revision: 5078
This commit is contained in:
parent
3d29d46f37
commit
3718f7ecb2
|
@ -21,6 +21,7 @@ static char cfg_apps_menu_db[4096] = "";
|
|||
static char cfg_menus_dir[4096] = "";
|
||||
static char cfg_entries_dir[4096] = "";
|
||||
static char cfg_selections_dir[4096] = "";
|
||||
static char cfg_scrollbars_dir[4096] = "";
|
||||
static char cfg_user_dir[4096] = "";
|
||||
static char cfg_images_dir[4096] = "";
|
||||
static char cfg_backgrounds_dir[4096] = "";
|
||||
|
@ -60,6 +61,8 @@ e_config_get(char *type)
|
|||
PACKAGE_DATA_DIR"/data/config/appearance/default/entries/");
|
||||
E_CONF("selections", cfg_selections_dir,
|
||||
PACKAGE_DATA_DIR"/data/config/appearance/default/selections/");
|
||||
E_CONF("scrollbars", cfg_scrollbars_dir,
|
||||
PACKAGE_DATA_DIR"/data/config/appearance/default/scrollbars/");
|
||||
E_CONF("images", cfg_images_dir,
|
||||
PACKAGE_DATA_DIR"/data/images/");
|
||||
E_CONF("backgrounds", cfg_backgrounds_dir,
|
||||
|
@ -120,6 +123,8 @@ e_config_set_user_dir(char *dir)
|
|||
cfg_apps_menu_db[0]= 0;
|
||||
cfg_menus_dir[0] = 0;
|
||||
cfg_entries_dir[0] = 0;
|
||||
cfg_selections_dir[0] = 0;
|
||||
cfg_scrollbars_dir[0] = 0;
|
||||
cfg_user_dir[0] = 0;
|
||||
cfg_images_dir[0] = 0;
|
||||
cfg_backgrounds_dir[0] = 0;
|
||||
|
|
20
src/fs.c
20
src/fs.c
|
@ -16,12 +16,14 @@ e_fs_child_handle(Eevent *ev)
|
|||
Ev_Child *e;
|
||||
|
||||
e = ev->event;
|
||||
printf("pid went splat! (%i)\n", e->pid);
|
||||
if (e->pid == efsd_pid)
|
||||
{
|
||||
efsd_close(ec);
|
||||
efsd_pid = 0;
|
||||
printf("it was efsd!\n");
|
||||
if (ec) efsd_close(ec);
|
||||
ec = NULL;
|
||||
_e_fs_restarter(0, NULL);
|
||||
efsd_pid = 0;
|
||||
_e_fs_restarter(1, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -53,8 +55,7 @@ _e_fs_fd_handle(int fd)
|
|||
efsd_close(ec);
|
||||
e_del_event_fd(fd);
|
||||
ec = NULL;
|
||||
if (efsd_pid == -2)
|
||||
_e_fs_restarter(0, NULL);
|
||||
_e_fs_restarter(0, NULL);
|
||||
/* FIXME: need to queue a popup dialog here saying */
|
||||
/* efsd went wonky */
|
||||
printf("EEEEEEEEEEK efsd went wonky. Bye bye efsd.\n");
|
||||
|
@ -67,7 +68,7 @@ _e_fs_fd_handle(int fd)
|
|||
printf("fs... too much time spent..\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -75,9 +76,14 @@ _e_fs_restarter(int val, void *data)
|
|||
{
|
||||
if (ec) return;
|
||||
ec = efsd_open();
|
||||
printf("restart efsd...\n");
|
||||
if ((!ec) && (val > 0))
|
||||
{
|
||||
if (efsd_pid <= 0) efsd_pid = e_exec_run("efsd -f");
|
||||
if (efsd_pid <= 0)
|
||||
{
|
||||
efsd_pid = e_exec_run("efsd -f");
|
||||
printf("launch efsd... %i\n", efsd_pid);
|
||||
}
|
||||
if (efsd_pid > 0) ec = efsd_open();
|
||||
}
|
||||
if (ec)
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "scrollbar.h"
|
||||
#include "config.h"
|
||||
|
||||
static void e_scrollbar_recalc(E_Scrollbar *sb);
|
||||
static void e_scrollbar_setup_bits(E_Scrollbar *sb);
|
||||
|
@ -6,15 +7,28 @@ static void e_scrollbar_setup_bits(E_Scrollbar *sb);
|
|||
static void
|
||||
e_scrollbar_recalc(E_Scrollbar *sb)
|
||||
{
|
||||
sb = NULL;
|
||||
UN(sb);
|
||||
}
|
||||
|
||||
static void
|
||||
e_scrollbar_setup_bits(E_Scrollbar *sb)
|
||||
{
|
||||
/* sb->base = ebits_load("");*/
|
||||
/* sb->bar = ebits_load("");*/
|
||||
sb = NULL;
|
||||
char buf[4096];
|
||||
|
||||
if (sb->direction == 1)
|
||||
{
|
||||
sprintf(buf, "%s/scroll_base_v.bits.db", e_config_get("scrollbars"));
|
||||
sb->base = ebits_load(buf);
|
||||
sprintf(buf, "%s/scroll_bar_v.bits.db", e_config_get("scrollbars"));
|
||||
sb->bar = ebits_load(buf);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(buf, "%s/scroll_base_h.bits.db", e_config_get("scrollbars"));
|
||||
sb->base = ebits_load(buf);
|
||||
sprintf(buf, "%s/scroll_bar_h.bits.db", e_config_get("scrollbars"));
|
||||
sb->bar = ebits_load(buf);
|
||||
}
|
||||
}
|
||||
|
||||
E_Scrollbar *
|
||||
|
|
26
src/view.c
26
src/view.c
|
@ -1488,12 +1488,26 @@ e_view_handle_fs_restart(void *data)
|
|||
evas_list_free(icons);
|
||||
}
|
||||
if (e_fs_get_connection())
|
||||
v->monitor_id = efsd_start_monitor(e_fs_get_connection(), v->dir,
|
||||
efsd_ops(2,
|
||||
efsd_op_get_stat(),
|
||||
efsd_op_get_filetype()
|
||||
),
|
||||
TRUE);
|
||||
{
|
||||
if (v->geom_get.busy)
|
||||
{
|
||||
v->geom_get.x = efsd_get_metadata(e_fs_get_connection(),
|
||||
"/view/x", v->dir, EFSD_INT);
|
||||
v->geom_get.y = efsd_get_metadata(e_fs_get_connection(),
|
||||
"/view/y", v->dir, EFSD_INT);
|
||||
v->geom_get.w = efsd_get_metadata(e_fs_get_connection(),
|
||||
"/view/w", v->dir, EFSD_INT);
|
||||
v->geom_get.h = efsd_get_metadata(e_fs_get_connection(),
|
||||
"/view/h", v->dir, EFSD_INT);
|
||||
}
|
||||
v->monitor_id = efsd_start_monitor(e_fs_get_connection(), v->dir,
|
||||
efsd_ops(2,
|
||||
efsd_op_get_stat(),
|
||||
efsd_op_get_filetype()
|
||||
),
|
||||
TRUE);
|
||||
v->is_listing = 1;
|
||||
}
|
||||
printf("restarted monitor id (connection = %p), %i for %s\n", e_fs_get_connection(), v->monitor_id, v->dir);
|
||||
v->is_listing = 1;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue