summaryrefslogtreecommitdiffstats
path: root/src/guestfs.c
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2009-04-04 10:41:34 +0100
committerRichard Jones <rjones@redhat.com>2009-04-04 10:41:34 +0100
commitc9cc61940b41b1abb763a1932adfc3461372c10b (patch)
tree891b310f73b6d1166b59d91ec6f541923c9ab5e6 /src/guestfs.c
parent64a5ae0e969754c709974104a83e6d1dbb4c2764 (diff)
downloadlibguestfs-c9cc61940b41b1abb763a1932adfc3461372c10b.tar.gz
libguestfs-c9cc61940b41b1abb763a1932adfc3461372c10b.tar.xz
libguestfs-c9cc61940b41b1abb763a1932adfc3461372c10b.zip
Implemented autosync, make it the default for guestfish.
Diffstat (limited to 'src/guestfs.c')
-rw-r--r--src/guestfs.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/guestfs.c b/src/guestfs.c
index 0c0a37fe..747aae50 100644
--- a/src/guestfs.c
+++ b/src/guestfs.c
@@ -116,6 +116,7 @@ struct guestfs_h
int cmdline_size;
int verbose;
+ int autosync;
/* Callbacks. */
guestfs_abort_cb abort_cb;
@@ -216,6 +217,10 @@ guestfs_close (guestfs_h *g)
if (g->verbose)
fprintf (stderr, "closing guestfs handle %p (state %d)\n", g, g->state);
+ /* Try to sync if autosync flag is set. */
+ if (g->autosync && g->state == READY)
+ guestfs_sync (g);
+
/* Remove any handlers that might be called back before we kill the
* subprocess.
*/
@@ -378,6 +383,18 @@ guestfs_get_verbose (guestfs_h *g)
return g->verbose;
}
+void
+guestfs_set_autosync (guestfs_h *g, int a)
+{
+ g->autosync = a;
+}
+
+int
+guestfs_get_autosync (guestfs_h *g)
+{
+ return g->autosync;
+}
+
/* Add a string to the current command line. */
static void
incr_cmdline_size (guestfs_h *g)