aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/IO/ManagedFileSystem.cs
AgeCommit message (Collapse)Author
2023-10-12Merge branch 'master' into fix-resharper-warningsStepan Goremykin
# Conflicts: # Emby.Server.Implementations/Net/SocketFactory.cs # RSSDP/SsdpCommunicationsServer.cs # RSSDP/SsdpDeviceLocator.cs # RSSDP/SsdpDevicePublisher.cs
2023-10-08Reduce string literal length by using verbatim stringStepan Goremykin
2023-10-06Reduce string allocationsBond_009
Some simple changes to reduce the number of allocated strings
2023-10-03Use DI for IFileSystemPatrick Barron
2023-09-13Minor LibraryMonitor improvementsBond_009
* Enable nullable * Add a fast return to ReportFileSystemChanged when path should be ignored * Use Span overloads of Path.* functions where possible * IFileSystem: remove NormalizePath as Path.TrimEndingDirectorySeparator already checks if it's a root path
2023-07-01Align indentation on bottom brace of new listRonan Charles-Lorel
Should stop error SA1137 in debug build
2023-07-01Formatting Ronan Charles-Lorel
Fixes debug build? Co-authored-by: Bond-009 <bond.009@outlook.com>
2023-06-29Moving invalid chars list at class level with a better nameRonan Charles-Lorel
2023-06-29Remove call to Path.GetInvalidFileNameCharsRonan Charles-Lorel
Superseded by a static char list to avoid platform-dependent issues
2023-06-29Merge branch 'jellyfin:master' into masterRonan Charles-Lorel
2023-05-10Remove ExtendedFileSystemInfo (#9749)Bond-009
2023-01-31FormattingRonan Charles-Lorel
2023-01-31Add a way to add more invalid characters when sanitizing a filenameRonan Charles-Lorel
2022-12-07Use ArgumentException.ThrowIfNullOrEmptyBond_009
2022-12-05Replace != null with is not nullBond_009
2022-05-20Merge pull request #7724 from jtcasper/permsJoshua M. Boniface
(cherry picked from commit 884a59da07420708774eed25286950b14153c3dd) Signed-off-by: Joshua Boniface <joshua@boniface.me>
2022-03-02Split DirectoryExists and FileExistsCody Robibero
2022-02-28Use IFileSystemCody Robibero
2022-02-14Fix some warningsBond_009
2021-12-27More cleanupBond_009
2021-11-07Add some docs and testsBond_009
2021-11-07Fix UnauthorizedAccessException in GetDrivesBond_009
``` [15:01:24] [ERR] [55] Jellyfin.Server.Middleware.ExceptionMiddleware: Error processing request. URL GET /Environment/Drives. System.UnauthorizedAccessException: Access to the path is denied. ---> System.IO.IOException: Operation not permitted --- End of inner exception stack trace --- at System.IO.DriveInfo.CheckStatfsResultAndThrowIfNecessary(Int32 result) at System.IO.DriveInfo.get_TotalSize() at Emby.Server.Implementations.IO.ManagedFileSystem.<>c.<GetDrives>b__32_0(DriveInfo d) in /home/bond/dev/jellyfin/Emby.Server.Implementations/IO/ManagedFileSystem.cs:line 583 at System.Linq.Enumerable.WhereSelectArrayIterator`2.ToList() at Emby.Server.Implementations.IO.ManagedFileSystem.GetDrives() in /home/bond/dev/jellyfin/Emby.Server.Implementations/IO/ManagedFileSystem.cs:line 583 at Jellyfin.Api.Controllers.EnvironmentController.GetDrives() in /home/bond/dev/jellyfin/Jellyfin.Api/Controllers/EnvironmentController.cs:line 153 at lambda_method559(Closure , Object , Object[] ) at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync() at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync() ```
2021-10-03Fix warnings in IOPatrick Barron
2021-09-25Use RandomAccess instead of a FileStream where it makes senseBond_009
2021-09-06Remove all unused usingsFernando Fernández
2021-09-06Merge pull request #6177 from Bond-009/asyncClaus Vium
Use async FileStreams where it makes sense
2021-09-03Fix some warningsBond_009
2021-09-02Use async FileStreams where it makes senseBond_009
2021-07-12Improve platform checksBond_009
2021-06-19Move non-jellyfin extensions to separate projectBond_009
2021-05-24Remove some unnecessary allocationscvium
2021-05-20Enable nullable reference types for Emby.Server.ImplementationsBond_009
2021-05-01Fix scanningBond_009
2021-04-22Improve fast path of ManagedFileSystem.GetValidFilenameBond_009
| Method | Data | Mean | Error | StdDev | Median | Gen 0 | Gen 1 | Gen 2 | Allocated | |---------------------------- |-------------- |------------:|----------:|----------:|------------:|-------:|------:|------:|----------:| | GetValidFilenameBench | AC/DCKD/A | 52.29 ns | 0.537 ns | 0.448 ns | 52.35 ns | 0.0255 | - | - | 80 B | | GetValidFilenameOldBench | AC/DCKD/A | 86.68 ns | 1.205 ns | 1.127 ns | 86.33 ns | 0.0587 | - | - | 184 B | | GetValidFilenameWinBench | AC/DCKD/A | 448.55 ns | 1.228 ns | 1.088 ns | 448.33 ns | 0.0505 | - | - | 160 B | | GetValidFilenameOldWinBench | AC/DCKD/A | 865.21 ns | 5.734 ns | 5.083 ns | 866.60 ns | 0.0839 | - | - | 264 B | | GetValidFilenameBench | ValidFileName | 16.00 ns | 0.234 ns | 0.207 ns | 16.02 ns | 0.0102 | - | - | 32 B | | GetValidFilenameOldBench | ValidFileName | 100.66 ns | 1.255 ns | 1.174 ns | 101.21 ns | 0.0587 | - | - | 184 B | | GetValidFilenameWinBench | ValidFileName | 116.60 ns | 1.624 ns | 1.519 ns | 116.88 ns | 0.0356 | - | - | 112 B | | GetValidFilenameOldWinBench | ValidFileName | 1,052.66 ns | 18.077 ns | 33.056 ns | 1,037.25 ns | 0.0839 | - | - | 264 B |
2021-04-22ManagedFileSystem: Rewrite GetValidFilename and more improvementsBond_009
2021-04-10Update Emby.Server.Implementations/IO/ManagedFileSystem.csClaus Vium
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-04-09don't die on dangling symlinkscvium
2021-04-01Remove ManagedFileSystem.IsRootPathBond_009
`Path.IsPathRooted` should be used instead
2021-02-02Don't skip hidden filescrobibero
2020-12-31Ignore inaccessible files during library scansGary Wilber
2020-08-31Fix some warningsBond_009
2020-07-18FullName property instead of ToString in ↵Ken
Emby.Server.Implementations/IO/ManagedFileSystem.cs Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-07-18Spacing standard on Emby.Server.Implementations/IO/ManagedFileSystem.csKen
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-07-18Merge 'master' updates into 2354-soft-link-sizesKen Brazier
2020-06-16fix SA1513/SA1516telans
2020-06-15fix SA1005telans
2020-06-05Use typed logger where possiblecrobibero
2020-05-312354 open soft-links to read sizeKen Brazier
2020-03-24Remove unused usingsBond_009
2020-02-23Fix some warningsBond_009
* Add analyzers to MediaBrowser.XbmcMetadata * Enable TreatWarningsAsErrors for MediaBrowser.XbmcMetadata * Add analyzers to MediaBrowser.WebDashboard * Enable TreatWarningsAsErrors for MediaBrowser.WebDashboard * Disable SA1600 in favor of CS1591