Hello community, here is the log from the commit of package libzypp-zmd-backend checked in at Tue Apr 10 01:28:25 CEST 2007. -------- --- libzypp-zmd-backend/libzypp-zmd-backend.changes 2007-03-06 17:03:22.000000000 +0100 +++ /mounts/work_users/ro/STABLE/libzypp-zmd-backend/libzypp-zmd-backend.changes 2007-04-10 01:23:12.329252000 +0200 @@ -1,0 +2,5 @@ +Tue Apr 10 01:23:01 CEST 2007 - ro@suse.de + +- grab fixes from svn to fix build + +------------------------------------------------------------------- New: ---- zmd-backend-svn.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libzypp-zmd-backend.spec ++++++ --- /var/tmp/diff_new_pack.iM2157/_old 2007-04-10 01:28:04.000000000 +0200 +++ /var/tmp/diff_new_pack.iM2157/_new 2007-04-10 01:28:04.000000000 +0200 @@ -12,7 +12,7 @@ Name: libzypp-zmd-backend Version: 7.1.1.0_1.0 -Release: 2 +Release: 9 License: GNU General Public License (GPL) Group: System/Management Summary: ZMD backend for Package, Patch, Pattern, and Product Management @@ -34,6 +34,7 @@ BuildRequires: libzypp >= 2.8.7 Requires: libzypp >= 2.8.7 Source: zmd-backend-%{version}.tar.bz2 +Patch: zmd-backend-svn.patch Prefix: /usr %description @@ -48,6 +49,7 @@ %prep %setup -q -n zmd-backend-%{version} +%patch %build mkdir build @@ -79,6 +81,8 @@ /etc/logrotate.d/zmd-backend %changelog +* Tue Apr 10 2007 - ro@suse.de +- grab fixes from svn to fix build * Tue Mar 06 2007 - dmacvicar@suse.de - fix lib install dir on 64 bit systems - r5167 ++++++ zmd-backend-svn.patch ++++++ --- src/dbsource/DbAccess.cc +++ src/dbsource/DbAccess.cc @@ -18,6 +18,7 @@ #include "zypp/Source.h" #include "zypp/detail/ImplConnect.h" #include "zypp/source/PackageDelta.h" +#include "zypp/capability/Capabilities.h" #include "DbAccess.h" IMPL_PTR_TYPE(DbAccess); @@ -704,18 +705,30 @@ sqlite3_bind_int( handle, 2, type); // type (provides, requires, ...) sqlite3_bind_text( handle, 3, iter->index().c_str(), -1, SQLITE_STATIC ); // tag - Edition edition = iter->edition(); - string version = edition.version(); - string release = edition.release(); + Edition edition; + string version; + string release; + Rel op; + if ( capability::VersionedCap::constPtr vercap = capability::asKindcapability::VersionedCap(*iter) ) + { + edition = vercap->edition(); + version = edition.version(); + release = edition.release(); + } + else + { + edition = Edition::noedition; + op = Rel::NONE; + } - if (iter->op() != Rel::NONE // operator and edition given ? - && iter->op() != Rel::ANY + if ( op != Rel::NONE // operator and edition given ? + && op != Rel::ANY && edition != Edition::noedition) { sqlite3_bind_text( handle, 4, version.c_str(), -1, SQLITE_STATIC ); // version sqlite3_bind_text( handle, 5, release.c_str(), -1, SQLITE_STATIC ); // release Edition::epoch_t epoch = edition.epoch(); - if (epoch != Edition::noepoch) + if ( epoch != Edition::noepoch ) { sqlite3_bind_int( handle, 6, epoch); // epoch } @@ -724,7 +737,7 @@ sqlite3_bind_int( handle, 6, 0); } sqlite3_bind_int( handle, 7, -1); // arch - sqlite3_bind_int( handle, 8, Rel2Rc( iter->op() )); // operation (==, <, <=, ...) + sqlite3_bind_int( handle, 8, Rel2Rc( op )); // operation (==, <, <=, ...) } else { --- src/dbsource/DbSourceImpl.cc +++ src/dbsource/DbSourceImpl.cc @@ -684,7 +684,7 @@ sqlite3_bind_int64 (delta_handle, 1, id ); while ((delta_rc = sqlite3_step (delta_handle)) == SQLITE_ROW) { - zypp::source::OnMediaLocation on_media; + zypp::OnMediaLocation on_media; on_media.medianr( sqlite3_column_int( delta_handle, 1 ) ); on_media.filename( Pathname((const char *) sqlite3_column_text( delta_handle, 2 )) ); @@ -728,7 +728,7 @@ { sqlite_int64 patch_package_id = sqlite3_column_int64( patch_handle, 0 ); - zypp::source::OnMediaLocation on_media; + zypp::OnMediaLocation on_media; on_media.medianr( sqlite3_column_int( patch_handle, 1 ) ); on_media.filename( Pathname((const char *) sqlite3_column_text( patch_handle, 2 )) ); --- src/locks.cc +++ src/locks.cc @@ -16,6 +16,7 @@ #include "zypp/PoolItem.h" #include "zypp/CapFactory.h" #include "zypp/CapMatchHelper.h" +#include "zypp/capability/Capabilities.h" #undef ZYPP_BASE_LOGGER_LOGGROUP #define ZYPP_BASE_LOGGER_LOGGROUP "locks" @@ -169,9 +170,17 @@ try { Capability capability = cap_factory.parse( ResTraitszypp::Package::kind, glob_str ); - rel = capability.op(); - edition = capability.edition(); - name = capability.index(); + if ( capability::VersionedCap::constPtr vercap = capability::asKindcapability::VersionedCap(capability) ) + { + rel = vercap->op(); + edition = vercap->edition(); + name = vercap->index(); + } + else + { + ERR << "Not a versioned capability in: [" << glob_str << "] skipping" << std::endl; + continue; + } } catch ( const Exception &e ) { ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org