diff --git a/lib/V8/v8-utils.cpp b/lib/V8/v8-utils.cpp index 19ca21a4b3..d07152c732 100644 --- a/lib/V8/v8-utils.cpp +++ b/lib/V8/v8-utils.cpp @@ -222,15 +222,16 @@ static v8::Handle PathList (string const& modules) { v8::HandleScope scope; #ifdef _WIN32 - vector paths = StringUtils::split(modules, ";",'\0'); + vector paths = StringUtils::split(modules, ";", '\0'); #else vector paths = StringUtils::split(modules, ";:"); #endif - v8::Handle result = v8::Array::New(); + const uint32_t n = (uint32_t) paths.size(); + v8::Handle result = v8::Array::New(n); - for (uint32_t i = 0; i < (uint32_t) paths.size(); ++i) { - result->Set(i, v8::String::New(paths[i].c_str())); + for (uint32_t i = 0; i < n; ++i) { + result->Set(i, v8::String::New(paths[i].c_str(), paths[i].size())); } return scope.Close(result);