27 lines
908 B
Diff
Executable File
27 lines
908 B
Diff
Executable File
Index: fstools-2016-01-10/libfstools/overlay.c
|
|
===================================================================
|
|
--- fstools-2016-01-10.orig/libfstools/overlay.c 2016-07-01 15:28:10.675297806 +0530
|
|
+++ fstools-2016-01-10/libfstools/overlay.c 2016-07-01 15:32:40.471299290 +0530
|
|
@@ -344,6 +344,7 @@
|
|
int mount_overlay(struct volume *v)
|
|
{
|
|
char *mp;
|
|
+ struct stat st;
|
|
|
|
if (!v)
|
|
return -1;
|
|
@@ -371,7 +372,12 @@
|
|
}
|
|
case FS_STATE_PENDING:
|
|
ULOG_INFO("overlay filesystem has not been fully initialized yet\n");
|
|
- overlay_delete("/tmp/overlay", true);
|
|
+ //For configuration preservati, Sysupgrade in Coconut will extract
|
|
+ //the config tarball will be extracted before reboot. So, to support
|
|
+ //that, delete overlay only if the tarball is present.
|
|
+ if (stat("/tmp/overlay/sysupgrade.tgz", &st) != -1) {
|
|
+ overlay_delete("/tmp/overlay", true);
|
|
+ }
|
|
break;
|
|
case FS_STATE_READY:
|
|
break;
|