* cmdline/apt-cdrom.cc:
authorMichael Vogt <michael.vogt@ubuntu.com>
Tue, 26 Jan 2010 19:36:13 +0000 (20:36 +0100)
committerMichael Vogt <michael.vogt@ubuntu.com>
Tue, 26 Jan 2010 19:36:13 +0000 (20:36 +0100)
  - fixed signed/unsigned warning
  - create /media mount point if needed
  - fix initialization for res in DoAdd()
* methods/cdrom.cc:
  - make AptMountPoint a variable

apt-pkg/cdrom.cc
cmdline/apt-cdrom.cc
methods/cdrom.cc

index 3467f49..96d4e9c 100644 (file)
@@ -829,8 +829,6 @@ bool pkgCdrom::Add(pkgCdromStatus *log)                                     /*{{{*/
       }
    }
 
-   
-
    // Unmount and finish
    if (_config->FindB("APT::CDROM::NoMount",false) == false) {
       log->Update(_("Unmounting CD-ROM...\n"), STEP_LAST);
index fc949ce..494a7d8 100644 (file)
@@ -99,7 +99,7 @@ OpProgress* pkgCdromTextStatus::GetOpProgress()
 };
                                                                        /*}}}*/
 // SetupAutoDetect                                                     /*{{{*/
-bool AutoDetectCdrom(pkgUdevCdromDevices &UdevCdroms, int &i)
+bool AutoDetectCdrom(pkgUdevCdromDevices &UdevCdroms, unsigned int &i)
 {
    bool Debug =  _config->FindB("Debug::Acquire::cdrom", false);
 
@@ -120,9 +120,12 @@ bool AutoDetectCdrom(pkgUdevCdromDevices &UdevCdroms, int &i)
       _config->Set("Acquire::cdrom::mount", v[i].MountPath);
       _config->Set("APT::CDROM::NoMount", true);
    } else {
-      MountCdrom("/var/lib/apt/media", v[i].DeviceName);
-      MountCdrom("/var/lib/apt/media", v[i].DeviceName);
-      _config->Set("Acquire::cdrom::mount", "/var/lib/apt/media");
+      const char* AptMountPoint = "/media/apt";
+      if (!FileExists(AptMountPoint))
+        mkdir(AptMountPoint, 0750);
+      if(MountCdrom(AptMountPoint, v[i].DeviceName) == false)
+        _error->Warning(_("Failed to mount '%s' to '%s'"), v[i].DeviceName.c_str(), AptMountPoint);
+      _config->Set("Acquire::cdrom::mount", AptMountPoint);
       _config->Set("APT::CDROM::NoMount", true);
    }
    i++;
@@ -142,10 +145,10 @@ bool DoAdd(CommandLine &)
    pkgUdevCdromDevices UdevCdroms;
    pkgCdromTextStatus log;
    pkgCdrom cdrom;
-   bool res = false;
+   bool res = true;
 
    bool AutoDetect = _config->FindB("Acquire::cdrom::AutoDetect");
-   int count = 0;
+   unsigned int count = 0;
    
    if (AutoDetect && UdevCdroms.Dlopen())
    {
@@ -173,7 +176,7 @@ bool DoIdent(CommandLine &)
    bool res = true;
 
    bool AutoDetect = _config->FindB("Acquire::cdrom::AutoDetect");
-   int count = 0;
+   unsigned int count = 0;
    
    if (AutoDetect && UdevCdroms.Dlopen())
    {
index 0e78851..c8ec322 100644 (file)
@@ -116,23 +116,24 @@ bool CDROMMethod::AutoDetectAndMount(URI Get, string &NewID)
       return false;
 
    // check if we have the mount point
-   if (!FileExists("/media/apt"))
-      mkdir("/media/apt", 0755);
+   const char* AptMountPoint = "/media/apt";
+   if (!FileExists(AptMountPoint))
+      mkdir(AptMountPoint, 0750);
 
    // now try mounting
    for (unsigned int i=0; i < v.size(); i++)
    {
       if (!v[i].Mounted)
       {
-        if(MountCdrom("/media/apt", v[i].DeviceName)) 
+        if(MountCdrom(AptMountPoint, v[i].DeviceName)) 
         {
-           if (IsCorrectCD(Get, "/media/apt", NewID))
+           if (IsCorrectCD(Get, AptMountPoint, NewID))
            {
               MountedByApt = true;
-              CDROM = "/media/apt";
+              CDROM = AptMountPoint;
               return true;
            } else {
-              UnmountCdrom("/media/apt");
+              UnmountCdrom(AptMountPoint);
            }
         }
       }