aboutsummaryrefslogtreecommitdiff
path: root/bpkg/manifest.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-09-25 13:32:35 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-09-25 14:49:52 +0200
commit8cdb20a6ef2e87839c8e4f4c4e99fdafb7db9299 (patch)
treeb265628099b4a1994ef081f4058f5c420a79c5d7 /bpkg/manifest.cxx
parenta2ccb6406bb1b016aaf31a47c659d06bce0cfc6a (diff)
Check for location redefinition in repository_manifest constructor
Diffstat (limited to 'bpkg/manifest.cxx')
-rw-r--r--bpkg/manifest.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/bpkg/manifest.cxx b/bpkg/manifest.cxx
index bc1531d..5a3357e 100644
--- a/bpkg/manifest.cxx
+++ b/bpkg/manifest.cxx
@@ -729,6 +729,9 @@ namespace bpkg
void package_manifest::
serialize (serializer& s) const
{
+ // @@ Should we check that all non-optional values are specified ?
+ //
+
s.next ("", "1"); // Start of manifest.
s.next ("name", name);
s.next ("version", version.string ());
@@ -1114,6 +1117,9 @@ namespace bpkg
if (n == "location")
{
+ if (!location.empty ())
+ bad_name ("location redefinition");
+
if (v.empty ())
bad_value ("empty location");