blob: 45b75a33291403bd2a04173ba2f1bd3b994f512d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
From 38e54240a38266c0c1864e51e4ca7468a429646e Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Fri, 27 May 2011 11:38:50 +0000
Subject: [PATCH 1/2] db: remount read-only after the file handles have been
closed
The apk cache might be on the readonly media so we need wait with
remounting til after atleast this filehandle is closed.
---
src/database.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/database.c b/src/database.c
index 1d4c573..0fc59df 100644
--- a/src/database.c
+++ b/src/database.c
@@ -1397,12 +1397,6 @@ void apk_db_close(struct apk_database *db)
struct hlist_node *dc, *dn;
int i;
- if (db->cache_remount_dir) {
- do_remount(db->cache_remount_dir, "ro");
- free(db->cache_remount_dir);
- db->cache_remount_dir = NULL;
- }
-
apk_id_cache_free(&db->id_cache);
list_for_each_entry(ipkg, &db->installed.packages, installed_pkgs_list) {
@@ -1436,6 +1430,12 @@ void apk_db_close(struct apk_database *db)
close(db->lock_fd);
if (db->root != NULL)
free(db->root);
+
+ if (db->cache_remount_dir) {
+ do_remount(db->cache_remount_dir, "ro");
+ free(db->cache_remount_dir);
+ db->cache_remount_dir = NULL;
+ }
}
static int fire_triggers(apk_hash_item item, void *ctx)
--
1.7.5.2
|