diff --git a/DNN Platform/Library/Services/FileSystem/Providers/StandardFolderProvider.cs b/DNN Platform/Library/Services/FileSystem/Providers/StandardFolderProvider.cs index c6faa391f38..dfe37ffc2d3 100644 --- a/DNN Platform/Library/Services/FileSystem/Providers/StandardFolderProvider.cs +++ b/DNN Platform/Library/Services/FileSystem/Providers/StandardFolderProvider.cs @@ -199,7 +199,9 @@ public override string GetFileUrl(IFileInfo file) // Does site management want the cachebuster parameter? if (portalSettings.AddCachebusterToResourceUris) { - var cachebusterToken = UrlUtils.EncryptParameter(file.LastModificationTime.GetHashCode().ToString()); + var cachebusterToken = UrlUtils.EncryptParameter( + file.LastModificationTime.GetHashCode().ToString(), + portalSettings.GUID.ToString()); return TestableGlobals.Instance.ResolveUrl(fullPath + "?ver=" + cachebusterToken); } diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Core/Providers/Folder/StandardFolderProviderTests.cs b/DNN Platform/Tests/DotNetNuke.Tests.Core/Providers/Folder/StandardFolderProviderTests.cs index c04b675e36e..af9a92438f9 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Core/Providers/Folder/StandardFolderProviderTests.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Core/Providers/Folder/StandardFolderProviderTests.cs @@ -603,6 +603,36 @@ public void GetSubFolders_Returns_Valid_SubFolders_When_Folder_Is_Not_Empty() #region GetFilesUrl + [Test] + public void GetFileUrl_WhenCurrentPortalSettingsReturnsNull_DontThrow() + { + // arrange + var sfp = new Mock + { + CallBase = true + }; + + sfp.Setup(x => x.GetPortalSettings(Constants.CONTENT_ValidPortalId)) + .Returns(GetPortalSettingsMock()); + + _fileInfo.Setup(x => x.FileName) + .Returns(Constants.FOLDER_ValidFileName); + + _fileInfo.Setup(x => x.PortalId) + .Returns(Constants.CONTENT_ValidPortalId); + + _portalControllerMock.Setup(x => x.GetCurrentPortalSettings()) + .Returns(null); + + // act + string fileUrl = null; + TestDelegate action = () => fileUrl = sfp.Object.GetFileUrl(_fileInfo.Object); + + // assert + Assert.DoesNotThrow(action); + Assert.IsNotNull(fileUrl); + } + [Test] [TestCase("(")] [TestCase(")")]