Trying to fix some Linux & OSX compilation issues.

This commit is contained in:
bubnikv 2019-07-04 23:34:18 +02:00
parent 211d1ee1e3
commit 7c732c7482
2 changed files with 3 additions and 1 deletions

View file

@ -196,6 +196,7 @@ TriangleMesh make_sphere(double rho, double fa=(2*PI/360));
}
// Serialization through the Cereal library
#include <cereal/access.hpp>
namespace cereal {
template <class Archive> struct specialize<Archive, Slic3r::TriangleMesh, cereal::specialization::non_member_load_save> {};
template<class Archive> void load(Archive &archive, Slic3r::TriangleMesh &mesh) {

View file

@ -555,7 +555,8 @@ template<typename T> std::shared_ptr<const T>& ImmutableObjectHistory<T>::share
std::istringstream iss(m_serialized);
{
Slic3r::UndoRedo::InputArchive archive(stack, iss);
std::unique_ptr<std::remove_const<T>::type> mesh(new std::remove_const<T>::type());
typedef typename std::remove_const<T>::type Type;
std::unique_ptr<Type> mesh(new Type());
archive(*mesh.get());
m_shared_object = std::move(mesh);
}