130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
|
# File 'lib/file_type.rb', line 130
def
base, ext = @base.extsplit
@tmp = TempPath.new(base.path.basename, ext)
cmd = mk_cmd(@tmp)
data = cmd.run(self.class.runner)
data.waitpid if data.status.nil?
if data.status != 0
@tmp.rmtree if @tmp.exist?
STDERR.puts data.error.read if data.error and data.error.exist?
raise ExtractError, "Cannot extract a file:
| path: #{to_s}
| type: #{self.class}
| command: #{cmd}
| exit status: #{data.status.exitstatus}".head_cut!
end
FileType.guess(@tmp)
end
|