summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/lib/basic_block.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-runtime/lib/basic_block.cc')
-rw-r--r--gnuradio-runtime/lib/basic_block.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/gnuradio-runtime/lib/basic_block.cc b/gnuradio-runtime/lib/basic_block.cc
index 3cd23c8996..686c1d6e65 100644
--- a/gnuradio-runtime/lib/basic_block.cc
+++ b/gnuradio-runtime/lib/basic_block.cc
@@ -72,7 +72,16 @@ namespace gr {
void
basic_block::set_block_alias(std::string name)
{
- global_block_registry.register_symbolic_name(this, name);
+ // Only keep one alias'd name around for each block. If we don't
+ // have an alias, add it; if we do, update the entry in the
+ // registry.
+ if(alias_set())
+ global_block_registry.update_symbolic_name(this, name);
+ else
+ global_block_registry.register_symbolic_name(this, name);
+
+ // set the block's alias
+ d_symbol_alias = name;
}
// ** Message passing interface **