} else if (mount_parent && (mount_parent->tag == TAG_LOCAL)
&& strcmp (mount_parent->mountpoint, "/")) {
mnt->tag = TAG_LOCAL;
num_local++;
nih_debug ("%s is local (inherited)", mnt->mountpoint);
}
This code was added so that virtual filesystems didn't get marked as virtual if they were waiting on other local filesystems, but instead had the effect that all remote filesystems mounted anywhere except / were also treated as local.
Checking now that this is the only code that needs fixed.
This code turned out to be the culprit:
} else if (mount_parent && (mount_parent->tag == TAG_LOCAL) parent- >mountpoint, "/")) {
&& strcmp (mount_
mnt->tag = TAG_LOCAL;
num_local++;
nih_debug ("%s is local (inherited)", mnt->mountpoint);
}
This code was added so that virtual filesystems didn't get marked as virtual if they were waiting on other local filesystems, but instead had the effect that all remote filesystems mounted anywhere except / were also treated as local.
Checking now that this is the only code that needs fixed.