On Sat, Aug 17, 2013 at 12:33 PM, Kevin Reid <kpr...@switchb.org> wrote: > (I would have sent this as a comment on the issue tracker, but creating an > account didn't seem to give me permission to comment.)
See this in the FAQ for posting: http://gnuradio.org/redmine/projects/gnuradio/wiki/FAQ#How-can-I-post-on-this-wiki-use-the-bug-tracker I have added you to the GNU Radio project so you can post now. > I've been using GNU Radio (strictly via Python) and met what seems to be the > already-reported issue <http://gnuradio.org/redmine/issues/520>, where a > hier_block2 will misbehave after calling disconnect_all(). > > Specifically, according to the exceptions seen from Python, it forgets that > it has any inputs or outputs and rejects attempts to connect to them; for > example, "output port 0 out of range for throttle(2)" resulting from > self.connect(throttle, self). > > 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. > > -- > Kevin Reid <http://switchb.org/kpreid/> This is really good information. Johnathan and I will look it over and discuss it. Thanks! -- Tom Visit us at GRCon13 Oct. 1 - 4 http://www.trondeau.com/grcon13 _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio