From 43b416bc5cc0141b76c630b3832a820835c51921 Mon Sep 17 00:00:00 2001 From: Klaus Kaempf Date: Sat, 8 Apr 2006 08:05:51 +0000 Subject: [PATCH] items with incompatible arch are unneeded --- zypp/solver/detail/QueueItemEstablish.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/zypp/solver/detail/QueueItemEstablish.cc b/zypp/solver/detail/QueueItemEstablish.cc index d935a9a..5aadb74 100644 --- a/zypp/solver/detail/QueueItemEstablish.cc +++ b/zypp/solver/detail/QueueItemEstablish.cc @@ -105,6 +105,11 @@ QueueItemEstablish::process (ResolverContext_Ptr context, QueueItemList & qil) _XDEBUG("Item " << _item << " is locked. --> NO establish"); return true; } + if ( ! _item->arch().compatibleWith( context->architecture() ) ) { + context->unneeded (_item, _other_penalty); + _DEBUG( _item << " has incompatible architecture, unneeded" ); + return true; + } _item.status().setUndetermined(); // reset any previous establish state @@ -170,8 +175,10 @@ QueueItemEstablish::process (ResolverContext_Ptr context, QueueItemList & qil) if (iter == requires.end()) { // all are met if (_item->kind() == ResTraits::kind || _item->kind() == ResTraits::kind - || _item->kind() == ResTraits::kind) { - if (status.staysUninstalled()) { + || _item->kind() == ResTraits::kind) + { + if (status.staysUninstalled()) + { _DEBUG("Uninstalled " << _item << " has all requirements -> install"); QueueItemInstall_Ptr install_item = new QueueItemInstall( pool(), _item ); qil.push_front( install_item ); -- 2.7.4