#include "WebCommon.h"
#include <algorithm>
+#include <limits>
+#include <stdlib.h>
namespace blink {
private:
void initialize(size_t size)
{
+ validateSize(size);
m_size = size;
if (!m_size)
m_ptr = 0;
template <typename U>
void initializeFrom(const U* values, size_t size)
{
+ validateSize(size);
m_size = size;
if (!m_size)
m_ptr = 0;
}
}
+ void validateSize(size_t size)
+ {
+ if (std::numeric_limits<size_t>::max() / sizeof(T) < size)
+ abort();
+ }
+
void destroy()
{
for (size_t i = 0; i < m_size; ++i)