Mercurial > vim
view src/dehqx.py @ 17653:cc68aca87c17 v8.1.1824
patch 8.1.1824: crash when correctly spelled word is very long
commit https://github.com/vim/vim/commit/5bcc5a1ff94bbab1b175e35a72e3df974106b393
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Aug 6 22:48:02 2019 +0200
patch 8.1.1824: crash when correctly spelled word is very long
Problem: Crash when correctly spelled word is very long. (Ben Kraft)
Solution: Check word length before copying. (closes https://github.com/vim/vim/issues/4778)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 06 Aug 2019 23:00:05 +0200 |
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: