/* * Cursor advance for btree traverse. * < 0 - error * 0 - Finished traverse * 1 - Reached leaf */ static int cursor_advance(struct cursor *cursor) { int ret; do { if (!cursor_advance_up(cursor)) return 0; } while (cursor_level_finished(cursor)); do { ret = cursor_advance_down(cursor); if (ret < 0) return ret; } while (ret); return 1; }
/* * Cursor advance for btree traverse. * < 0 - error * 0 - Finished traverse * 1 - Reached leaf */ static int cursor_advance(struct cursor *cursor) { if(DEBUG_MODE_K==1) { printf("\t\t\t\t%25s[K] %25s %4d #in\n",__FILE__,__func__,__LINE__); } int ret; do { if (!cursor_advance_up(cursor)) return 0; } while (cursor_level_finished(cursor)); do { ret = cursor_advance_down(cursor); if (ret < 0) return ret; } while (ret); return 1; }