document/array::view.begin() != .end() for empty documents

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Done
    • Priority: Major - P3
    • 3.0.0-rc0
    • Affects Version/s: 0.2.0
    • Component/s: BSON
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      For empty documents, a la

      auto value = builder::stream::array{} << finalize;
      auto view = value.view();
      // view().begin() != view().end();
      

      This is because we don't check the return value of bson_iter_next() when we first initialize the iterator, so users can end up with invalid iterators.

      We should check the return value

              Assignee:
              Mira Carey
              Reporter:
              Mira Carey
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: