diff --git a/src/mongo/scripting/mozjs/valuewriter.cpp b/src/mongo/scripting/mozjs/valuewriter.cpp
|
index db483a36564..fbef592fb1c 100644
|
--- a/src/mongo/scripting/mozjs/valuewriter.cpp
|
+++ b/src/mongo/scripting/mozjs/valuewriter.cpp
|
@@ -326,6 +326,16 @@ void ValueWriter::writeThis(BSONObjBuilder* b,
|
if (_value.isString()) {
|
JSStringWrapper jsstr;
|
b->append(sd, toStringData(&jsstr));
|
+ } else if(_value.isSymbol()) {
|
+ // Based on js::SymbolDescriptiveString()
|
+ JS::RootedSymbol symbol(_context, _value.toSymbol());
|
+ JS::RootedString symbolStr(_context, GetSymbolDescription(symbol));
|
+ if (symbolStr) {
|
+ JSStringWrapper jsstr(_context, symbolStr);
|
+ b->appendSymbol(sd, jsstr.toStringData());
|
+ } else {
|
+ b->appendSymbol(sd, StringData());
|
+ }
|
} else if (_value.isNumber()) {
|
double val = toNumber();
|