diff options
author | 2012-08-26 14:21:22 -0400 | |
---|---|---|
committer | 2012-08-26 14:21:22 -0400 | |
commit | 522bc6a1ae26a4e1e6618c5b75e94ec529ded7d0 (patch) | |
tree | 36318254f55342b6e6e0d28b35e7add4a9aff52d /src | |
parent | a39e23f71acb71b41e6a2733b0469eaccba9c10b (diff) | |
download | textadept-522bc6a1ae26a4e1e6618c5b75e94ec529ded7d0.tar.gz textadept-522bc6a1ae26a4e1e6618c5b75e94ec529ded7d0.zip |
Fixed some ncurses memory leaks; src/textadept.c
Diffstat (limited to 'src')
-rw-r--r-- | src/textadept.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/textadept.c b/src/textadept.c index 7182a518..c5564dc5 100644 --- a/src/textadept.c +++ b/src/textadept.c @@ -2341,6 +2341,19 @@ int main(int argc, char **argv) { key.modifiers & TERMKEY_KEYMOD_ALT); if (quit && lL_event(lua, "quit", -1)) { l_close(lua); + // Free some memory. + free(flabel), free(rlabel); + if (find_text) free(find_text); + if (repl_text) free(repl_text); + for (int i = 0; i < 4; i++) free(button_labels[i]); + free(match_case ? option_labels[0] : option_labels[0] - 4); + free(whole_word ? option_labels[1] : option_labels[1] - 4); + free(lua_pattern ? option_labels[2] : option_labels[2] - 4); + free(in_files ? option_labels[3] : option_labels[3] - 4); + for (int i = 0; i < 10; i++) { + if (find_store[i]) free(find_store[i]); + if (repl_store[i]) free(repl_store[i]); + } break; } else quit = FALSE; scintilla_refresh(focused_view); |