Comparing version 0.11.4 to 0.11.5
@@ -218,3 +218,9 @@ var PullStream = require('../PullStream'); | ||
vars.stream = function(_password) { | ||
return unzip(source, vars.offsetToLocalFileHeader,_password, vars); | ||
var totalSize = 30 | ||
+ 10 // add an extra buffer | ||
+ (vars.extraFieldLength || 0) | ||
+ (vars.fileNameLength || 0) | ||
+ vars.compressedSize; | ||
return unzip(source, vars.offsetToLocalFileHeader,_password, vars, totalSize); | ||
}; | ||
@@ -221,0 +227,0 @@ vars.buffer = function(_password) { |
@@ -11,3 +11,4 @@ var fs = require('graceful-fs'); | ||
var stream = Stream.PassThrough(); | ||
stream.end(buffer.slice(offset, length)); | ||
var end = length ? offset + length : undefined; | ||
stream.end(buffer.slice(offset, end)); | ||
return stream; | ||
@@ -23,4 +24,5 @@ }, | ||
var source = { | ||
stream: function(offset,length) { | ||
return fs.createReadStream(filename,{start: offset, end: length && offset+length}); | ||
stream: function(start,length) { | ||
var end = length ? start + length : undefined; | ||
return fs.createReadStream(filename,{start, end}); | ||
}, | ||
@@ -51,4 +53,5 @@ size: function() { | ||
var options = Object.create(params); | ||
var end = length ? offset + length : ''; | ||
options.headers = Object.create(params.headers); | ||
options.headers.range = 'bytes='+offset+'-' + (length ? length : ''); | ||
options.headers.range = 'bytes='+offset+'-' + end; | ||
return request(options); | ||
@@ -89,3 +92,4 @@ }, | ||
d[key] = params[key]; | ||
d.Range = 'bytes='+offset+'-' + (length ? length : ''); | ||
var end = length ? offset + length : ''; | ||
d.Range = 'bytes='+offset+'-' + end; | ||
return client.getObject(d).createReadStream(); | ||
@@ -92,0 +96,0 @@ } |
@@ -10,7 +10,7 @@ var Promise = require('bluebird'); | ||
module.exports = function unzip(source,offset,_password, directoryVars) { | ||
module.exports = function unzip(source, offset, _password, directoryVars, length) { | ||
var file = PullStream(), | ||
entry = Stream.PassThrough(); | ||
var req = source.stream(offset); | ||
var req = source.stream(offset, length); | ||
req.pipe(file).on('error', function(e) { | ||
@@ -17,0 +17,0 @@ entry.emit('error', e); |
@@ -49,3 +49,3 @@ var Stream = require('stream'); | ||
eof -= packet.length; | ||
done = !eof; | ||
done = done || !eof; | ||
} else { | ||
@@ -52,0 +52,0 @@ var match = self.buffer.indexOf(eof); |
{ | ||
"name": "unzipper", | ||
"version": "0.11.4", | ||
"version": "0.11.5", | ||
"description": "Unzip cross-platform streaming API ", | ||
@@ -5,0 +5,0 @@ "author": "Evan Oxfeld <eoxfeld@gmail.com>", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
53611
1079