On Mon, Aug 19, 2013 at 9:16 AM, Tom Rondeau <[email protected]> wrote:


> > I took a look at the code, and I found this suspicious bit in
> hier_block2_detail.cc:
> >
> >   void
> >   hier_block2_detail::disconnect_all()
> >   {
> >     d_fg->clear();
> >     d_blocks.clear();
> >     d_inputs.clear();
> >     d_outputs.clear();
> >   }
> >
> > I have very little C++ experience, but if I understand correctly, the
> last two lines will cause the input and output port vectors to have length
> 0, which would explain the observed behavior. There does not seem to be any
> code which increases the size of the vectors again.
> >
> > If this is so, the fix would be to reset each element to the unset value
> individually rather than removing elements. (I don't know how to write that
> in idiomatic C++.)
> >
> > I hope someone who has a working GNU Radio development environment (I've
> tried and failed, which is an unrelated problem) can try this fix.
>
> This is really good information. Johnathan and I will look it over and
> discuss it.
>

This issue was fixed this morning.  The two lines in question were indeed
the fault; instead of clearing the vectors, they should have been recreated
with empty contents as is done in the constructor to initialize them.

Thanks.

-- 
Johnathan Corgan
Corgan Labs - SDR Training and Development Services
http://corganlabs.com
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to