Mercurial > vim
view runtime/plugin/zipPlugin.vim @ 19364:b7abf45d527b v8.2.0240
patch 8.2.0240: using memory after it was freed
Commit: https://github.com/vim/vim/commit/408030e8d053fe1c871b2fc366363a30ed98c889
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Feb 10 22:44:32 2020 +0100
patch 8.2.0240: using memory after it was freed
Problem: Using memory after it was freed. (Dominique Pelle)
Solution: Do not mix converion buffer with other buffer.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 10 Feb 2020 22:45:04 +0100 |
parents | 1a951a4beee3 |
children | 5b7ea82bc18f |
line wrap: on
line source
" zipPlugin.vim: Handles browsing zipfiles " PLUGIN PORTION " Date: Jan 07, 2020 " Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " License: Vim License (see vim's :help license) " Copyright: Copyright (C) 2005-2016 Charles E. Campbell {{{1 " Permission is hereby granted to use and distribute this code, " with or without modifications, provided that this copyright " notice is copied with it. Like anything else that's free, " zipPlugin.vim is provided *as is* and comes with no warranty " of any kind, either expressed or implied. By using this " plugin, you agree that in no event will the copyright " holder be liable for any damages resulting from the use " of this software. " " (James 4:8 WEB) Draw near to God, and he will draw near to you. " Cleanse your hands, you sinners; and purify your hearts, you double-minded. " --------------------------------------------------------------------- " Load Once: {{{1 if &cp || exists("g:loaded_zipPlugin") finish endif let g:loaded_zipPlugin = "v30" let s:keepcpo = &cpo set cpo&vim " --------------------------------------------------------------------- " Options: {{{1 if !exists("g:zipPlugin_ext") let g:zipPlugin_ext='*.apk,*.celzip,*.crtx,*.docm,*.docx,*.dotm,*.dotx,*.ear,*.epub,*.gcsx,*.glox,*.gqsx,*.ja,*.jar,*.kmz,*.odb,*.odc,*.odf,*.odg,*.odi,*.odm,*.odp,*.ods,*.odt,*.otc,*.otf,*.otg,*.oth,*.oti,*.otp,*.ots,*.ott,*.oxt,*.potm,*.potx,*.ppam,*.ppsm,*.ppsx,*.pptm,*.pptx,*.sldx,*.thmx,*.vdw,*.war,*.wsz,*.xap,*.xlam,*.xlam,*.xlsb,*.xlsm,*.xlsx,*.xltm,*.xltx,*.xpi,*.zip' endif " --------------------------------------------------------------------- " Public Interface: {{{1 augroup zip au! au BufReadCmd zipfile:* call zip#Read(expand("<amatch>"), 1) au FileReadCmd zipfile:* call zip#Read(expand("<amatch>"), 0) au BufWriteCmd zipfile:* call zip#Write(expand("<amatch>")) au FileWriteCmd zipfile:* call zip#Write(expand("<amatch>")) if has("unix") au BufReadCmd zipfile:*/* call zip#Read(expand("<amatch>"), 1) au FileReadCmd zipfile:*/* call zip#Read(expand("<amatch>"), 0) au BufWriteCmd zipfile:*/* call zip#Write(expand("<amatch>")) au FileWriteCmd zipfile:*/* call zip#Write(expand("<amatch>")) endif exe "au BufReadCmd ".g:zipPlugin_ext.' call zip#Browse(expand("<amatch>"))' augroup END " --------------------------------------------------------------------- " Restoration And Modelines: {{{1 " vim: fdm=marker let &cpo= s:keepcpo unlet s:keepcpo