mirror of https://gitee.com/bigwinds/arangodb
handle OOM
This commit is contained in:
parent
40b7f372f9
commit
5b1f9f2a14
|
@ -242,10 +242,11 @@ TRI_aql_node_t* TRI_JsonNodeAql (TRI_aql_context_t* const context,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TRI_JSON_LIST: {
|
case TRI_JSON_LIST: {
|
||||||
size_t i;
|
|
||||||
size_t n;
|
|
||||||
|
|
||||||
node = TRI_CreateNodeListAql(context);
|
node = TRI_CreateNodeListAql(context);
|
||||||
|
|
||||||
|
if (node != NULL) {
|
||||||
|
size_t i, n;
|
||||||
|
|
||||||
n = json->_value._objects._length;
|
n = json->_value._objects._length;
|
||||||
|
|
||||||
for (i = 0; i < n; ++i) {
|
for (i = 0; i < n; ++i) {
|
||||||
|
@ -263,13 +264,15 @@ TRI_aql_node_t* TRI_JsonNodeAql (TRI_aql_context_t* const context,
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case TRI_JSON_ARRAY: {
|
case TRI_JSON_ARRAY: {
|
||||||
size_t i;
|
|
||||||
size_t n;
|
|
||||||
|
|
||||||
node = TRI_CreateNodeArrayAql(context);
|
node = TRI_CreateNodeArrayAql(context);
|
||||||
|
|
||||||
|
if (node != NULL) {
|
||||||
|
size_t i, n;
|
||||||
|
|
||||||
n = json->_value._objects._length;
|
n = json->_value._objects._length;
|
||||||
|
|
||||||
for (i = 0; i < n; i += 2) {
|
for (i = 0; i < n; i += 2) {
|
||||||
|
@ -308,11 +311,12 @@ TRI_aql_node_t* TRI_JsonNodeAql (TRI_aql_context_t* const context,
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! node) {
|
if (node == NULL) {
|
||||||
TRI_SetErrorContextAql(context, TRI_ERROR_OUT_OF_MEMORY, NULL);
|
TRI_SetErrorContextAql(context, TRI_ERROR_OUT_OF_MEMORY, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue