+-------------------------------------------------------------------
+Fri Apr 25 16:12:12 CEST 2008 - ma@suse.de
+
+- Prevent target::unload from creating a system repo in order
+ to unload it. (bnc 382297)
+- version 4.15.2
+- revision 9822
+
-------------------------------------------------------------------
Fri Apr 25 14:15:17 CEST 2008 - ma@suse.de
{
public:
typedef detail::SolvableIterator SolvableIterator;
- typedef zypp::detail::RepositoryIterator RepositoryIterator;
+ typedef zypp::detail::RepositoryIterator RepositoryIterator;
typedef detail::size_type size_type;
public:
/** Reserved system repository name \c @System. */
static const std::string & systemRepoName();
- /** Return the system repository. */
+ /** Return the system repository if it is on the pool. */
+ Repository findSystemRepo() const
+ { return reposFind( systemRepoName() ); }
+
+ /** Return the system repository, create it if missing. */
Repository systemRepo()
{ return reposInsert( systemRepoName() ); }
void TargetImpl::unload()
{
- sat::Pool satpool( sat::Pool::instance() );
- Repository system( satpool.systemRepo() );
- system.eraseFromPool();
+ Repository system( sat::Pool::instance().findSystemRepo() );
+ if ( system )
+ system.eraseFromPool();
}