aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-meta.c
diff options
context:
space:
mode:
Diffstat (limited to 'e-util/e-meta.c')
-rw-r--r--e-util/e-meta.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/e-util/e-meta.c b/e-util/e-meta.c
index 2b0dce5c30..a4c0ad562b 100644
--- a/e-util/e-meta.c
+++ b/e-util/e-meta.c
@@ -107,10 +107,14 @@ static int meta_load(EMeta *em)
{
struct _EMetaPrivate *p = em->priv;
struct _meta_data *tail, *md;
- xmlDocPtr doc;
+ xmlDocPtr doc = NULL;
xmlNodePtr root, work;
char *name, *val;
-
+ struct stat st;
+
+ if (stat (p->path, &st) == -1 || !S_ISREG (st.st_mode))
+ return -1;
+
doc = xmlParseFile(p->path);
if (doc == NULL)
return -1;