Socket
Socket
Sign inDemoInstall

extract-zip

Package Overview
Dependencies
17
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.1.0 to 1.1.1

87

index.js

@@ -58,3 +58,2 @@ var fs = require('fs')

var dest = path.join(opts.dir, entry.fileName)
var destDir = path.dirname(dest)

@@ -83,19 +82,10 @@ // convert external file attr int into a fs stat mode int

if (isDir) {
debug('creating directory', dest)
return mkdirp(dest, function (err) {
if (err) {
debug('mkdirp error', destDir, {error: err})
cancelled = true
return done(err)
}
return done()
})
}
// always ensure folders are created
var destDir = dest
if (!isDir) destDir = path.dirname(dest)
debug('opening read stream', dest)
zipfile.openReadStream(entry, function (err, readStream) {
debug('mkdirp', {dir: destDir})
mkdirp(destDir, function (err) {
if (err) {
debug('openReadStream error', err)
debug('mkdirp error', destDir, {error: err})
cancelled = true

@@ -105,35 +95,46 @@ return done(err)

readStream.on('error', function (err) {
console.log('read err', err)
})
if (isDir) return done()
if (symlink) writeSymlink()
else writeStream()
function writeStream () {
var writeStream = fs.createWriteStream(dest, {mode: procMode})
readStream.pipe(writeStream)
writeStream.on('finish', function () {
done()
})
writeStream.on('error', function (err) {
debug('write error', {error: err})
debug('opening read stream', dest)
zipfile.openReadStream(entry, function (err, readStream) {
if (err) {
debug('openReadStream error', err)
cancelled = true
return done(err)
}
readStream.on('error', function (err) {
console.log('read err', err)
})
}
// AFAICT the content of the symlink file itself is the symlink target filename string
function writeSymlink () {
readStream.pipe(concat(function (data) {
var link = data.toString()
debug('creating symlink', link, dest)
fs.symlink(link, dest, function (err) {
if (err) cancelled = true
done(err)
if (symlink) writeSymlink()
else writeStream()
function writeStream () {
var writeStream = fs.createWriteStream(dest, {mode: procMode})
readStream.pipe(writeStream)
writeStream.on('finish', function () {
done()
})
}))
}
writeStream.on('error', function (err) {
debug('write error', {error: err})
cancelled = true
return done(err)
})
}
// AFAICT the content of the symlink file itself is the symlink target filename string
function writeSymlink () {
readStream.pipe(concat(function (data) {
var link = data.toString()
debug('creating symlink', link, dest)
fs.symlink(link, dest, function (err) {
if (err) cancelled = true
done(err)
})
}))
}
})
})

@@ -140,0 +141,0 @@ }

{
"name": "extract-zip",
"version": "1.1.0",
"version": "1.1.1",
"description": "unzip a zip file into a directory using 100% pure gluten-free organic javascript",

@@ -5,0 +5,0 @@ "main": "index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc