Hello community, here is the log from the commit of package PackageKit for openSUSE:Factory checked in at Wed May 5 22:50:42 CEST 2010. Wide character in print at /work/src/bin/tools/get_bugzilla line 45. -------- --- PackageKit/PackageKit.changes 2010-04-21 11:31:36.000000000 +0200 +++ PackageKit/PackageKit.changes 2010-05-04 17:19:16.000000000 +0200 @@ -1,0 +2,20 @@ +Wed Apr 28 17:10:59 CEST 2010 - ma@suse.de + +- Add patches: + + 0001-zypp-fix-memeory-leaks.patch: fix memeory leaks. + + 0002-zypp-attempt-to-improve-backend_find_packages.patch + zypp: attempt to improve backend_find_packages. (bnc#597772) + + 0003-zypp-let-libzypp-determine-whether-a-patch-is-needed.patch + zypp: let libzypp determine whether a patch is needed. Together + with the latest libzypp, this will no longer classify locked + patches as being needed. (bnc#577118) + +------------------------------------------------------------------- +Wed Apr 28 10:00:07 UTC 2010 - seife@opensuse.org + +- Add PackageKit-cron-disabled-is-no-error.patch: having + the cron job disabled is not an error (after all it is + configurable). Return value should be 0 in this case to stop + annoying cronjob mails. + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- 0001-zypp-fix-memeory-leaks.patch 0002-zypp-attempt-to-improve-backend_find_packages.patch 0003-zypp-let-libzypp-determine-whether-a-patch-is-needed.patch PackageKit-cron-disabled-is-no-error.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ PackageKit.spec ++++++ --- /var/tmp/diff_new_pack.wu5gV5/_old 2010-05-05 22:39:35.000000000 +0200 +++ /var/tmp/diff_new_pack.wu5gV5/_new 2010-05-05 22:39:35.000000000 +0200 @@ -31,7 +31,7 @@ Name: PackageKit Version: 0.6.3 -Release: 3 +Release: 4 License: GPLv2+ BuildRequires: NetworkManager-devel BuildRequires: dbus-1-glib-devel @@ -60,10 +60,18 @@ Source: %{name}-%{version}.tar.bz2 # PATCH-FEATURE-OPENSUSE PackageKit-sysconfig-cron.patch vuntz@opensuse.org -- Change the configuration of the cron script to a sysconfig-like config Patch0: PackageKit-sysconfig-cron.patch +# PATCH-FEATURE-OPENSUSE PackageKit-cron-disabled-is-no-error.patch seife@opensuse.org -- Having the cron job disabled is no error. Otherwise it does not make sense to have it configurable. +Patch1: PackageKit-cron-disabled-is-no-error.patch # PATCH-FIX-UPSTREAM PackageKit-libzypp6.patch fdo#20366 Patch2: PackageKit-libzypp6.patch # PATCH-FIX-UPSTREAM PackageKit-BNC559802-zypp-count-patch-size.patch glin@novell.com -- calculate the download size of the patch Patch6: PackageKit-BNC559802-zypp-count-patch-size.patch +# PATCH-FIX-UPSTREAM 0001-zypp-fix-memeory-leaks.patch ma@suse.de -- fix memory leaks +Patch7: 0001-zypp-fix-memeory-leaks.patch +# PATCH-FIX-UPSTREAM 0002-zypp-attempt-to-improve-backend_find_packages.patch bnc#597772 ma@suse.de -- Improve packend finding packages +Patch8: 0002-zypp-attempt-to-improve-backend_find_packages.patch +# PATCH-FIX-UPSTREAM 0003-zypp-let-libzypp-determine-whether-a-patch-is-needed.patch bnc#577118 ma@suse.de -- Let libzypp determine whether a patch is needed. +Patch9: 0003-zypp-let-libzypp-determine-whether-a-patch-is-needed.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: %{name}-branding Requires: %{name}-lang = %{version} @@ -245,8 +253,12 @@ %prep %setup -q %patch0 -p1 +%patch1 -p1 %patch2 %patch6 -p1 +%patch7 -p1 +%patch8 -p1 +%patch9 -p1 %build %configure \ ++++++ 0001-zypp-fix-memeory-leaks.patch ++++++
From 7f48336a852e584c43a1c34154ceb15b995f7e3d Mon Sep 17 00:00:00 2001 From: Michael Andres
Date: Wed, 21 Apr 2010 17:35:57 +0200 Subject: [PATCH 1/3] zypp: fix memeory leaks
--- backends/zypp/pk-backend-zypp.cpp | 13 ++++++------- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp index a6b00b3..4486f25 100644 --- a/backends/zypp/pk-backend-zypp.cpp +++ b/backends/zypp/pk-backend-zypp.cpp @@ -796,7 +796,7 @@ backend_install_files_thread (PkBackend *backend) zypp::target::rpm::RpmHeader::constPtr rpmHeader = zypp::target::rpm::RpmHeader::readPackage (rpmPath, zypp::target::rpm::RpmHeader::NOSIGNATURE); // look for the packages and set them to toBeInstalled - std::vectorzypp::sat::Solvable *solvables = new std::vectorzypp::sat::Solvable; + std::vectorzypp::sat::Solvable *solvables = 0; solvables = zypp_get_packages_by_name (rpmHeader->tag_name ().c_str (), zypp::ResKind::package, FALSE); zypp::PoolItem *item = NULL; gboolean found = FALSE; @@ -1033,7 +1033,7 @@ backend_install_packages_thread (PkBackend *backend) for (guint i = 0; i < g_strv_length (package_ids); i++) { gchar **id_parts = pk_package_id_split (package_ids[i]); - + // Iterate over the selectables and mark the one with the right name zypp::ui::Selectable::Ptr selectable; for (zypp::ResPoolProxy::const_iterator it = zypp->poolProxy().byKindBegin zypp::Package(); @@ -1293,13 +1293,14 @@ backend_find_packages_thread (PkBackend *backend) pk_backend_set_status (backend, PK_STATUS_ENUM_QUERY); pk_backend_set_percentage (backend, PK_BACKEND_PERCENTAGE_INVALID); - std::vectorzypp::sat::Solvable *v = new std::vectorzypp::sat::Solvable; - std::vectorzypp::sat::Solvable *v2 = new std::vectorzypp::sat::Solvable; + std::vectorzypp::sat::Solvable *v = 0; + std::vectorzypp::sat::Solvable *v2 = 0; switch (mode) { case SEARCH_TYPE_NAME: v = zypp_get_packages_by_name (search, zypp::ResKind::package, TRUE); v2 = zypp_get_packages_by_name (search, zypp::ResKind::srcpackage, TRUE); + v->insert (v->end (), v2->begin (), v2->end ()); break; case SEARCH_TYPE_DETAILS: v = zypp_get_packages_by_details (search, TRUE); @@ -1309,8 +1310,6 @@ backend_find_packages_thread (PkBackend *backend) break; }; - v->insert (v->end (), v2->begin (), v2->end ()); - zypp_emit_packages_in_list (backend, v, filters); delete (v); delete (v2); @@ -1591,7 +1590,7 @@ backend_update_packages_thread (PkBackend *backend) package_ids = pk_backend_get_strv (backend, "package_ids"); PkRestartEnum restart = PK_RESTART_ENUM_NONE; - zypp_get_patches (); // make sure _updating_self is set + delete zypp_get_patches (); // make sure _updating_self is set if (_updating_self) { egg_debug ("updating self and setting restart"); -- 1.6.4.2 ++++++ 0002-zypp-attempt-to-improve-backend_find_packages.patch ++++++
From 3a26c7c8515df9dac1c60052213d721cd2fecf83 Mon Sep 17 00:00:00 2001 From: Michael Andres
Date: Wed, 21 Apr 2010 18:19:29 +0200 Subject: [PATCH 2/3] zypp: attempt to improve backend_find_packages
---
backends/zypp/pk-backend-zypp.cpp | 43 ++++++++++++----
backends/zypp/zypp-utils.cpp | 101 +++++++++++++++---------------------
backends/zypp/zypp-utils.h | 7 +--
3 files changed, 77 insertions(+), 74 deletions(-)
diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp
index 4486f25..8b54132 100644
--- a/backends/zypp/pk-backend-zypp.cpp
+++ b/backends/zypp/pk-backend-zypp.cpp
@@ -1293,26 +1293,49 @@ backend_find_packages_thread (PkBackend *backend)
pk_backend_set_status (backend, PK_STATUS_ENUM_QUERY);
pk_backend_set_percentage (backend, PK_BACKEND_PERCENTAGE_INVALID);
- std::vectorzypp::sat::Solvable *v = 0;
- std::vectorzypp::sat::Solvable *v2 = 0;
+ std::vectorzypp::sat::Solvable v;
+
+ zypp::PoolQuery q;
+ q.addString( search ); // may be called multiple times (OR'ed)
+ q.setCaseSensitive( true );
+ q.setMatchSubstring();
switch (mode) {
case SEARCH_TYPE_NAME:
- v = zypp_get_packages_by_name (search, zypp::ResKind::package, TRUE);
- v2 = zypp_get_packages_by_name (search, zypp::ResKind::srcpackage, TRUE);
- v->insert (v->end (), v2->begin (), v2->end ());
+ zypp_build_pool (TRUE); // seems to be necessary?
+ q.addKind( zypp::ResKind::package );
+ q.addKind( zypp::ResKind::srcpackage );
+ q.addAttribute( zypp::sat::SolvAttr::name );
+ // Note: The query result is NOT sorted packages first, then srcpackage.
+ // If that's necessary you need to sort the vector accordongly or use
+ // two separate queries.
break;
case SEARCH_TYPE_DETAILS:
- v = zypp_get_packages_by_details (search, TRUE);
+ zypp_build_pool (TRUE); // seems to be necessary?
+ q.addKind( zypp::ResKind::package );
+ //q.addKind( zypp::ResKind::srcpackage );
+ q.addAttribute( zypp::sat::SolvAttr::name );
+ q.addAttribute( zypp::sat::SolvAttr::description );
+ // Note: Don't know if zypp_get_packages_by_details intentionally
+ // did not search in srcpackages.
break;
case SEARCH_TYPE_FILE:
- v = zypp_get_packages_by_file (search);
+ {
+ // zypp_build_pool (TRUE); called by zypp_get_packages_by_file
+ std::vectorzypp::sat::Solvable * r = zypp_get_packages_by_file (search);
+ v.swap( *r );
+ delete r;
+ // zypp_get_packages_by_file does strange things :)
+ // Maybe it would be sufficient to simply query
+ // zypp::sat::SolvAttr::filelist instead?
+ }
break;
};
- zypp_emit_packages_in_list (backend, v, filters);
- delete (v);
- delete (v2);
+ if ( ! q.empty() ) {
+ std::copy( q.begin(), q.end(), std::back_inserter( v ) );
+ }
+ zypp_emit_packages_in_list (backend, &v, filters);
pk_backend_finished (backend);
return TRUE;
diff --git a/backends/zypp/zypp-utils.cpp b/backends/zypp/zypp-utils.cpp
index d17a5af..4fbfee4 100644
--- a/backends/zypp/zypp-utils.cpp
+++ b/backends/zypp/zypp-utils.cpp
@@ -90,7 +90,7 @@ get_zypp ()
try {
zypp = zypp::ZYppFactory::instance ().getZYpp ();
-
+
// TODO: Make this threadsafe
if (initialized == FALSE) {
zypp::filesystem::Pathname pathname("/");
@@ -195,25 +195,25 @@ zypp_build_pool (gboolean include_local)
return zypp->pool ();
}
-void
-warn_outdated_repos(PkBackend *backend, const zypp::ResPool & pool)
-{
- zypp::Repository repoobj;
- zypp::ResPool::repository_iterator it;
- for ( it = pool.knownRepositoriesBegin();
- it != pool.knownRepositoriesEnd();
- ++it )
- {
- zypp::Repository repo(*it);
- if ( repo.maybeOutdated() )
- {
- // warn the user
+void
+warn_outdated_repos(PkBackend *backend, const zypp::ResPool & pool)
+{
+ zypp::Repository repoobj;
+ zypp::ResPool::repository_iterator it;
+ for ( it = pool.knownRepositoriesBegin();
+ it != pool.knownRepositoriesEnd();
+ ++it )
+ {
+ zypp::Repository repo(*it);
+ if ( repo.maybeOutdated() )
+ {
+ // warn the user
pk_backend_message (backend,
PK_MESSAGE_ENUM_BROKEN_MIRROR,
zypp::str::form("The repository %s seems to be outdated. You may want to try another mirror.",
repo.alias().c_str()).c_str() );
- }
- }
+ }
+ }
}
zypp::ResPool
@@ -227,7 +227,7 @@ zypp_build_local_pool ()
if (! it->isSystemRepo ())
pool.reposErase(it->alias ());
}
-
+
if (zypp::sat::Pool::instance().reposFind( zypp::sat::Pool::systemRepoAlias() ).solvablesEmpty ())
{
// Add local resolvables
@@ -255,7 +255,7 @@ zypp_get_rpmHeader (std::string name, zypp::Edition edition)
return result;
}
-
+
std::string
zypp_get_group (zypp::sat::Solvable item)
@@ -277,7 +277,7 @@ zypp_get_group (zypp::sat::Solvable item)
PkGroupEnum
get_enum_group (std::string group)
{
-
+
// TODO Look for a faster and nice way to do this conversion
std::transform(group.begin(), group.end(), group.begin(), tolower);
@@ -287,7 +287,7 @@ get_enum_group (std::string group)
return PK_GROUP_ENUM_PROGRAMMING;
} else if (group.find ("hardware") != std::string::npos) {
return PK_GROUP_ENUM_SYSTEM;
- } else if (group.find ("archiving") != std::string::npos
+ } else if (group.find ("archiving") != std::string::npos
|| group.find("clustering") != std::string::npos
|| group.find("system/monitoring") != std::string::npos
|| group.find("databases") != std::string::npos
@@ -299,7 +299,7 @@ get_enum_group (std::string group)
return PK_GROUP_ENUM_MULTIMEDIA;
} else if (group.find ("network") != std::string::npos) {
return PK_GROUP_ENUM_NETWORK;
- } else if (group.find ("office") != std::string::npos
+ } else if (group.find ("office") != std::string::npos
|| group.find("text") != std::string::npos
|| group.find("editors") != std::string::npos) {
return PK_GROUP_ENUM_OFFICE;
@@ -344,23 +344,6 @@ zypp_get_packages_by_name (const gchar *package_name, const zypp::ResKind kind,
}
std::vectorzypp::sat::Solvable *
-zypp_get_packages_by_details (const gchar *search_term, gboolean include_local)
-{
- std::vectorzypp::sat::Solvable *v = new std::vectorzypp::sat::Solvable ();
-
- zypp::ResPool pool = zypp_build_pool (include_local);
-
- std::string term (search_term);
- for (zypp::ResPool::byKind_iterator it = pool.byKindBegin (zypp::ResKind::package);
- it != pool.byKindEnd (zypp::ResKind::package); it++) {
- if ((*it)->name ().find (term) != std::string::npos || (*it)->description ().find (term) != std::string::npos )
- v->push_back ((*it)->satSolvable ());
- }
-
- return v;
-}
-
-std::vectorzypp::sat::Solvable *
zypp_get_packages_by_file (const gchar *search_file)
{
std::vectorzypp::sat::Solvable *v = new std::vectorzypp::sat::Solvable ();
@@ -404,7 +387,7 @@ zypp_get_package_by_id (const gchar *package_id)
std::vectorzypp::sat::Solvable *v2 = zypp_get_packages_by_name (id_parts[PK_PACKAGE_ID_NAME], zypp::ResKind::patch, TRUE);
v->insert (v->end (), v2->begin (), v2->end ());
-
+
if (v == NULL)
return zypp::sat::Solvable::noSolvable;
@@ -432,7 +415,7 @@ gchar *
zypp_build_package_id_from_resolvable (zypp::sat::Solvable resolvable)
{
gchar *package_id;
-
+
package_id = pk_package_id_build (resolvable.name ().c_str (),
resolvable.edition ().asString ().c_str (),
resolvable.arch ().asString ().c_str (),
@@ -490,14 +473,14 @@ gboolean
zypp_signature_required (PkBackend *backend, const std::string &file, const std::string &id)
{
gboolean ok = FALSE;
-
+
if (std::find (_signatures[backend]->begin (), _signatures[backend]->end (), id) == _signatures[backend]->end ()) {
zypp::RepoInfo info = zypp_get_Repository (backend, _repoName);
if (info.type () == zypp::repo::RepoType::NONE) {
pk_backend_error_code (backend, PK_ERROR_ENUM_INTERNAL_ERROR, "Repository unknown");
return FALSE;
}
-
+
pk_backend_repo_signature_required (backend,
"dummy;0.0.1;i386;data",
_repoName,
@@ -526,7 +509,7 @@ zypp_signature_required (PkBackend *backend, const std::string &file)
pk_backend_error_code (backend, PK_ERROR_ENUM_INTERNAL_ERROR, "Repository unknown");
return FALSE;
}
-
+
pk_backend_repo_signature_required (backend,
"dummy;0.0.1;i386;data",
_repoName,
@@ -590,7 +573,7 @@ zypp_emit_packages_in_list (PkBackend *backend, std::vectorzypp::sat::Solvable
//egg_debug ("my default arch is %s", myarch);
}
if (!print)
- continue;
+ continue;
}
pk_backend_package (backend,
@@ -636,7 +619,7 @@ zypp_get_updates (std::string repo)
{
std::setzypp::PoolItem *pks = new std::setzypp::PoolItem ();
zypp::ResPool pool = zypp::ResPool::instance ();
-
+
zypp::ResObject::Kind kind = zypp::ResTraitszypp::Package::kind;
zypp::ResPool::byKind_iterator it = pool.byKindBegin (kind);
zypp::ResPool::byKind_iterator e = pool.byKindEnd (kind);
@@ -671,7 +654,7 @@ zypp_get_patches ()
for (zypp::ResPoolProxy::const_iterator it = zypp->poolProxy ().byKindBeginzypp::Patch();
it != zypp->poolProxy ().byKindEndzypp::Patch(); it ++) {
- // check if patch is needed
+ // check if patch is needed
if((*it)->candidateObj ().isRelevant() && !((*it)->candidateObj ().isSatisfied())) {
zypp::Patch::constPtr patch = zypp::asKindzypp::Patch((*it)->candidateObj ().resolvable ());
if (_updating_self) {
@@ -719,8 +702,8 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
if (force)
zypp->resolver ()->setForceResolve (force);
if (type == UPDATE) {
- //zypp->resolver ()->setOnlyRequires (TRUE);
- zypp->resolver ()->setIgnoreAlreadyRecommended (TRUE);
+ //zypp->resolver ()->setOnlyRequires (TRUE);
+ zypp->resolver ()->setIgnoreAlreadyRecommended (TRUE);
}
// Gather up any dependencies
@@ -756,7 +739,7 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
zypp->resolver ()->setForceResolve (FALSE);
return FALSE;
}
-
+
switch (type) {
case INSTALL:
pk_backend_set_status (backend, PK_STATUS_ENUM_INSTALL);
@@ -782,7 +765,7 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
eula_id,
package_id,
(*it)->vendor ().c_str (),
- it->satSolvable ().lookupStrAttribute (zypp::sat::SolvAttr::eula).c_str ());
+ it->satSolvable ().lookupStrAttribute (zypp::sat::SolvAttr::eula).c_str ());
pk_backend_error_code (backend, PK_ERROR_ENUM_NO_LICENSE_AGREEMENT, "You've to agree/decline a license");
g_free (package_id);
g_free (eula_id);
@@ -800,7 +783,7 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
zypp::ZYppCommitResult result = zypp->commit (policy);
if(!result._errors.empty () || !result._remaining.empty () || !result._srcremaining.empty ()){
-
+
zypp::ZYppCommitResult::PoolItemList errors = result._errors;
gchar *emsg = NULL, *tmpmsg = NULL;
@@ -813,7 +796,7 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
g_free (tmpmsg);
}
}
-
+
zypp::ZYppCommitResult::PoolItemList remaining = result._remaining;
for (zypp::ZYppCommitResult::PoolItemList::iterator it = remaining.begin (); it != remaining.end (); it++){
if (emsg == NULL) {
@@ -824,7 +807,7 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
g_free (tmpmsg);
}
}
-
+
zypp::ZYppCommitResult::PoolItemList srcremaining = result._srcremaining;
for (zypp::ZYppCommitResult::PoolItemList::iterator it = srcremaining.begin (); it != srcremaining.end (); it++){
if (emsg == NULL) {
@@ -847,7 +830,7 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
zypp->resolver ()->setForceResolve (FALSE);
if (type == UPDATE) {
- zypp->resolver ()->setIgnoreAlreadyRecommended (FALSE);
+ zypp->resolver ()->setIgnoreAlreadyRecommended (FALSE);
}
} catch (const zypp::repo::RepoNotFoundException &ex) {
@@ -859,8 +842,8 @@ zypp_perform_execution (PkBackend *backend, PerformType type, gboolean force)
} catch (const zypp::Exception &ex) {
pk_backend_error_code (backend, PK_ERROR_ENUM_INTERNAL_ERROR, ex.asUserString().c_str() );
return FALSE;
- }
-
+ }
+
return TRUE;
}
@@ -890,7 +873,7 @@ zypp_build_package_id_capabilities (zypp::Capabilities caps)
for (zypp::sat::WhatProvides::const_iterator it = provs.begin (); it != provs.end (); it++) {
gchar *package_id = zypp_build_package_id_from_resolvable (*it);
//package_ids = g_strconcat (package_ids, package_id, PK_PACKAGE_IDS_DELIM, (gchar *)NULL);
- if (strlen (package_ids) == 0) {
+ if (strlen (package_ids) == 0) {
package_ids = g_strdup (package_id);
} else {
package_ids = g_strconcat (package_ids, PK_PACKAGE_IDS_DELIM, package_id, (gchar *)NULL);
@@ -955,9 +938,9 @@ zypp_refresh_cache (PkBackend *backend, gboolean force)
zypp::RepoManager::BuildIfNeeded);
} catch (const zypp::Exception &ex) {
if (repo_messages == NULL) {
- repo_messages = g_strdup_printf ("%s: %s%s", repo.alias ().c_str (), ex.asUserString ().c_str (), "\n");
+ repo_messages = g_strdup_printf ("%s: %s%s", repo.alias ().c_str (), ex.asUserString ().c_str (), "\n");
}else{
- repo_messages = g_strdup_printf ("%s%s: %s%s", repo_messages, repo.alias ().c_str (), ex.asUserString ().c_str (), "\n");
+ repo_messages = g_strdup_printf ("%s%s: %s%s", repo_messages, repo.alias ().c_str (), ex.asUserString ().c_str (), "\n");
}
if (repo_messages == NULL || !g_utf8_validate (repo_messages, -1, NULL))
repo_messages = g_strdup ("A repository could not be refreshed");
diff --git a/backends/zypp/zypp-utils.h b/backends/zypp/zypp-utils.h
index 450be80..ea75c57 100644
--- a/backends/zypp/zypp-utils.h
+++ b/backends/zypp/zypp-utils.h
@@ -34,8 +34,10 @@
#include
From 59d5111dd620a3978cd02946a94ecc7d9bc6e3cf Mon Sep 17 00:00:00 2001 From: Michael Andres
Date: Wed, 28 Apr 2010 15:05:37 +0200 Subject: [PATCH 3/3] zypp: let libzypp determine whether a patch is needed.
- with libzypp-6(>= 6.32) or libzypp-7(>=7.3) locked patches are no longer classified as being needed. Thus locking unwanted patches should prevent them from being shown. --- backends/zypp/zypp-utils.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/backends/zypp/zypp-utils.cpp b/backends/zypp/zypp-utils.cpp index 4fbfee4..ee478d5 100644 --- a/backends/zypp/zypp-utils.cpp +++ b/backends/zypp/zypp-utils.cpp @@ -655,7 +655,7 @@ zypp_get_patches () for (zypp::ResPoolProxy::const_iterator it = zypp->poolProxy ().byKindBeginzypp::Patch(); it != zypp->poolProxy ().byKindEndzypp::Patch(); it ++) { // check if patch is needed - if((*it)->candidateObj ().isRelevant() && !((*it)->candidateObj ().isSatisfied())) { + if((*it)->isNeeded()) { zypp::Patch::constPtr patch = zypp::asKindzypp::Patch((*it)->candidateObj ().resolvable ()); if (_updating_self) { if (patch->restartSuggested ()) -- 1.6.4.2 ++++++ PackageKit-cron-disabled-is-no-error.patch ++++++ Index: PackageKit-0.6.3/contrib/cron/packagekit-background.cron =================================================================== --- PackageKit-0.6.3.orig/contrib/cron/packagekit-background.cron +++ PackageKit-0.6.3/contrib/cron/packagekit-background.cron @@ -11,11 +11,11 @@ [ -f /etc/sysconfig/packagekit-background ] && . /etc/sysconfig/packagekit-background # are we disabled? if [ "$ENABLED" = "no" ]; then - exit 1 + exit 0 # this is not an error, SO DO NOT EXIT WITH 1 fi # set default for SYSTEMNAME [ -z "$SYSTEMNAME" ] && SYSTEMNAME=$(hostname) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org