From dbe40c32018cf7d2002e6511d53c598c3bb45155 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Mon, 9 Jul 2018 17:23:53 +0300 Subject: Adapt to repository_url(string) ctor throwing invalid_argument for empty string --- libbrep/common.hxx | 4 +++- load/load.cxx | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/libbrep/common.hxx b/libbrep/common.hxx index 7860876..df838a7 100644 --- a/libbrep/common.hxx +++ b/libbrep/common.hxx @@ -229,7 +229,9 @@ namespace brep #pragma db map type(repository_location) as(string) \ to((?).url ().string ()) \ - from(brep::repository_location (brep::repository_url (?), \ + from(brep::repository_location ((?).empty () \ + ? bpkg::repository_url () \ + : brep::repository_url (?), \ brep::repository_type::pkg)) // Version comparison operators. diff --git a/load/load.cxx b/load/load.cxx index e63f1f5..ca7c6c7 100644 --- a/load/load.cxx +++ b/load/load.cxx @@ -160,7 +160,7 @@ load_repositories (path p) // process. Note that the resulting absolute path should be a valid // repository location. // - dir_path cache_path = dir_path (string (nv, vp)); + dir_path cache_path (string (nv, vp)); if (cache_path.relative ()) cache_path = p.directory () / cache_path; @@ -177,7 +177,7 @@ load_repositories (path p) { bad_line (string ("invalid cache path: ") + e.what ()); } - catch (const invalid_argument& e) // Thrown by repository_location(). + catch (const invalid_argument& e) // Thrown by repository_*(). { bad_line (string ("invalid cache path: ") + e.what ()); } -- cgit v1.1