From c11ecf0fd10641218326ae384e80413ba3cdf46c Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 27 May 2009 17:42:51 +0000 Subject: Remove 'new_patch', 'new_node', and 'new_port' from interface in favour of generic 'put'. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2011 a436a847-0d15-0410-975c-d299462d15a1 --- src/engine/GraphObjectImpl.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/engine/GraphObjectImpl.cpp') diff --git a/src/engine/GraphObjectImpl.cpp b/src/engine/GraphObjectImpl.cpp index 71730202..ef4e2cd4 100644 --- a/src/engine/GraphObjectImpl.cpp +++ b/src/engine/GraphObjectImpl.cpp @@ -30,7 +30,14 @@ using namespace Shared; void GraphObjectImpl::set_variable(const Raul::URI& key, const Atom& value) { - _variables[key] = value; + // Ignore duplicate statements + typedef Resource::Properties::const_iterator iterator; + const std::pair range = _variables.equal_range(key); + for (iterator i = range.first; i != range.second; ++i) + if (i->second == value) + return; + + _variables.insert(make_pair(key, value)); } -- cgit v1.2.1