summaryrefslogtreecommitdiff
path: root/src/mongo/s/type_lockpings.cpp
diff options
context:
space:
mode:
authorShaun Verch <shaun.verch@10gen.com>2012-12-14 15:05:24 -0500
committerShaun Verch <shaun.verch@10gen.com>2012-12-19 14:39:17 -0500
commitd2adeeb4a74dac9f41280d42635fa60d2d58a864 (patch)
tree10088f710b0ec353c1c9551d2970d39db350902a /src/mongo/s/type_lockpings.cpp
parent133677e7186540ac36a3a1502dd46d108bca24ee (diff)
downloadmongo-d2adeeb4a74dac9f41280d42635fa60d2d58a864.tar.gz
SERVER-939 Added errMsg to parseBSON in *Type classes
Diffstat (limited to 'src/mongo/s/type_lockpings.cpp')
-rw-r--r--src/mongo/s/type_lockpings.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/mongo/s/type_lockpings.cpp b/src/mongo/s/type_lockpings.cpp
index 50a59e3086b..97a42af1c29 100644
--- a/src/mongo/s/type_lockpings.cpp
+++ b/src/mongo/s/type_lockpings.cpp
@@ -62,15 +62,16 @@ namespace mongo {
return builder.obj();
}
- void LockpingsType::parseBSON(BSONObj source) {
+ bool LockpingsType::parseBSON(BSONObj source, string* errMsg) {
clear();
- bool ok = true;
- ok &= FieldParser::extract(source, process, "", &_process);
- ok &= FieldParser::extract(source, ping, 0ULL, &_ping);
- if (! ok) {
- clear();
- }
+ string dummy;
+ if (!errMsg) errMsg = &dummy;
+
+ if (!FieldParser::extract(source, process, "", &_process, errMsg)) return false;
+ if (!FieldParser::extract(source, ping, 0ULL, &_ping, errMsg)) return false;
+
+ return true;
}
void LockpingsType::clear() {