From bac7d6c508a94f8ac99af38a794109e1dc703ace Mon Sep 17 00:00:00 2001
From: Steven Murray <steven.murray@cern.ch>
Date: Tue, 26 Jul 2016 20:58:38 +0200
Subject: [PATCH] Temporarily added cta::make_unique until we get a new enough
 compiler

---
 common/make_unique.hpp       | 6 ++++--
 rdbms/ConnFactoryFactory.cpp | 7 ++++---
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/common/make_unique.hpp b/common/make_unique.hpp
index 18c1d4774e..aac18079eb 100644
--- a/common/make_unique.hpp
+++ b/common/make_unique.hpp
@@ -18,6 +18,8 @@
 
 #pragma once
 
+#include<memory>
+
 namespace cta {
 
 /**
@@ -28,8 +30,8 @@ namespace cta {
  * created on the heap and wrapped by an std::unique_ptr.
  * @return The std::unique_ptr.
  */
-template<typename T, typename... Ts> std::unique_ptr<T> make_unique(Tss&&... params) {
-  return std::unique_ptr<T>(new T(std::foward<Ts>(params)...));
+template<typename T, typename... Ts> std::unique_ptr<T> make_unique(Ts&&... params) {
+  return std::unique_ptr<T>(new T(std::forward<Ts>(params)...));
 }
 
 } // namespace cta
diff --git a/rdbms/ConnFactoryFactory.cpp b/rdbms/ConnFactoryFactory.cpp
index eb9369026d..8ac30c63e6 100644
--- a/rdbms/ConnFactoryFactory.cpp
+++ b/rdbms/ConnFactoryFactory.cpp
@@ -17,6 +17,7 @@
  */
 
 #include "common/exception/Exception.hpp"
+#include "common/make_unique.hpp"
 #include "rdbms/ConnFactoryFactory.hpp"
 #include "rdbms/OcciConnFactory.hpp"
 #include "rdbms/SqliteConnFactory.hpp"
@@ -31,11 +32,11 @@ std::unique_ptr<ConnFactory> ConnFactoryFactory::create(const Login &login) {
   try {
     switch(login.dbType) {
     case rdbms::Login::DBTYPE_IN_MEMORY:
-      return std::unique_ptr<SqliteConnFactory>(new SqliteConnFactory(":memory:"));
+      return make_unique<SqliteConnFactory>(":memory:");
     case rdbms::Login::DBTYPE_ORACLE:
-      return std::unique_ptr<OcciConnFactory>(new OcciConnFactory(login.username, login.password, login.database));
+      return make_unique<OcciConnFactory>(login.username, login.password, login.database);
     case rdbms::Login::DBTYPE_SQLITE:
-      return std::unique_ptr<SqliteConnFactory>(new SqliteConnFactory(login.database));
+      return make_unique<SqliteConnFactory>(login.database);
     case rdbms::Login::DBTYPE_NONE:
       throw exception::Exception("Cannot create a catalogue without a database type");
     default:
-- 
GitLab