Mailinglist Archive: zypp-commit (325 mails)

< Previous Next >
[zypp-commit] r7262 - /trunk/libzypp/zypp/solver/detail/QueueItemRequire.cc
  • From: schubi2@xxxxxxxxxxxxxxxx
  • Date: Mon, 17 Sep 2007 13:20:17 -0000
  • Message-id: <20070917132017.C93A2174DB@xxxxxxxxxxxxxxxx>
Author: schubi2
Date: Mon Sep 17 15:20:17 2007
New Revision: 7262

URL: http://svn.opensuse.org/viewcvs/zypp?rev=7262&view=rev
Log:
Bugfix in vendor change of a required resolvable (Correct error message)
Bug 310455 

Modified:
    trunk/libzypp/zypp/solver/detail/QueueItemRequire.cc

Modified: trunk/libzypp/zypp/solver/detail/QueueItemRequire.cc
URL: http://svn.opensuse.org/viewcvs/zypp/trunk/libzypp/zypp/solver/detail/QueueItemRequire.cc?rev=7262&r1=7261&r2=7262&view=diff
==============================================================================
--- trunk/libzypp/zypp/solver/detail/QueueItemRequire.cc (original)
+++ trunk/libzypp/zypp/solver/detail/QueueItemRequire.cc Mon Sep 17 15:20:17 2007
@@ -311,11 +311,13 @@
 {
     PoolItem_Ref requirer;
     ResolverContext_Ptr context;
+    ResPool pool;    
 
     bool operator()( const CapAndItem cai)
     {
        PoolItem provider = cai.item;
        Capability match = cai.cap;
+       PoolItem_Ref upgrades = Helper::findInstalledItem (pool, provider);     
 
        string msg_str;
        //const Capability match;
@@ -349,10 +351,10 @@
            misc_info = new ResolverInfoMisc (RESOLVER_INFO_TYPE_KEEP_PROVIDER, requirer, RESOLVER_INFO_PRIORITY_VERBOSE, match);
            misc_info->setOtherPoolItem (provider);      
        } else  if (provider
-                   && requirer
-                   && !VendorAttr::instance().equivalent(provider->vendor(), requirer->vendor())) {
+                   && upgrades
+                   && !VendorAttr::instance().equivalent(provider->vendor(), upgrades->vendor())) {                  
            misc_info = new ResolverInfoMisc (RESOLVER_INFO_TYPE_OTHER_VENDOR_PROVIDER,
-                                                                  requirer, RESOLVER_INFO_PRIORITY_VERBOSE, match);
+                                                                  upgrades, RESOLVER_INFO_PRIORITY_VERBOSE, match);
            misc_info->setOtherPoolItem (provider);
        }
        else if (provider->arch().compatibleWith( context->architecture() )) {
@@ -742,6 +744,7 @@
            NoInstallableProviders info;
            info.requirer = _requiring_item;
            info.context = context;
+           info.pool = pool();
 
            // Maybe we can add some extra info on why none of the providers are suitable.
 

--
To unsubscribe, e-mail: zypp-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: zypp-commit+help@xxxxxxxxxxxx

< Previous Next >
This Thread
  • No further messages