Package: lv / 4.51-2.2

bts.660358.diff Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Description: support automatic xz and lzma decompression.
Author: "A. N. Other" <a.n.other.debian@gmail.com>
Last-Update: 2012-02-18

--- a/src/stream.c
+++ b/src/stream.c
@@ -43,6 +43,8 @@

 private byte *gz_filter = "zcat";
 private byte *bz2_filter = "bzcat";
+private byte *lzma_filter = "lzcat";
+private byte *xz_filter = "xzcat";

 private stream_t *StreamAlloc()
 {
@@ -75,10 +77,14 @@ public stream_t *StreamOpen( byte *file )
       filter = gz_filter;
     else if( !strcmp( "bz2", exts ) || !strcmp( "BZ2", exts ) )
       filter = bz2_filter;
+    else if ( !strcmp( "lzma", exts ) )
+      filter = lzma_filter;
+    else if ( !strcmp( "xz", exts ) )
+      filter = xz_filter;
   }
   if( NULL != filter ){
     /*
-     * zcat or bzcat
+     * zcat, bzcat etc.
      */
     if( NULL == (st->fp = (FILE *)tmpfile()) )
       perror( "temporary file" ), exit( -1 );