diff options
author | Michael Albinus <michael.albinus@gmx.de> | 2015-08-21 11:40:38 +0200 |
---|---|---|
committer | Michael Albinus <michael.albinus@gmx.de> | 2015-08-21 11:40:38 +0200 |
commit | 21c2b4ac52e2b1eb971e6f1e039db9108949e0eb (patch) | |
tree | 4ff353bff030a55c03a18fe357dbf4ce3f29762d /src/gfilenotify.c | |
parent | b77bdb50ad44888d0544479f5bf74635ac9b06c1 (diff) | |
download | emacs-21c2b4ac52e2b1eb971e6f1e039db9108949e0eb.tar.gz |
* src/gfilenotify.c (Fgfile_add_watch):
Handle errors from g_file_monitor.
Diffstat (limited to 'src/gfilenotify.c')
-rw-r--r-- | src/gfilenotify.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/gfilenotify.c b/src/gfilenotify.c index 5488fa38507..5c6ebe65d87 100644 --- a/src/gfilenotify.c +++ b/src/gfilenotify.c @@ -150,6 +150,7 @@ will be reported only in case of the `moved' event. */) GFile *gfile; GFileMonitor *monitor; GFileMonitorFlags gflags = G_FILE_MONITOR_NONE; + GError *gerror = NULL; /* Check parameters. */ CHECK_STRING (file); @@ -172,7 +173,14 @@ will be reported only in case of the `moved' event. */) gflags |= G_FILE_MONITOR_SEND_MOVED; /* Enable watch. */ - monitor = g_file_monitor (gfile, gflags, NULL, NULL); + monitor = g_file_monitor (gfile, gflags, NULL, &gerror); + if (gerror) + { + char msg[1024]; + strcpy (msg, gerror->message); + g_error_free (gerror); + xsignal1 (Qfile_notify_error, build_string (msg)); + } if (! monitor) xsignal2 (Qfile_notify_error, build_string ("Cannot watch file"), file); |