sillytavern / src /middleware /multerMonkeyPatch.js
Nocigar's picture
Upload 72 files
1307964 verified
raw
history blame contribute delete
833 Bytes
/**
* Decodes a file name from Latin1 to UTF-8.
* @param {string} str Input string
* @returns {string} Decoded file name
*/
function decodeFileName(str) {
return Buffer.from(str, 'latin1').toString('utf-8');
}
/**
* Middleware to decode file names from Latin1 to UTF-8.
* See: https://github.com/expressjs/multer/issues/1104
* @param {import('express').Request} req Request
* @param {import('express').Response} _res Response
* @param {import('express').NextFunction} next Next middleware
*/
function multerMonkeyPatch(req, _res, next) {
try {
if (req.file) {
req.file.originalname = decodeFileName(req.file.originalname);
}
next();
} catch (error) {
console.error('Error in multerMonkeyPatch:', error);
next();
}
}
module.exports = multerMonkeyPatch;