diff --git a/src/box/alter.cc b/src/box/alter.cc index 5e3bb4c6756b40693fa69d2a05976dce0a1bbd17..d6b10394d1441ea36f0b005cac0858a070239a84 100644 --- a/src/box/alter.cc +++ b/src/box/alter.cc @@ -1865,8 +1865,6 @@ update_view_references(struct Select *select, int update_value, { assert(update_value == 1 || update_value == -1); struct SrcList *list = sql_select_expand_from_tables(select); - if (list == NULL) - return -1; int from_tables_count = sql_src_list_entry_count(list); for (int i = 0; i < from_tables_count; ++i) { const char *space_name = sql_src_list_entry_name(list, i); diff --git a/src/box/sql.h b/src/box/sql.h index 442eebfe17c5c95836a4de71da2cfa1758f62037..ec2d1d2123a110d9ad6ae771e778c0563b3c65e5 100644 --- a/src/box/sql.h +++ b/src/box/sql.h @@ -285,7 +285,6 @@ sql_select_delete(struct Select *select); * * @param select Select to be investigated. * @retval List containing all involved table names. - * NULL in case of OOM. */ struct SrcList * sql_select_expand_from_tables(struct Select *select); diff --git a/src/box/sql/select.c b/src/box/sql/select.c index 50d742b789905ead6258c55ecec351647cb4595c..12ef23af30c52a78ef32e4820a246ffe88fda859 100644 --- a/src/box/sql/select.c +++ b/src/box/sql/select.c @@ -483,9 +483,7 @@ src_list_append_unique(struct SrcList *list, const char *new_name) if (name != NULL && strcmp(new_name, name) == 0) return list; } - struct SrcList *new_list = - sql_src_list_enlarge(list, 1, list->nSrc); - list = new_list; + list = sql_src_list_enlarge(list, 1, list->nSrc); struct SrcList_item *pItem = &list->a[list->nSrc - 1]; pItem->zName = sql_xstrdup(new_name); return list; @@ -502,8 +500,7 @@ select_collect_table_names(struct Walker *walker, struct Select *select) walker->u.pSrcList = src_list_append_unique(walker->u.pSrcList, select->pSrc->a[i].zName); - if (walker->u.pSrcList == NULL) - return WRC_Abort; + assert(walker->u.pSrcList != NULL); } return WRC_Continue; } @@ -518,10 +515,8 @@ sql_select_expand_from_tables(struct Select *select) walker.xExprCallback = sqlExprWalkNoop; walker.xSelectCallback = select_collect_table_names; walker.u.pSrcList = table_names; - if (sqlWalkSelect(&walker, select) != 0) { - sqlSrcListDelete(walker.u.pSrcList); - return NULL; - } + int rc = sqlWalkSelect(&walker, select); + assert(rc == WRC_Continue); (void)rc; return walker.u.pSrcList; }