diff --git a/Framework/ICat/src/CatalogDownloadDataFiles.cpp b/Framework/ICat/src/CatalogDownloadDataFiles.cpp
index 8f3c16b4e538283068e4f704057dd49aad1affd9..a24e8f0d47b96b069f068ce465464915197e6496 100644
--- a/Framework/ICat/src/CatalogDownloadDataFiles.cpp
+++ b/Framework/ICat/src/CatalogDownloadDataFiles.cpp
@@ -164,8 +164,8 @@ std::string CatalogDownloadDataFiles::doDownloadandSavetoLocalDrive(
         nullptr, certificateHandler, context);
 
     // Session takes ownership of socket
-    auto socket = Kernel::make_unique<Poco::Net::SecureStreamSocket>(context);
-    Poco::Net::HTTPSClientSession session(*socket);
+    Poco::Net::SecureStreamSocket socket{context};
+    Poco::Net::HTTPSClientSession session{socket};
     session.setHost(uri.getHost());
     session.setPort(uri.getPort());
 
@@ -213,12 +213,6 @@ std::string CatalogDownloadDataFiles::doDownloadandSavetoLocalDrive(
   // I have opted to catch the exception and do nothing as this allows the
   // load/download functionality to work.
   // However, the port the user used to download the file will be left open.
-  //
-  // In addition, there's a crash when destructing SecureSocketImpl (internal to
-  // SecureSocketStream, which is
-  // created and destroyed by HTTPSClientSession). We avoid that crash by
-  // instantiating SecureSocketStream
-  // ourselves and passing it to the HTTPSClientSession, which takes ownership.
   catch (Poco::Exception &error) {
     throw std::runtime_error(error.displayText());
   }