1
0
Fork 0
mirror of https://github.com/immich-app/immich.git synced 2025-01-01 08:31:59 +00:00

fix(server): normalize external path (#4239)

* fix: use normalized external path

* fix: move normalization to user core
This commit is contained in:
Jonathan Jogenfors 2023-10-06 22:47:38 +02:00 committed by GitHub
parent 35fa6397ea
commit 4dffae3f39
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 1 deletions

View file

@ -155,7 +155,7 @@ export class LibraryService {
return false;
}
if (!path.normalize(assetPath).match(new RegExp(`^${user.externalPath}`))) {
if (!path.normalize(assetPath).match(new RegExp(`^${path.normalize(user.externalPath)}`))) {
this.logger.error("Asset must be within the user's external path");
return false;
}

View file

@ -8,6 +8,7 @@ import {
} from '@nestjs/common';
import { ReadStream, constants, createReadStream } from 'fs';
import fs from 'fs/promises';
import path from 'path';
import sanitize from 'sanitize-filename';
import { AuthUserDto } from '../auth';
import { ICryptoRepository } from '../crypto';
@ -63,6 +64,8 @@ export class UserCore {
if (dto.externalPath === '') {
dto.externalPath = null;
} else if (dto.externalPath) {
dto.externalPath = path.normalize(dto.externalPath);
}
return this.userRepository.update(id, dto);