diff --git a/src/core/PieceTable.cc b/src/core/PieceTable.cc index d937fd4..6694d74 100644 --- a/src/core/PieceTable.cc +++ b/src/core/PieceTable.cc @@ -42,6 +42,7 @@ std::shared_ptr PieceTable::add_cursor() { auto cursor = std::make_shared(); + cursor->piece_table = this; cursor->piece = start_piece->next; cursor->line_number = 0u; cursor->offset = 0u; diff --git a/src/core/PieceTable.h b/src/core/PieceTable.h index fd83802..5782c45 100644 --- a/src/core/PieceTable.h +++ b/src/core/PieceTable.h @@ -49,6 +49,9 @@ public: struct Cursor { + /** The piece table the cursor belongs to. */ + PieceTable * piece_table; + /** The piece. */ Piece * piece;