[ostree] core: Reuse more libgsystem API in utils
- From: Colin Walters <walters src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ostree] core: Reuse more libgsystem API in utils
- Date: Sat, 5 Jan 2013 00:46:26 +0000 (UTC)
commit cd5fce713ca4056d8e1ef72004ca3c0035b7ad0c
Author: Colin Walters <walters verbum org>
Date: Fri Jan 4 19:46:02 2013 -0500
core: Reuse more libgsystem API in utils
More code drain to libgsystem.
src/libgsystem | 2 +-
src/libotutil/ot-unix-utils.c | 46 --------------------------------------
src/libotutil/ot-unix-utils.h | 2 -
src/libotutil/ot-variant-utils.c | 9 +------
4 files changed, 2 insertions(+), 57 deletions(-)
---
diff --git a/src/libgsystem b/src/libgsystem
index ce441a7..a251961 160000
--- a/src/libgsystem
+++ b/src/libgsystem
@@ -1 +1 @@
-Subproject commit ce441a7a7bd987265588674a11d62965e81bdf94
+Subproject commit a2519612547354033f0d513a174f336896776fa8
diff --git a/src/libotutil/ot-unix-utils.c b/src/libotutil/ot-unix-utils.c
index d479301..032b497 100644
--- a/src/libotutil/ot-unix-utils.c
+++ b/src/libotutil/ot-unix-utils.c
@@ -189,49 +189,3 @@ ot_util_fatal_gerror (GError *error)
g_assert (error != NULL);
ot_util_fatal_literal (error->message);
}
-
-/**
- * ot_unix_close:
- *
- * Like close(), but uses #GError, and handles EINTR.
- */
-gboolean
-ot_unix_close (int fd, GError **error)
-{
- int result;
- do
- result = close (fd);
- while (G_UNLIKELY (result != 0 && errno == EINTR));
- if (result != 0)
- {
- ot_util_set_error_from_errno (error, errno);
- return FALSE;
- }
- return TRUE;
-}
-
-/**
- * ot_unix_open_noatime:
- *
- * Open a file for reading, using O_NOATIME if possible.
- */
-gboolean
-ot_unix_open_noatime (const char *path,
- int *out_fd,
- GError **error)
-{
- int fd;
-
-#ifdef O_NOATIME
- fd = g_open (path, O_RDONLY | O_NOATIME | O_CLOEXEC, 0);
- if (fd == -1 && errno == EPERM)
-#endif
- fd = g_open (path, O_RDONLY | O_CLOEXEC, 0);
- if (fd == -1)
- {
- ot_util_set_error_from_errno (error, errno);
- return FALSE;
- }
- *out_fd = fd;
- return TRUE;
-}
diff --git a/src/libotutil/ot-unix-utils.h b/src/libotutil/ot-unix-utils.h
index 9a8c3ac..e0546a3 100644
--- a/src/libotutil/ot-unix-utils.h
+++ b/src/libotutil/ot-unix-utils.h
@@ -55,8 +55,6 @@ gboolean ot_unix_open (const char *path,
int *out_fd,
GError **error);
-gboolean ot_unix_close (int fd, GError **error);
-
gboolean ot_unix_open_noatime (const char *path, int *out_fd, GError **error);
G_END_DECLS
diff --git a/src/libotutil/ot-variant-utils.c b/src/libotutil/ot-variant-utils.c
index caa39ea..31d01b5 100644
--- a/src/libotutil/ot-variant-utils.c
+++ b/src/libotutil/ot-variant-utils.c
@@ -109,19 +109,12 @@ ot_util_variant_map (GFile *src,
GError **error)
{
gboolean ret = FALSE;
- const char *path = NULL;
ot_lvariant GVariant *ret_variant = NULL;
GMappedFile *mfile = NULL;
- int fd;
- path = gs_file_get_path_cached (src);
- if (!ot_unix_open_noatime (path, &fd, error))
- goto out;
- mfile = g_mapped_file_new_from_fd (fd, FALSE, error);
+ mfile = gs_file_map_noatime (src, NULL, error);
if (!mfile)
goto out;
- if (!ot_unix_close (fd, error))
- goto out;
ret_variant = g_variant_new_from_data (type,
g_mapped_file_get_contents (mfile),
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]