summaryrefslogtreecommitdiff
path: root/tcejdb
diff options
context:
space:
mode:
authoradam <adamansky@gmail.com>2013-08-01 01:27:04 +0700
committeradam <adamansky@gmail.com>2013-08-01 01:27:04 +0700
commitff0f2b92993bbd0372a8fbace831074ac7b8f2ce (patch)
treecf8c469f7abd90986f8eefd439779ada5adc7670 /tcejdb
parent2dd55565c2f89f5acd111a55cc7108c3cce40893 (diff)
downloadejdb-ff0f2b92993bbd0372a8fbace831074ac7b8f2ce.tar.gz
ejdb-ff0f2b92993bbd0372a8fbace831074ac7b8f2ce.tar.bz2
ejdb-ff0f2b92993bbd0372a8fbace831074ac7b8f2ce.zip
#88
Diffstat (limited to 'tcejdb')
-rw-r--r--tcejdb/bson.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tcejdb/bson.c b/tcejdb/bson.c
index 425c2b4..ed2bfcc 100644
--- a/tcejdb/bson.c
+++ b/tcejdb/bson.c
@@ -1508,12 +1508,12 @@ int bson_merge3(const void *bsdata1, const void *bsdata2, bson *out) {
int keylen = 0;
tcmapiterinit(mfields);
const char *fpath;
- while ((fpath = tcmapiternext2(mfields)) != NULL) {
- const char *fp = fpath;
- int fplen = strlen(fp);
+ int fplen;
+ while ((fpath = tcmapiternext(mfields, &fplen)) != NULL) {
if (fplen >= BSON_MAX_FPATH_LEN) { //protect me silently
continue;
}
+ const char *fp = fpath;
int nl = 0; //nesting level
bool generated = false; //if `true` a missing parts of bson object are generated
while (fplen > 0) { //split fpath with '.' delim