aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/ContractionState.cxx10
-rw-r--r--src/Editor.cxx1
2 files changed, 7 insertions, 4 deletions
diff --git a/src/ContractionState.cxx b/src/ContractionState.cxx
index 3d2dde3c6..aadf98ed9 100644
--- a/src/ContractionState.cxx
+++ b/src/ContractionState.cxx
@@ -44,12 +44,14 @@ void ContractionState::MakeValid() const {
}
if (sizeDocLines < linesInDisplay) {
delete []docLines;
- docLines = new int[linesInDisplay + growSize];
- if (docLines) {
- sizeDocLines = linesInDisplay + growSize;
- } else {
+ int *docLinesNew = new int[linesInDisplay + growSize];
+ if (!docLinesNew) {
+ docLines = 0;
+ sizeDocLines = 0;
return;
}
+ docLines = docLinesNew;
+ sizeDocLines = linesInDisplay + growSize;
}
int lineInDisplay=0;
diff --git a/src/Editor.cxx b/src/Editor.cxx
index e8086770e..461460f69 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -3685,6 +3685,7 @@ void Editor::SetDocPointer(Document *document) {
// Reset the contraction state to fully shown.
cs.Clear();
cs.InsertLines(0, pdoc->LinesTotal() - 1);
+ NeedWrapping();
pdoc->AddWatcher(this, 0);
Redraw();