diff options
author | Martin Braun <martin.braun@kit.edu> | 2013-05-12 14:16:56 +0200 |
---|---|---|
committer | Martin Braun <martin.braun@kit.edu> | 2013-05-12 14:18:15 +0200 |
commit | cce6a69305cc475e8a37ba60ac1bc91659fa7f05 (patch) | |
tree | 4a4bf432ad8e176cd54b36a289fad680c6b92965 /gr-digital/lib/header_payload_demux_impl.cc | |
parent | 9851f2377d099ffe72312375e7f761f66b664aa6 (diff) | |
parent | 7be24afbf8857a5e827fb536a80d7a83e7b6aa31 (diff) |
Merge branch 'master-ofdm', fixed conflicts
Diffstat (limited to 'gr-digital/lib/header_payload_demux_impl.cc')
-rw-r--r-- | gr-digital/lib/header_payload_demux_impl.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gr-digital/lib/header_payload_demux_impl.cc b/gr-digital/lib/header_payload_demux_impl.cc index a2e81c5b8e..515ff6f5e4 100644 --- a/gr-digital/lib/header_payload_demux_impl.cc +++ b/gr-digital/lib/header_payload_demux_impl.cc @@ -123,7 +123,8 @@ namespace gr { int produced_hdr = 0; int produced_payload = 0; - while (nread < noutput_items && !exit_loop) { + // FIXME ninput_items[1] does not have to be defined O_o + while (nread < noutput_items && nread < ninput_items[0] && nread < ninput_items[1] && !exit_loop) { switch (d_state) { case STATE_IDLE: // 1) Search for a trigger signal on input 1 (if present) @@ -154,6 +155,7 @@ namespace gr { // 4) fall through to next state d_remaining_symbols = -1; if (!parse_header_data_msg()) { + d_state = STATE_IDLE; exit_loop = true; break; } @@ -241,6 +243,8 @@ namespace gr { } } else if (pmt::is_null(msg)) { // Blocking call was interrupted return false; + } else if (msg == pmt::PMT_F) { // Header was invalid + return false; } else { throw std::runtime_error("Received illegal header data"); } |