diff options
author | Felix Fietkau <nbd@openwrt.org> | 2016-01-10 18:35:36 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2016-01-10 18:35:36 +0100 |
commit | 96415afecef35766332067f4205ef3b2c7561d21 (patch) | |
tree | 4549f3cabacb2ed1db035afa06454b21feef1a14 /libfstools | |
parent | d90165cdbdac40e6e2699d831e13473479d8cb79 (diff) | |
download | fstools-96415afecef35766332067f4205ef3b2c7561d21.tar.gz |
fstools: check existing filesystem state before writing the new one
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Diffstat (limited to 'libfstools')
-rw-r--r-- | libfstools/overlay.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libfstools/overlay.c b/libfstools/overlay.c index 7f69606..cdac23e 100644 --- a/libfstools/overlay.c +++ b/libfstools/overlay.c @@ -311,6 +311,9 @@ int fs_state_set(const char *dir, enum fs_state state) char valstr[16]; char *path; + if (fs_state_get(dir) == state) + return 0; + path = alloca(strlen(dir) + 1 + sizeof("/.fs_state")); sprintf(path, "%s/.fs_state", dir); unlink(path); |