diff options
author | qarmin <mikrutrafal54@gmail.com> | 2019-05-30 21:31:05 +0200 |
---|---|---|
committer | qarmin <mikrutrafal54@gmail.com> | 2019-05-30 21:31:05 +0200 |
commit | 392f6f89cd700351784b27993c65cb0a4d1b759b (patch) | |
tree | 8e6725d8f1c4c07a25967722f81a28a6027ebfb1 | |
parent | 8c923fc61740afd560e6c814f7ef19b0cdc30112 (diff) |
Fix memory leak in Text Editor and FileSystem Dock
-rw-r--r-- | editor/code_editor.cpp | 16 | ||||
-rw-r--r-- | editor/filesystem_dock.cpp | 2 |
2 files changed, 10 insertions, 8 deletions
diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp index 695560ca34..33adb33c8c 100644 --- a/editor/code_editor.cpp +++ b/editor/code_editor.cpp @@ -675,14 +675,14 @@ void CodeTextEditor::_line_col_changed() { } } - StringBuilder *sb = memnew(StringBuilder); - sb->append("("); - sb->append(itos(text_editor->cursor_get_line() + 1).lpad(3)); - sb->append(","); - sb->append(itos(positional_column + 1).lpad(3)); - sb->append(")"); - - line_and_col_txt->set_text(sb->as_string()); + StringBuilder sb; + sb.append("("); + sb.append(itos(text_editor->cursor_get_line() + 1).lpad(3)); + sb.append(","); + sb.append(itos(positional_column + 1).lpad(3)); + sb.append(")"); + + line_and_col_txt->set_text(sb.as_string()); } void CodeTextEditor::_text_changed() { diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp index 194a131095..6a4d9fea0c 100644 --- a/editor/filesystem_dock.cpp +++ b/editor/filesystem_dock.cpp @@ -451,9 +451,11 @@ void FileSystemDock::_navigate_to_path(const String &p_path, bool p_select_in_fa } else if (dirAccess->dir_exists(p_path)) { path = target_path + "/"; } else { + memdelete(dirAccess); ERR_EXPLAIN(vformat(TTR("Cannot navigate to '%s' as it has not been found in the file system!"), p_path)); ERR_FAIL(); } + memdelete(dirAccess); } _set_current_path_text(path); |