summaryrefslogtreecommitdiff
path: root/src/mongo/scripting/engine_v8.cpp
diff options
context:
space:
mode:
authorLaszlo Boszormenyi (GCS) <gcs@debian.org>2013-10-18 10:31:13 +0200
committerLaszlo Boszormenyi (GCS) <gcs@debian.org>2013-10-18 10:31:13 +0200
commit65585c90b12d6523bea75a2aebaae2a2fdf9e641 (patch)
treeccb3081edfe67f988844af661a2bf93aa95ae09f /src/mongo/scripting/engine_v8.cpp
parente3904bf97e74cbbe5dde6b3abc3e797ad7d26b5d (diff)
Imported Upstream version 2.4.6upstream/2.4.6
Diffstat (limited to 'src/mongo/scripting/engine_v8.cpp')
-rw-r--r--src/mongo/scripting/engine_v8.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/mongo/scripting/engine_v8.cpp b/src/mongo/scripting/engine_v8.cpp
index 7ffebec383e..5aa40b1abf0 100644
--- a/src/mongo/scripting/engine_v8.cpp
+++ b/src/mongo/scripting/engine_v8.cpp
@@ -919,7 +919,7 @@ namespace mongo {
// script loaded from file
ss << " at " << *resourceName;
const int linenum = message->GetLineNumber();
- if (linenum != 1) ss << ":L" << linenum;
+ if (linenum != 1) ss << ":" << linenum;
}
return ss.str();
}
@@ -1572,6 +1572,14 @@ namespace mongo {
void V8Scope::v8ToMongoElement(BSONObjBuilder & b, const StringData& sname,
v8::Handle<v8::Value> value, int depth,
BSONObj* originalParent) {
+
+ // Null char should be at the end, not in the string
+ uassert(16985,
+ str::stream() << "JavaScript property (name) contains a null char "
+ << "which is not allowed in BSON. "
+ << originalParent->jsonString(),
+ (string::npos == sname.find('\0')) );
+
if (value->IsString()) {
b.append(sname, V8String(value));
return;