Control: tags 756417 + pending Dear maintainer,
since deBPlugin is no longer able to handle control.tar members modern debs, I've prepared an NMU for vim-scripts (versioned as 20130814+nmu1) and uploaded it to DELAYED/7. Please feel free to tell me if I should delay it longer. Cheers -- Sebastian Ramacher
diff -Nru vim-scripts-20130814/debian/changelog vim-scripts-20130814+nmu1/debian/changelog --- vim-scripts-20130814/debian/changelog 2013-08-15 05:58:11.000000000 +0200 +++ vim-scripts-20130814+nmu1/debian/changelog 2018-08-04 18:03:04.000000000 +0200 @@ -1,3 +1,11 @@ +vim-scripts (20130814+nmu1) unstable; urgency=medium + + * Non-maintainer upload. + * debPlugin: Add support for compressed control members. Thanks to Guillem + Jover. (Closes: #756417) + + -- Sebastian Ramacher <sramac...@debian.org> Sat, 04 Aug 2018 18:03:04 +0200 + vim-scripts (20130814) unstable; urgency=low * Updated addons: diff -Nru vim-scripts-20130814/debian/patches/deb.vim-xz.diff vim-scripts-20130814+nmu1/debian/patches/deb.vim-xz.diff --- vim-scripts-20130814/debian/patches/deb.vim-xz.diff 2013-08-15 05:58:11.000000000 +0200 +++ vim-scripts-20130814+nmu1/debian/patches/deb.vim-xz.diff 2018-08-04 18:01:07.000000000 +0200 @@ -2,24 +2,98 @@ Author: Jakub Wilk <jw...@debian.org> Bug-Debian: http://bugs.debian.org/644172 -diff --git a/autoload/deb.vim b/autoload/deb.vim +--- + autoload/deb.vim | 41 +++++++++++++++++++++++++++++++++++------ + 1 file changed, 35 insertions(+), 6 deletions(-) + --- a/autoload/deb.vim +++ b/autoload/deb.vim -@@ -32,6 +32,8 @@ +@@ -26,12 +26,14 @@ + + let l:archmember = s:dataFileName(a:debfile) " default archive member to extract + if l:archmember == "" +- echohl WarningMsg | echo "***error*** (deb#read) no valid data file found in debian archive" ++ echohl WarningMsg | echo "***error*** (deb#read) no valid data member found in debian archive" + return + elseif l:archmember == "data.tar.gz" let l:unpcmp = "tar zxfO " elseif l:archmember == "data.tar.bz2" let l:unpcmp = "tar jxfO " + elseif l:archmember == "data.tar.xz" -+ let l:unpcmp = "tar JxfO " ++ let l:unpcmp = "tar JxfO " elseif l:archmember == "data.tar.lzma" if !s:hascmd("lzma") return -@@ -230,7 +232,7 @@ +@@ -42,9 +44,18 @@ + endif + + if a:member =~ '^\* ' " information control file +- let l:archmember = "control.tar.gz" + let l:target = substitute(l:target, "^\* ", "", "") +- let l:unpcmp = "tar zxfO " ++ let l:archmember = s:controlFileName(a:debfile) ++ if l:archmember == "" ++ echohl WarningMsg | echo "***error*** (deb#read) no valid control member found in debian archive" ++ return ++ elseif l:archmember == "control.tar.gz" ++ let l:unpcmp = "tar zxfO " ++ elseif l:archmember == "control.tar.xz" ++ let l:unpcmp = "tar JxfO " ++ elseif l:archmember == "control.tar" ++ let l:unpcmp = "tar xfO " ++ endif + elseif a:member =~ ' -> ' " symbolic link + let l:target = split(a:member,' -> ')[0] + let l:linkname = split(a:member,' -> ')[1] +@@ -151,7 +162,19 @@ + + " display information control files + let l:infopos = line(".") +- exe "silent read! ar p " . s:QuoteFile(a:file) . " control.tar.gz | tar zt" ++ let l:ctrlmember = s:controlFileName(a:file) ++ if l:ctrlmember == "" ++ echohl WarningMsg | echo "***error*** (deb#Browser) no valid control member found in debian archive" ++ return ++ elseif l:ctrlmember == "control.tar.gz" ++ let l:unpcmp = "tar zt " ++ elseif l:ctrlmember == "control.tar.xz" ++ let l:unpcmp = "tar Jt " ++ elseif l:ctrlmember == "control.tar" ++ let l:unpcmp = "tar t " ++ endif ++ ++ exe "silent read! ar p " . s:QuoteFile(a:file) . " " . l:ctrlmember . " | " . l:unpcmp + + $put='' + +@@ -227,16 +250,28 @@ + + endfun + ++" return control file name for debian package. This can be either control.tar, ++" control.tar.gz or control.tar.xz ++fun s:controlFileName(deb) ++ return s:findFileName(a:deb, ["control.tar.gz", "control.tar.xz", "control.tar"]) ++endfun ++ " return data file name for debian package. This can be either data.tar.gz, " data.tar.bz2 or data.tar.lzma fun s:dataFileName(deb) - for fn in ["data.tar.gz", "data.tar.bz2", "data.tar.lzma", "data.tar"] -+ for fn in ["data.tar.gz", "data.tar.bz2", "data.tar.lzma", "data.tar.xz", "data.tar"] ++ return s:findFileName(a:deb, ["data.tar.gz", "data.tar.bz2", "data.tar.lzma", "data.tar.xz", "data.tar"]) ++endfun ++ ++" return a file name for debian package. This will be the first match from ++" the files passed as arguments. ++fun s:findFileName(deb, list) ++ for fn in a:list " [0:-2] is to remove trailing null character from command output if (system("ar t " . "'" . a:deb . "'" . " " . fn))[0:-2] == fn return fn + endif + endfor +- return "" " no debian data format in this archive ++ return "" " cannot find file in this debian archive + endfun + + fun s:QuoteFile(file)
signature.asc
Description: PGP signature