efm - fix popup if file is a fifo

this fixes T4815

@fix
This commit is contained in:
Al Poole 2016-11-02 10:58:49 +09:00 committed by Carsten Haitzler (Rasterman)
parent 4d32ec9e4e
commit bfe02d2303
1 changed files with 6 additions and 0 deletions

View File

@ -877,12 +877,18 @@ _e_fwin_icon_popup(void *data)
char buf[4096];
int mw, mh;
E_Fm2_Icon_Info *popup_icon;
struct stat st;
fwin->popup_timer = NULL;
popup_icon = e_fm2_icon_file_get(fwin->cur_page->fm_obj, fwin->over_file);
if (!popup_icon) return EINA_FALSE;
snprintf(buf, sizeof(buf), "%s/%s", e_fm2_real_path_get(fwin->cur_page->fm_obj), popup_icon->file);
if (!ecore_file_can_read(buf)) return EINA_FALSE;
if (stat(buf, &st) < 0) return EINA_FALSE;
if (S_ISFIFO(st.st_mode)) return EINA_FALSE;
if (fwin->popup)
{
evas_object_hide(fwin->popup);