瀏覽代碼

Possible fix for selection of incorrect method for serialization of vector<bool>

Ivan Savenko 9 年之前
父節點
當前提交
a1cca251ec
共有 2 個文件被更改,包括 3 次插入3 次删除
  1. 2 2
      lib/serializer/BinaryDeserializer.h
  2. 1 1
      lib/serializer/BinarySerializer.h

+ 2 - 2
lib/serializer/BinaryDeserializer.h

@@ -235,8 +235,8 @@ public:
 		range::copy(convData, data.begin());
 	}
 
-	template <typename T>
-	void load(std::vector<T> &data, typename std::enable_if < !std::is_same<T, bool >::value, int  >::type = 0)
+	template <typename T, typename std::enable_if < !std::is_same<T, bool >::value, int  >::type = 0>
+	void load(std::vector<T> &data)
 	{
 		READ_CHECK_U32(length);
 		data.resize(length);

+ 1 - 1
lib/serializer/BinarySerializer.h

@@ -250,7 +250,7 @@ public:
 		T *internalPtr = data.get();
 		save(internalPtr);
 	}
-	template <typename T>
+	template <typename T, typename std::enable_if < !std::is_same<T, bool >::value, int  >::type = 0>
 	void save(const std::vector<T> &data)
 	{
 		ui32 length = data.size();