1
0
Fork 0

handle OOM

This commit is contained in:
Jan Steemann 2013-07-02 17:21:07 +02:00
parent 40b7f372f9
commit 5b1f9f2a14
1 changed files with 54 additions and 50 deletions

View File

@ -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);
} }