X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=fuse%2Fguestmount.c;h=27a4cef2e149027b06cefbfadf89ab64c4de4bc7;hb=3119aa687d4d594b50ee9df5ff6e8d709eb7ca85;hp=9f0a39ecbcbe7c8272fa385203ca420b54598b3f;hpb=4d45c45f0928c7791429d351dc69b75167888f7d;p=libguestfs.git diff --git a/fuse/guestmount.c b/fuse/guestmount.c index 9f0a39e..27a4cef 100644 --- a/fuse/guestmount.c +++ b/fuse/guestmount.c @@ -40,6 +40,7 @@ #include #include #include +#include #include #include @@ -896,6 +897,10 @@ usage (int status) int main (int argc, char *argv[]) { + setlocale (LC_ALL, ""); + bindtextdomain (PACKAGE, LOCALEBASEDIR); + textdomain (PACKAGE); + enum { HELP_OPTION = CHAR_MAX + 1 }; /* The command line arguments are broadly compatible with (a subset @@ -923,7 +928,7 @@ main (int argc, char *argv[]) struct mp *mps = NULL; struct mp *mp; char *p; - int c, i, r; + int c, r; int option_index; struct sigaction sa; @@ -1156,10 +1161,13 @@ mount_mps (struct mp *mp) if (mp) { mount_mps (mp->next); - if (!read_only) - r = guestfs_mount (g, mp->device, mp->mountpoint); - else - r = guestfs_mount_ro (g, mp->device, mp->mountpoint); + + /* Don't use guestfs_mount here because that will default to mount + * options -o sync,noatime. For more information, see guestfs(3) + * section "LIBGUESTFS GOTCHAS". + */ + const char *options = read_only ? "ro" : ""; + r = guestfs_mount_options (g, options, mp->device, mp->mountpoint); if (r == -1) exit (EXIT_FAILURE); }