aboutsummaryrefslogtreecommitdiffstats
path: root/common/project.cc
diff options
context:
space:
mode:
authorMiodrag Milanovic <mmicko@gmail.com>2019-06-12 18:34:34 +0200
committerMiodrag Milanovic <mmicko@gmail.com>2019-06-12 18:34:34 +0200
commit856760599e51bd4c6da34112c993dc8bfb995f36 (patch)
tree02ea7d93a960eb5d177b7a9301693710b6724884 /common/project.cc
parentd9b0bac248a12466cd2b62d02ec11b2e60d25019 (diff)
downloadnextpnr-856760599e51bd4c6da34112c993dc8bfb995f36.tar.gz
nextpnr-856760599e51bd4c6da34112c993dc8bfb995f36.tar.bz2
nextpnr-856760599e51bd4c6da34112c993dc8bfb995f36.zip
Use properties for settings and save in json
Diffstat (limited to 'common/project.cc')
-rw-r--r--common/project.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/common/project.cc b/common/project.cc
index b0ebe961..3b4e67e4 100644
--- a/common/project.cc
+++ b/common/project.cc
@@ -74,7 +74,7 @@ void ProjectHandler::save(Context *ctx, std::string filename)
std::string path = "project.settings.";
path += item.first.c_str(ctx);
std::replace(path.begin(), path.end(), '/', '.');
- root.put(path, item.second);
+ root.put(path, item.second.str);
}
pt::write_json(f, root);
} catch (...) {
@@ -88,7 +88,9 @@ void addSettings(Context *ctx, std::string path, pt::ptree sub)
const std::string &key = v.first;
const boost::property_tree::ptree &subtree = v.second;
if (subtree.empty()) {
- ctx->settings.emplace(ctx->id(path + key), subtree.get_value<std::string>().c_str());
+ Property p;
+ p.setString(subtree.get_value<std::string>().c_str());
+ ctx->settings.emplace(ctx->id(path + key), p);
} else {
addSettings(ctx, path + key + "/", subtree);
}