diff --git a/lib/torrent.js b/lib/torrent.js index 8f667ffe..24ac18e7 100644 --- a/lib/torrent.js +++ b/lib/torrent.js @@ -26,6 +26,7 @@ const uniq = require('uniq') const utMetadata = require('ut_metadata') const utPex = require('ut_pex') // browser exclude const parseRange = require('parse-numeric-range') +const safeFilename = require('safe-filename') const File = require('./file') const Peer = require('./peer') @@ -447,6 +448,7 @@ class Torrent extends EventEmitter { } this._rarityMap = new RarityMap(this) + this.files.forEach(file => file.path = safeFilename.path(file.path)) this.store = new ImmediateChunkStore( new this._store(this.pieceLength, { diff --git a/package.json b/package.json index 1f452ed6..12c310e2 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ "run-parallel": "^1.1.6", "run-parallel-limit": "^1.0.3", "safe-buffer": "^5.0.1", + "safe-filename": "^1.0.1", "simple-concat": "^1.0.0", "simple-get": "^3.0.1", "simple-peer": "^9.0.0",