From 967f8985f80dae145ffe5b9d644acdac8a57c611 Mon Sep 17 00:00:00 2001 From: Michael Andres Date: Fri, 31 Aug 2007 20:18:35 +0000 Subject: [PATCH] Follow ZConfig download_use_patchrpm and download_use_deltarpm when providing packages. (#305864) --- VERSION.cmake | 4 ++-- package/libzypp.changes | 9 +++++++++ zypp/repo/PackageProvider.cc | 23 +++++++++++++++++++---- 3 files changed, 30 insertions(+), 6 deletions(-) diff --git a/VERSION.cmake b/VERSION.cmake index 1e2019b..247ba65 100644 --- a/VERSION.cmake +++ b/VERSION.cmake @@ -45,6 +45,6 @@ # SET(LIBZYPP_MAJOR "3") -SET(LIBZYPP_MINOR "21") +SET(LIBZYPP_MINOR "22") SET(LIBZYPP_COMPATMINOR "21") -SET(LIBZYPP_PATCH "1") +SET(LIBZYPP_PATCH "0") diff --git a/package/libzypp.changes b/package/libzypp.changes index a435b81..733eea2 100644 --- a/package/libzypp.changes +++ b/package/libzypp.changes @@ -1,4 +1,13 @@ ------------------------------------------------------------------- +Fri Aug 31 22:10:55 CEST 2007 - ma@suse.de + +- Added ability to switch off use of patch and delta rpms via zypp.conf (#305864) + [main] + download.use_patchrpm = no + download.use_deltarpm = no +- version 3.22.0 + +------------------------------------------------------------------- Fri Aug 31 19:56:40 CEST 2007 - ma@suse.de - On demand translate patch requirements into a list of atoms. diff --git a/zypp/repo/PackageProvider.cc b/zypp/repo/PackageProvider.cc index 77a48de..032f04e 100644 --- a/zypp/repo/PackageProvider.cc +++ b/zypp/repo/PackageProvider.cc @@ -22,6 +22,7 @@ #include "zypp/repo/PackageDelta.h" #include "zypp/detail/ImplConnect.h" +#include "zypp/ZConfig.h" #include "zypp/RepoInfo.h" #include "zypp/Repository.h" #include "zypp/media/MediaManager.h" @@ -133,8 +134,17 @@ namespace zypp // check whether to process patch/delta rpms if ( MediaManager::downloads(url) ) { - std::list deltaRpms = _deltas.deltaRpms(_package); - std::list patchRpms = _deltas.patchRpms(_package); + std::list deltaRpms; + if ( ZConfig::instance().download_use_deltarpm() ) + { + _deltas.deltaRpms( _package ).swap( deltaRpms ); + } + + std::list patchRpms; + if ( ZConfig::instance().download_use_patchrpm() ) + { + _deltas.patchRpms( _package ).swap( patchRpms ); + } if ( ! ( deltaRpms.empty() && patchRpms.empty() ) && queryInstalled() ) @@ -167,7 +177,12 @@ namespace zypp else { // allow patch rpm from local source - std::list patchRpms = _deltas.patchRpms(_package); + std::list patchRpms; + if ( ZConfig::instance().download_use_patchrpm() ) + { + _deltas.patchRpms( _package ).swap( patchRpms ); + } + if ( ! patchRpms.empty() && queryInstalled() ) { for( std::list::const_iterator it = patchRpms.begin(); @@ -184,7 +199,7 @@ namespace zypp // no patch/delta -> provide full package ManagedFile ret; OnMediaLocation loc = _package->location(); - + ProvideFilePolicy policy; policy.progressCB( bind( &PackageProvider::progressPackageDownload, this, _1 ) ); policy.failOnChecksumErrorCB( bind( &PackageProvider::failOnChecksumError, this ) ); -- 2.7.4