1 |
vapier 12/02/05 05:48:00 |
2 |
|
3 |
Modified: unpacker.eclass |
4 |
Log: |
5 |
avoid emktemp since that needs eutils.eclass, and add quoting to all src/tmpfile usage |
6 |
|
7 |
Revision Changes Path |
8 |
1.2 eclass/unpacker.eclass |
9 |
|
10 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/unpacker.eclass?rev=1.2&view=markup |
11 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/unpacker.eclass?rev=1.2&content-type=text/plain |
12 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/unpacker.eclass?r1=1.1&r2=1.2 |
13 |
|
14 |
Index: unpacker.eclass |
15 |
=================================================================== |
16 |
RCS file: /var/cvsroot/gentoo-x86/eclass/unpacker.eclass,v |
17 |
retrieving revision 1.1 |
18 |
retrieving revision 1.2 |
19 |
diff -u -r1.1 -r1.2 |
20 |
--- unpacker.eclass 5 Feb 2012 04:48:42 -0000 1.1 |
21 |
+++ unpacker.eclass 5 Feb 2012 05:48:00 -0000 1.2 |
22 |
@@ -1,6 +1,6 @@ |
23 |
# Copyright 1999-2012 Gentoo Foundation |
24 |
# Distributed under the terms of the GNU General Public License v2 |
25 |
-# $Header: /var/cvsroot/gentoo-x86/eclass/unpacker.eclass,v 1.1 2012/02/05 04:48:42 vapier Exp $ |
26 |
+# $Header: /var/cvsroot/gentoo-x86/eclass/unpacker.eclass,v 1.2 2012/02/05 05:48:00 vapier Exp $ |
27 |
|
28 |
# @ECLASS: unpacker.eclass |
29 |
# @MAINTAINER: |
30 |
@@ -94,7 +94,7 @@ |
31 |
local tailskip=$(tail -c $((${sizeoff_t}*2)) "${src}" | head -c ${sizeoff_t} | hexdump -e \"%i\") |
32 |
|
33 |
# grab metadata for debug reasons |
34 |
- local metafile=$(emktemp) |
35 |
+ local metafile="${T}/${FUNCNAME}.meta" |
36 |
tail -c +$((${metaskip}+1)) "${src}" > "${metafile}" |
37 |
|
38 |
# rip out the final file name from the metadata |
39 |
@@ -102,14 +102,14 @@ |
40 |
datafile=$(basename "${datafile}") |
41 |
|
42 |
# now lets uncompress/untar the file if need be |
43 |
- local tmpfile=$(emktemp) |
44 |
- tail -c +$((${tailskip}+1)) ${src} 2>/dev/null | head -c 512 > ${tmpfile} |
45 |
+ local tmpfile="${T}/${FUNCNAME}" |
46 |
+ tail -c +$((${tailskip}+1)) ${src} 2>/dev/null | head -c 512 > "${tmpfile}" |
47 |
|
48 |
local iscompressed=$(file -b "${tmpfile}") |
49 |
if [[ ${iscompressed:0:8} == "compress" ]] ; then |
50 |
iscompressed=1 |
51 |
- mv ${tmpfile}{,.Z} |
52 |
- gunzip ${tmpfile} |
53 |
+ mv "${tmpfile}"{,.Z} |
54 |
+ gunzip "${tmpfile}" |
55 |
else |
56 |
iscompressed=0 |
57 |
fi |
58 |
@@ -127,22 +127,22 @@ |
59 |
# > ${datafile} |
60 |
if [ ${iscompressed} -eq 1 ] ; then |
61 |
if [ ${istar} -eq 1 ] ; then |
62 |
- tail -c +$((${tailskip}+1)) ${src} 2>/dev/null \ |
63 |
+ tail -c +$((${tailskip}+1)) "${src}" 2>/dev/null \ |
64 |
| head -c $((${metaskip}-${tailskip})) \ |
65 |
| tar -xzf - |
66 |
else |
67 |
- tail -c +$((${tailskip}+1)) ${src} 2>/dev/null \ |
68 |
+ tail -c +$((${tailskip}+1)) "${src}" 2>/dev/null \ |
69 |
| head -c $((${metaskip}-${tailskip})) \ |
70 |
| gzip -dc \ |
71 |
> ${datafile} |
72 |
fi |
73 |
else |
74 |
if [ ${istar} -eq 1 ] ; then |
75 |
- tail -c +$((${tailskip}+1)) ${src} 2>/dev/null \ |
76 |
+ tail -c +$((${tailskip}+1)) "${src}" 2>/dev/null \ |
77 |
| head -c $((${metaskip}-${tailskip})) \ |
78 |
| tar --no-same-owner -xf - |
79 |
else |
80 |
- tail -c +$((${tailskip}+1)) ${src} 2>/dev/null \ |
81 |
+ tail -c +$((${tailskip}+1)) "${src}" 2>/dev/null \ |
82 |
| head -c $((${metaskip}-${tailskip})) \ |
83 |
> ${datafile} |
84 |
fi |
85 |
@@ -218,7 +218,7 @@ |
86 |
esac |
87 |
|
88 |
# lets grab the first few bytes of the file to figure out what kind of archive it is |
89 |
- local filetype tmpfile=$(emktemp) |
90 |
+ local filetype tmpfile="${T}/${FUNCNAME}" |
91 |
eval ${exe} 2>/dev/null | head -c 512 > "${tmpfile}" |
92 |
filetype=$(file -b "${tmpfile}") || die |
93 |
case ${filetype} in |