Mercurial > vim
view src/testdir/test_termencoding.vim @ 18201:2ec4ed3f5e12 v8.1.2095
patch 8.1.2095: leaking memory when getting item from dict
Commit: https://github.com/vim/vim/commit/a893194d91a2942d4d54085d746ed137a9251b69
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Sep 28 17:25:10 2019 +0200
patch 8.1.2095: leaking memory when getting item from dict
Problem: Leaking memory when getting item from dict.
Solution: Also free the key when not evaluating.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 28 Sep 2019 17:30:03 +0200 |
parents | ba7727889385 |
children | 08940efa6b4e |
line wrap: on
line source
" Test for setting 'encoding' to something else than the terminal uses, then " setting 'termencoding' to make it work. " This only works with "iconv". if !has('iconv') throw 'Skipped: iconv feature missing' endif source screendump.vim if !CanRunVimInTerminal() throw 'Skipped: cannot make screendumps' endif " This Vim is running with 'encoding' "utf-8", the Vim in the terminal is " running with 'encoding' "euc-jp". We need to make sure the text is in the " right encoding, this is a bit tricky. func Test_termencoding_euc_jp() new call setline(1, 'E89: バッファ %ld の変更は保存されていません (! で変更を破棄)') write ++enc=euc-jp Xeuc_jp.txt quit call writefile([ \ 'set encoding=euc-jp', \ 'set termencoding=utf-8', \ 'scriptencoding utf-8', \ 'exe "normal aE83: バッファを作成できないので、他のを使用します...\<Esc>"', \ 'split Xeuc_jp.txt', \ ], 'XTest_tenc_euc_jp') let buf = RunVimInTerminal('-S XTest_tenc_euc_jp', {'rows': 10}) call VerifyScreenDump(buf, 'Test_tenc_euc_jp_01', {}) " clean up call StopVimInTerminal(buf) call delete('Xeuc_jp.txt') call delete('XTest_tenc_euc_jp') endfunc