- allow setBaseUrl() to change 'keeppackages' if not already set
authorJan Kupec <jkupec@suse.cz>
Wed, 28 May 2008 14:45:21 +0000 (14:45 +0000)
committerJan Kupec <jkupec@suse.cz>
Wed, 28 May 2008 14:45:21 +0000 (14:45 +0000)
  externally.

zypp/RepoInfo.cc

index c83b681..a2adf61 100644 (file)
@@ -169,13 +169,16 @@ namespace zypp
 
   RepoInfo & RepoInfo::addBaseUrl( const Url &url )
   {
-    // set only if not already set (bnc #394728)
-    if (!(_pimpl->flags_determined & Impl::FLAG_KEEPPACKAGES))
+    // set only if not already set externally (bnc #394728)
+    if (!(_pimpl->flags_determined & Impl::FLAG_KEEPPACKAGES) &&
+        _pimpl->baseUrls.empty())
     {
       if ( media::MediaAccess::downloads( url ) )
-        setKeepPackages(true);
+        // don't do this via setKeepPackages, it would set the flags_determined
+        // for FLAG_KEEPPACKAGES  
+        _pimpl->keeppackages = true;
       else
-        setKeepPackages(false);
+        _pimpl->keeppackages = false;
     }
 
     _pimpl->baseUrls.insert(url);