Skip to content

Commit fbb43b8

Browse files
authored
[WebDAV] Fixed MIME types and DisplayName property being determined based on the ciphertext name (#42)
1 parent 0d2396b commit fbb43b8

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

SecureFolderFS.Core.WebDav/EncryptingStorage2/EncryptingDiskStoreCollection.cs

+7-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
using System.IO;
55
using System.Linq;
66
using System.Net;
7-
using System.Text;
87
using System.Threading.Tasks;
98
using NWebDav.Server.Enums;
109
using NWebDav.Server.Http;
@@ -55,7 +54,13 @@ public EncryptingDiskStoreCollection(ILockingManager lockingManager, DirectoryIn
5554
},
5655
new DavDisplayName<EncryptingDiskStoreCollection>
5756
{
58-
Getter = (context, collection) => collection._directoryInfo.Name
57+
Getter = (context, collection) =>
58+
{
59+
return collection._directoryInfo.Name == "content"
60+
// Return the name of the root directory (Name will throw, as the content folder doesn't have a directory id)
61+
? context.Request.Url.Segments[1]
62+
: collection.Name;
63+
}
5964
},
6065
new DavGetLastModified<EncryptingDiskStoreCollection>
6166
{

SecureFolderFS.Core.WebDav/EncryptingStorage2/EncryptingDiskStoreItem.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public EncryptingDiskStoreItem(ILockingManager lockingManager, FileInfo fileInfo
4545
},
4646
new DavDisplayName<EncryptingDiskStoreItem>
4747
{
48-
Getter = (context, item) => item._fileInfo.Name
48+
Getter = (context, item) => item.Name
4949
},
5050
new DavGetContentLength<EncryptingDiskStoreItem>
5151
{
@@ -222,7 +222,7 @@ public override bool Equals(object obj)
222222

223223
private string DetermineContentType()
224224
{
225-
return MimeTypeHelper.GetMimeType(_fileInfo.Name);
225+
return MimeTypeHelper.GetMimeType(Name);
226226
}
227227
}
228228
}

lib/nwebdav

0 commit comments

Comments
 (0)