@@ -935,7 +935,7 @@ lyds_pool_clean(struct lyds_pool *pool)
935935 pool -> rbn = NULL ;
936936
937937 for (meta = pool -> meta ; meta ; meta = next ) {
938- next = meta -> next ? meta -> next : NULL ;
938+ next = meta -> next ;
939939 RBT_SET (meta , NULL );
940940 lyd_free_meta_single (meta );
941941 }
@@ -1055,9 +1055,10 @@ lyds_additionally_create_rb_nodes(struct lyd_node **first_sibling, struct lyd_no
10551055 LY_ERR ret ;
10561056 ly_bool max ;
10571057 struct rb_node * rbn ;
1058- struct lyd_node * iter ;
1058+ struct lyd_node * iter , * next ;
10591059
1060- for (iter = node ; iter && (iter -> schema == (* leader )-> schema ); iter = iter -> next ) {
1060+ for (iter = node ; iter && (iter -> schema == (* leader )-> schema ); iter = next ) {
1061+ next = iter -> next ;
10611062 ret = lyds_create_node (iter , & rbn );
10621063 LY_CHECK_RET (ret );
10631064 rb_insert_node (rbt , rbn , & max );
@@ -1118,15 +1119,16 @@ lyds_additionally_reuse_rb_tree(struct lyd_node **first_sibling, struct lyd_node
11181119 struct rb_node * * rbt , struct lyds_pool * pool , struct lyd_node * * next )
11191120{
11201121 ly_bool max ;
1121- struct lyd_node * iter ;
1122+ struct lyd_node * iter , * next_node ;
11221123
11231124 /* let's begin with the leader */
11241125 RBN_RESET (pool -> rbn , * leader );
11251126 * rbt = pool -> rbn ;
11261127 pool -> rbn = rb_iter_next (& pool -> iter_state );
11271128
11281129 /* continue with the rest of the nodes */
1129- for (iter = (* leader )-> next ; iter && (iter -> schema == (* leader )-> schema ); iter = iter -> next ) {
1130+ for (iter = (* leader )-> next ; iter && (iter -> schema == (* leader )-> schema ); iter = next_node ) {
1131+ next_node = iter -> next ;
11301132 if (!pool -> rbn ) {
11311133 * next = iter ;
11321134 return ;
0 commit comments