Hello community,
here is the log from the commit of package yast2-pkg-bindings for
openSUSE:Factory checked in at 2017-06-28 10:33:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-pkg-bindings (Old)
and /work/SRC/openSUSE:Factory/.yast2-pkg-bindings.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-pkg-bindings"
Wed Jun 28 10:33:35 2017 rev:190 rq:505501 version:3.2.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-pkg-bindings/yast2-pkg-bindings.changes
2017-06-05 18:48:38.431608565 +0200
+++
/work/SRC/openSUSE:Factory/.yast2-pkg-bindings.new/yast2-pkg-bindings.changes
2017-06-28 10:33:39.949621716 +0200
@@ -1,0 +2,6 @@
+Wed Jun 21 12:16:39 UTC 2017 - [email protected]
+
+- Do not crash when the repository URL is not defined (bsc#1043218)
+- 3.2.4
+
+-------------------------------------------------------------------
Old:
----
yast2-pkg-bindings-3.2.3.tar.bz2
New:
----
yast2-pkg-bindings-3.2.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-pkg-bindings-devel-doc.spec ++++++
--- /var/tmp/diff_new_pack.j9HJyQ/_old 2017-06-28 10:33:41.129454798 +0200
+++ /var/tmp/diff_new_pack.j9HJyQ/_new 2017-06-28 10:33:41.129454798 +0200
@@ -17,7 +17,7 @@
Name: yast2-pkg-bindings-devel-doc
-Version: 3.2.3
+Version: 3.2.4
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: yast2-pkg-bindings-%{version}.tar.bz2
++++++ yast2-pkg-bindings.spec ++++++
--- /var/tmp/diff_new_pack.j9HJyQ/_old 2017-06-28 10:33:41.153451402 +0200
+++ /var/tmp/diff_new_pack.j9HJyQ/_new 2017-06-28 10:33:41.157450837 +0200
@@ -17,7 +17,7 @@
Name: yast2-pkg-bindings
-Version: 3.2.3
+Version: 3.2.4
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
++++++ yast2-pkg-bindings-3.2.3.tar.bz2 -> yast2-pkg-bindings-3.2.4.tar.bz2
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-pkg-bindings-3.2.3/package/yast2-pkg-bindings-devel-doc.spec
new/yast2-pkg-bindings-3.2.4/package/yast2-pkg-bindings-devel-doc.spec
--- old/yast2-pkg-bindings-3.2.3/package/yast2-pkg-bindings-devel-doc.spec
2017-06-02 10:47:52.094711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/package/yast2-pkg-bindings-devel-doc.spec
2017-06-21 17:32:25.057598963 +0200
@@ -16,7 +16,7 @@
#
Name: yast2-pkg-bindings-devel-doc
-Version: 3.2.3
+Version: 3.2.4
Release: 0
License: GPL-2.0
Group: Documentation/HTML
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-pkg-bindings-3.2.3/package/yast2-pkg-bindings.changes
new/yast2-pkg-bindings-3.2.4/package/yast2-pkg-bindings.changes
--- old/yast2-pkg-bindings-3.2.3/package/yast2-pkg-bindings.changes
2017-06-02 10:47:52.094711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/package/yast2-pkg-bindings.changes
2017-06-21 17:32:25.061598963 +0200
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Wed Jun 21 12:16:39 UTC 2017 - [email protected]
+
+- Do not crash when the repository URL is not defined (bsc#1043218)
+- 3.2.4
+
+-------------------------------------------------------------------
Fri Jun 2 08:42:12 UTC 2017 - [email protected]
- Fix pkgGpgCheck callback crashing when reporting SrcPackages
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/yast2-pkg-bindings-3.2.3/package/yast2-pkg-bindings.spec
new/yast2-pkg-bindings-3.2.4/package/yast2-pkg-bindings.spec
--- old/yast2-pkg-bindings-3.2.3/package/yast2-pkg-bindings.spec
2017-06-02 10:47:52.094711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/package/yast2-pkg-bindings.spec
2017-06-21 17:32:25.061598963 +0200
@@ -17,7 +17,7 @@
Name: yast2-pkg-bindings
-Version: 3.2.3
+Version: 3.2.4
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/Callbacks.cc
new/yast2-pkg-bindings-3.2.4/src/Callbacks.cc
--- old/yast2-pkg-bindings-3.2.3/src/Callbacks.cc 2017-06-02
10:41:07.190711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/src/Callbacks.cc 2017-06-21
17:32:25.065598963 +0200
@@ -1464,14 +1464,7 @@
if (callback._set)
{
callback.addInt(_pkg_ref.logFindAlias(repo.alias()));
-
- std::string url;
- if (repo.baseUrlsBegin() != repo.baseUrlsEnd())
- {
- url = repo.baseUrlsBegin()->asString();
- }
-
- callback.addStr(url);
+ callback.addStr(repo.url().asString());
callback.addStr(task.name());
callback.evaluate();
@@ -1528,14 +1521,7 @@
{
// search Yast source ID
callback.addInt(_pkg_ref.logFindAlias(source.info().alias()));
-
- std::string url;
- if (source.info().baseUrlsBegin() !=
source.info().baseUrlsEnd())
- {
- url = source.info().baseUrlsBegin()->asString();
- }
-
- callback.addStr(url);
+ callback.addStr(source.info().url().asString());
callback.addSymbol(SrcReportErrorAsString(error));
callback.addStr(description);
@@ -1564,14 +1550,7 @@
{
// search Yast source ID
callback.addInt(_pkg_ref.logFindAlias(source.info().alias()));
-
- std::string url;
- if (source.info().baseUrlsBegin() !=
source.info().baseUrlsEnd())
- {
- url = source.info().baseUrlsBegin()->asString();
- }
- callback.addStr(url);
-
+ callback.addStr(source.info().url().asString());
callback.addStr(task);
callback.addSymbol(SrcReportErrorAsString(error));
callback.addStr(reason);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/Package.cc
new/yast2-pkg-bindings-3.2.4/src/Package.cc
--- old/yast2-pkg-bindings-3.2.3/src/Package.cc 2017-06-02 10:41:07.194711532
+0200
+++ new/yast2-pkg-bindings-3.2.4/src/Package.cc 2017-06-21 17:32:25.069598963
+0200
@@ -230,11 +230,7 @@
y2warning("Name of repository '%lld' is empty, using URL",
index);
// use URL as the product name
- std::string name;
- if ((*repoit)->repoInfo().baseUrlsBegin() !=
(*repoit)->repoInfo().baseUrlsEnd())
- {
- name =
(*repoit)->repoInfo().baseUrlsBegin()->asString();
- }
+ std::string name((*repoit)->repoInfo().url().asString());
// use alias if url is unknown
if (name.empty())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/Source_Create.cc
new/yast2-pkg-bindings-3.2.4/src/Source_Create.cc
--- old/yast2-pkg-bindings-3.2.3/src/Source_Create.cc 2017-06-02
10:41:07.198711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/src/Source_Create.cc 2017-06-21
17:32:25.073598963 +0200
@@ -302,7 +302,7 @@
y2milestone("Added source '%s': '%s', enabled: %s, autorefresh: %s",
repo.alias().c_str(),
- repo.baseUrlsBegin()->asString().c_str(),
+ repo.url().asString().c_str(),
repo.enabled() ? "true" : "false",
repo.autorefresh() ? "true" : "false"
);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/Source_Get.cc
new/yast2-pkg-bindings-3.2.4/src/Source_Get.cc
--- old/yast2-pkg-bindings-3.2.3/src/Source_Get.cc 2017-06-02
10:41:07.198711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/src/Source_Get.cc 2017-06-21
17:32:25.073598963 +0200
@@ -283,9 +283,9 @@
y2warning("Pkg::SourceMediaData() doesn't return \"media_id\" and
\"media_vendor\" values anymore.");
// SourceMediaData returns URLs without password
- if (repo->repoInfo().baseUrlsBegin() != repo->repoInfo().baseUrlsEnd())
+ if (!repo->repoInfo().baseUrlsEmpty())
{
- data->add( YCPString("url"),
YCPString(repo->repoInfo().baseUrlsBegin()->asString()));
+ data->add( YCPString("url"),
YCPString(repo->repoInfo().url().asString()));
// add all base URLs
YCPList base_urls;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/Source_Load.cc
new/yast2-pkg-bindings-3.2.4/src/Source_Load.cc
--- old/yast2-pkg-bindings-3.2.3/src/Source_Load.cc 2017-06-02
10:41:07.198711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/src/Source_Load.cc 2017-06-21
17:32:25.077598963 +0200
@@ -267,8 +267,14 @@
// do not autorefresh remote repositories when the
network is not running
if (!network_is_running)
{
- zypp::Url url =
*((*it)->repoInfo().baseUrlsBegin());
-
+ if ((*it)->repoInfo().baseUrlsEmpty())
+ {
+ y2warning("No URL defined, skipping repository '%s'",
(*it)->repoInfo().alias().c_str());
+ continue;
+ }
+
+ zypp::Url url = (*it)->repoInfo().url();
+
if (remoteRepo(url))
{
y2warning("No network connection, skipping
autorefresh of remote repository %s (%s)",
@@ -286,11 +292,17 @@
refresh_started_called = true;
}
- zypp::RepoManager::RefreshCheckStatus ref_stat =
repomanager->checkIfToRefreshMetadata((*it)->repoInfo(),
*((*it)->repoInfo().baseUrlsBegin()));
+ if ((*it)->repoInfo().baseUrlsEmpty())
+ {
+ y2milestone("Skipping repository '%s' - URL not defined",
(*it)->repoInfo().alias().c_str());
+ continue;
+ }
+
+ zypp::RepoManager::RefreshCheckStatus ref_stat =
repomanager->checkIfToRefreshMetadata((*it)->repoInfo(),
(*it)->repoInfo().url());
if (ref_stat != zypp::RepoManager::REFRESH_NEEDED)
{
- y2internal("Skipping repository '%s' - refresh
is not needed", (*it)->repoInfo().alias().c_str());
+ y2milestone("Skipping repository '%s' - refresh
is not needed", (*it)->repoInfo().alias().c_str());
continue;
}
@@ -478,7 +490,7 @@
stages.push_back(_("Refresh Sources"));
stages.push_back(_("Rebuild Cache"));
stages.push_back(_("Load Data"));
-
+
// 3 steps per repository (download, cache rebuild, load resolvables)
pkgprogress.Start(_("Loading the Package Manager..."), stages,
_(HelpTexts::load_resolvables));
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/Source_Resolvables.cc
new/yast2-pkg-bindings-3.2.4/src/Source_Resolvables.cc
--- old/yast2-pkg-bindings-3.2.3/src/Source_Resolvables.cc 2017-06-02
10:41:07.198711532 +0200
+++ new/yast2-pkg-bindings-3.2.4/src/Source_Resolvables.cc 2017-06-21
17:32:25.077598963 +0200
@@ -71,7 +71,7 @@
prog.sendTo(progressrcv);
zypp::CombinedProgressData load_subprogress(prog, 100);
- try
+ try
{
zypp::RepoManager* repomanager = CreateRepoManager();
bool refresh = true;
@@ -84,15 +84,23 @@
{
if (network_check)
{
- zypp::Url url = *(repoinfo.baseUrlsBegin());
+ if (repoinfo.baseUrlsEmpty())
+ {
+ y2milestone("No URL defined, skipping repository '%s'",
repoinfo.alias().c_str());
+ refresh = false;
+ }
+ else
+ {
+ zypp::Url url = repoinfo.url();
- if (remoteRepo(url) && !NetworkDetected())
- {
- y2warning("No network connection, skipping autorefresh
of remote repository %s (%s)",
- repoinfo.alias().c_str(), url.asString().c_str());
+ if (remoteRepo(url) && !NetworkDetected())
+ {
+ y2warning("No network connection, skipping autorefresh of
remote repository %s (%s)",
+ repoinfo.alias().c_str(), url.asString().c_str());
- refresh = false;
- }
+ refresh = false;
+ }
+ }
}
if (refresh)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/yast2-pkg-bindings-3.2.3/src/YRepo.cc
new/yast2-pkg-bindings-3.2.4/src/YRepo.cc
--- old/yast2-pkg-bindings-3.2.3/src/YRepo.cc 2017-06-02 10:41:07.202711532
+0200
+++ new/yast2-pkg-bindings-3.2.4/src/YRepo.cc 2017-06-21 17:32:25.077598963
+0200
@@ -52,8 +52,8 @@
if (!_maccess)
{
y2milestone("Creating new MediaSetAccess for url %s",
- (*_repo.baseUrlsBegin()).asString().c_str());
- _maccess = new zypp::MediaSetAccess(_repo.name(),
*_repo.baseUrlsBegin()); // FIXME handle multiple baseUrls
+ _repo.url().asString().c_str());
+ _maccess = new zypp::MediaSetAccess(_repo.name(), _repo.url()); //
FIXME handle multiple baseUrls
}
return _maccess;