diff --git a/fuse-native.c b/fuse-native.c index b58aa5c..6ddcfc8 100644 --- a/fuse-native.c +++ b/fuse-native.c @@ -112,8 +112,8 @@ typedef struct { struct fuse *fuse; struct fuse_chan *ch; - char* mnt; - char* mntopts; + char mnt[1024]; + char mntopts[1024]; int mounted; uv_async_t async; @@ -914,8 +914,8 @@ NAPI_METHOD(fuse_native_mount) { uv_mutex_init(&(ft->mut)); uv_sem_init(&(ft->sem), 0); - ft->mnt = mnt; - ft->mntopts = mntopts; + strncpy(ft->mnt, mnt, 1024); + strncpy(ft->mntopts, mntopts, 1024); ft->fuse = fuse; ft->ch = ch; ft->mounted++; diff --git a/index.js b/index.js index e8e2856..7932a39 100644 --- a/index.js +++ b/index.js @@ -250,7 +250,7 @@ class Fuse extends Nanoresource { _close (cb) { const self = this const mnt = JSON.stringify(this.mnt) - const cmd = os.platform() === 'darwin' ? `umount ${mnt}` : `fusermount -q -u ${mnt}` + const cmd = IS_OSX ? `diskutil umount ${mnt}` : `fusermount -q -u ${mnt}` exec(cmd, err => { if (err) return cb(err)