Mercurial > vim
view src/dehqx.py @ 22856:3b476f974406 v8.2.1975
patch 8.2.1975: Win32: memory leak when encoding conversion fails
Commit: https://github.com/vim/vim/commit/bbf9f344afd08954163191ed678352fb554fc254
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Nov 10 22:03:40 2020 +0100
patch 8.2.1975: Win32: memory leak when encoding conversion fails
Problem: Win32: memory leak when encoding conversion fails.
Solution: Free the allocated memory. (Ken Takata, closes https://github.com/vim/vim/issues/7277)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 10 Nov 2020 22:15:03 +0100 |
parents | 54756c29118c |
children |
line wrap: on
line source
# Python script to get both the data and resource fork from a BinHex encoded # file. # Author: MURAOKA Taro <koron.kaoriya@gmail.com> # Last Change: 2018 Mar 27 # # Copyright (C) 2003,12 MURAOKA Taro <koron.kaoriya@gmail.com> # THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE. import sys import binhex input = sys.argv[1] conv = binhex.HexBin(input) info = conv.FInfo out = conv.FName out_data = out out_rsrc = out + '.rsrcfork' # This uses the print statement on Python 2, print function on Python 3. #print('out_rsrc=' + out_rsrc) print('In file: ' + input) outfile = open(out_data, 'wb') print(' Out data fork: ' + out_data) while 1: d = conv.read(128000) if not d: break outfile.write(d) outfile.close() conv.close_data() d = conv.read_rsrc(128000) if d: print(' Out rsrc fork: ' + out_rsrc) outfile = open(out_rsrc, 'wb') outfile.write(d) while 1: d = conv.read_rsrc(128000) if not d: break outfile.write(d) outfile.close() conv.close() # vim:set ts=8 sts=4 sw=4 et: