diff --git a/libcorpus2/io/reader.cpp b/libcorpus2/io/reader.cpp index 7a636a30828d12a323ec7cdaf3230f03fab96603..4dbfc106a36f0a51c8035e18f9b1e117e9c3519e 100644 --- a/libcorpus2/io/reader.cpp +++ b/libcorpus2/io/reader.cpp @@ -54,6 +54,8 @@ Token* BufferedChunkReader::get_next_token() if (s != NULL) { std::copy(s->tokens().begin(), s->tokens().end(), std::back_inserter(token_buf_)); + s->tokens().clear(); + delete s; } else { more = false; } @@ -76,6 +78,8 @@ Sentence* BufferedChunkReader::get_next_sentence() if (c != NULL) { std::copy(c->sentences().begin(), c->sentences().end(), std::back_inserter(sentence_buf_)); + c->sentences().clear(); + delete c; } else { more = false; }