]> git.saurik.com Git - apt.git/commitdiff
if mountpoint has a ".disk" directory it is mounted
authorDavid Kalnischkies <david@kalnischkies.de>
Sun, 9 Mar 2014 12:32:07 +0000 (13:32 +0100)
committerDavid Kalnischkies <david@kalnischkies.de>
Thu, 13 Mar 2014 12:58:45 +0000 (13:58 +0100)
Checking that parent-directory of mountpoint and mountpoint are on
different devices is fine most of the time, but is too restrictive
for our testcases and there shouldn't be anything wrong with 'normal'
users copying disk-contents around either if they want to.

We check for the existance of the ".disk/" directory now as this will
not be present if the disk isn't 'mounted'. Disks doesn't need to have
such a directory through, so for those we fall back to the old way of
detecting mounted or not mounted.

apt-pkg/contrib/cdromutl.cc

index 096d3bcf54a162d569ee722a8be949851f327966..176cc2024c2c273deb624150498d4dce6e732e48 100644 (file)
@@ -45,11 +45,16 @@ bool IsMounted(string &Path)
 {
    if (Path.empty() == true)
       return false;
-   
+
    // Need that trailing slash for directories
    if (Path[Path.length() - 1] != '/')
       Path += '/';
-   
+
+   // if the path has a ".disk" directory we treat it as mounted
+   // this way even extracted copies of disks are recognized
+   if (DirectoryExists(Path + ".disk/") == true)
+      return true;
+
    /* First we check if the path is actually mounted, we do this by
       stating the path and the previous directory (careful of links!)
       and comparing their device fields. */