Mercurial > vim
view runtime/plugin/tarPlugin.vim @ 31980:13329cb9faee v9.0.1322
patch 9.0.1322: crash when indexing "any" which is an object
Commit: https://github.com/vim/vim/commit/2c1c803c7e0cc356dd55a2cd49fbffbbf7db766e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Feb 18 18:38:37 2023 +0000
patch 9.0.1322: crash when indexing "any" which is an object
Problem: Crash when indexing "any" which is an object.
Solution: Check the index is a number. Do not check the member type of an
object. (closes #12019)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 18 Feb 2023 19:45:07 +0100 |
parents | 29c5f168c6fd |
children | e003aedbf9e1 |
line wrap: on
line source
" tarPlugin.vim -- a Vim plugin for browsing tarfiles " Original was copyright (c) 2002, Michael C. Toren <mct@toren.net> " Modified by Charles E. Campbell " Distributed under the GNU General Public License. " " Updates are available from <http://michael.toren.net/code/>. If you " find this script useful, or have suggestions for improvements, please " let me know. " Also look there for further comments and documentation. " " This part only sets the autocommands. The functions are in autoload/tar.vim. " --------------------------------------------------------------------- " Load Once: {{{1 if &cp || exists("g:loaded_tarPlugin") finish endif let g:loaded_tarPlugin = "v32" let s:keepcpo = &cpo set cpo&vim " --------------------------------------------------------------------- " Public Interface: {{{1 augroup tar au! au BufReadCmd tarfile::* call tar#Read(expand("<amatch>"), 1) au FileReadCmd tarfile::* call tar#Read(expand("<amatch>"), 0) au BufWriteCmd tarfile::* call tar#Write(expand("<amatch>")) au FileWriteCmd tarfile::* call tar#Write(expand("<amatch>")) if has("unix") au BufReadCmd tarfile::*/* call tar#Read(expand("<amatch>"), 1) au FileReadCmd tarfile::*/* call tar#Read(expand("<amatch>"), 0) au BufWriteCmd tarfile::*/* call tar#Write(expand("<amatch>")) au FileWriteCmd tarfile::*/* call tar#Write(expand("<amatch>")) endif au BufReadCmd *.tar.gz call tar#Browse(expand("<amatch>")) au BufReadCmd *.tar call tar#Browse(expand("<amatch>")) au BufReadCmd *.lrp call tar#Browse(expand("<amatch>")) au BufReadCmd *.tar.bz2 call tar#Browse(expand("<amatch>")) au BufReadCmd *.tar.Z call tar#Browse(expand("<amatch>")) au BufReadCmd *.tbz call tar#Browse(expand("<amatch>")) au BufReadCmd *.tgz call tar#Browse(expand("<amatch>")) au BufReadCmd *.tar.lzma call tar#Browse(expand("<amatch>")) au BufReadCmd *.tar.xz call tar#Browse(expand("<amatch>")) au BufReadCmd *.txz call tar#Browse(expand("<amatch>")) au BufReadCmd *.tar.zst call tar#Browse(expand("<amatch>")) au BufReadCmd *.tzs call tar#Browse(expand("<amatch>")) augroup END com! -nargs=? -complete=file Vimuntar call tar#Vimuntar(<q-args>) " --------------------------------------------------------------------- " Restoration And Modelines: {{{1 " vim: fdm=marker let &cpo= s:keepcpo unlet s:keepcpo