????

Your IP : 216.73.216.121


Current Path : /usr/lib/node_modules/node-gyp/node_modules/tar/lib/
Upload File :
Current File : //usr/lib/node_modules/node-gyp/node_modules/tar/lib/.mkdir.js.swp

b0VIM 8.0aJ�\nV� �isaacstau.local~isaacs/dev/js/tar/lib/mkdir.jsutf-8
3210#"! Utp�H�ad;�����`_>%����q\A=<,
�
�
�
�
p
l
k
[
E
A
?
>

���vML6 ����z^D.-�
�
�
�
�
|
b
B
7
*
$
 

�	�	�	�	�	�	M	>	7	6	&			��~|{2���k���K����pY9'
���:/ �����r?������Z;:    typeof gid === 'number' &&  const doChown = typeof uid === 'number' &&  const gid = opt.gid  const uid = opt.uid  const needChmod = (mode & umask) !== 0  const mode = opt.mode | 0o0700  const umask = opt.umask  // then we'll need an explicit chmod  // if there's any overlap between mask and mode,const mkdirSync = module.exports.sync = (dir, opt) => {}  }    mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)    created = created || part  } else {    })        cb(er)      else        return cb(new SymlinkError(part, part + '/' + parts.join('/')))      else if (st.isSymbolicLink())        })          fs.mkdir(part, mode, onmkdir(part, parts, mode, cache, unlink, cwd, created, cb))            return cb(er)          if (er)        fs.unlink(part, er => {      else if (unlink)        mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)      else if (st.isDirectory())        cb(statEr)      if (statEr)    fs.lstat(part, (statEr, st) => {      return cb(new CwdError(cwd, er.code))        (er.code === 'ENOTDIR' || er.code === 'ENOENT'))    if (er.path && path.dirname(er.path) === cwd &&  if (er) {const onmkdir = (part, parts, mode, cache, unlink, cwd, created, cb) => er => {}  fs.mkdir(part, mode, onmkdir(part, parts, mode, cache, unlink, cwd, created, cb))    return mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)  if (cache.get(part))  const part = base + '/' + p  const p = parts.shift()    return cb(null, created)  if (!parts.length)const mkdir_ = (base, parts, mode, cache, unlink, cwd, created, cb) => {}  mkdir_(cwd, parts, mode, cache, unlink, cwd, null, done)  const parts = sub.split(/\/|\\/)  const sub = path.relative(cwd, dir)    return mkdirp(dir, mode, done)  if (preserve)    })      done(er)        er = new CwdError(dir, er && er.code || 'ENOTDIR')      if (er || !st.isDirectory())    return fs.stat(dir, (er, st) => {  if (dir === cwd)    return done()  if (cache && cache.get(dir) === true)  }    }        cb()      else        fs.chmod(dir, mode, cb)      else if (needChmod)        chownr(created, uid, gid, er => done(er))      if (created && doChown)      cache.set(dir, true)    else {      cb(er)    if (er)  const done = (er, created) => {  const cwd = opt.cwd  const cache = opt.cache  const unlink = opt.unlink  const preserve = opt.preserve    ( uid !== opt.processUid || gid !== opt.processGid )    typeof gid === 'number' &&  const doChown = typeof uid === 'number' &&  const gid = opt.gid  const uid = opt.uid  const needChmod = (mode & umask) !== 0  const mode = opt.mode | 0o0700  const umask = opt.umask  // then we'll need an explicit chmod  // if there's any overlap between mask and mode,const mkdir = module.exports = (dir, opt, cb) => {}  }    return 'CwdError'  get name () {  }    this.code = code    this.path = path    super(code + ': Cannot cd into \'' + path + '\'')  constructor (path, code) {class CwdError extends Error {}  }    return 'SylinkError'  get name () {  }    this.symlink = symlink    this.path = path    super('Cannot extract through symbolic link')  constructor (symlink, path) {class SymlinkError extends Error {const chownr = require('chownr')const path = require('path')const fs = require('fs')const mkdirp = require('mkdirp')// passing around state in a gazillion args.// TODO: This should probably be a class, not functionally// wrapper around mkdirp for tar's needs.'use strict'adO�	H����pZY;"������qp[H/%�
�
�
�
�
�
�
}
r
n
m
]
5
4

����qpWHG=����^43�
�
�
�
�
j
H
*

�	�	�	�	�	�	�	�	}}  return done(created)  }    }        return new SymlinkError(part, part + '/' + parts.join('/'))      } else if (st.isSymbolicLink())        continue        cache.set(part, true)        created = created || part        fs.mkdirSync(part, mode)        fs.unlinkSync(part)      } else if (unlink) {        continue        cache.set(part, true)      if (st.isDirectory()) {      const st = fs.lstatSync(part)        return new CwdError(cwd, er.code)          (er.code === 'ENOTDIR' || er.code === 'ENOENT'))      if (er.path && path.dirname(er.path) === cwd &&    } catch (er) {      cache.set(part, true)      created = created || part      fs.mkdirSync(part, mode)    try {      continue    if (cache.get(part))       p = parts.shift()) {       p && (part += '/' + p);  for (let p = parts.shift(), part = cwd;  let created = null  const parts = sub.split(/\/|\\/)  const sub = path.relative(cwd, dir)    return done(mkdirp.sync(dir, mode))  if (preserve)  }    return    done()    }        throw new CwdError(dir, code)      if (!ok)    } finally {      code = er.code    } catch (er) {      ok = fs.statSync(dir).isDirectory()    try {    let code = 'ENOTDIR'    let ok = false  if (dir === cwd) {    return done()  if (cache && cache.get(dir) === true)  }      fs.chmodSync(dir, mode)    if (needChmod)      chownr.sync(created, uid, gid)    if (created && doChown)    cache.set(dir, true)  const done = (created) => {  const cwd = opt.cwd  const cache = opt.cache  const unlink = opt.unlink  const preserve = opt.preserve    ( uid !== opt.processUid || gid !== opt.processGid )