#include "errtab.h"
#undef _S
};
+
__export const char *osl_strerror(int num)
{
if (IS_SYSTEM_ERROR(num))
return 1;
}
-/**
- * Compare two osl objects pointing to unsigned integers of 32 bit size.
- *
- * \param obj1 Pointer to the first integer.
- * \param obj2 Pointer to the second integer.
- *
- * \return The values required for an osl compare function.
- *
- * \sa osl_compare_func, osl_hash_compare().
- */
-int uint32_compare(const struct osl_object *obj1, const struct osl_object *obj2)
-{
- uint32_t d1 = read_u32((const char *)obj1->data);
- uint32_t d2 = read_u32((const char *)obj2->data);
-
- if (d1 < d2)
- return 1;
- if (d1 > d2)
- return -1;
- return 0;
-}
-
/**
* Compare two osl objects pointing to hash values.
*
return 1;
}
-static int rbtree_loop(struct osl_column *col, void *private_data,
+static int rbtree_loop(struct osl_column *col, void *private_data,
osl_rbtree_loop_func *func)
{
struct rb_node *n, *tmp;
n;
n = tmp, tmp = tmp? rb_next(tmp) : NULL) {
struct osl_row *r = get_row_pointer(n, col->rbtree_num);
- int ret = func(r, private_data);
- if (ret < 0)
- return ret;
+ if (func(r, private_data) < 0)
+ return -E_OSL_LOOP;
}
return 1;
}
-static int rbtree_loop_reverse(struct osl_column *col, void *private_data,
+static int rbtree_loop_reverse(struct osl_column *col, void *private_data,
osl_rbtree_loop_func *func)
{
struct rb_node *n, *tmp;
n;
n = tmp, tmp = tmp? rb_prev(tmp) : NULL) {
struct osl_row *r = get_row_pointer(n, col->rbtree_num);
- int ret = func(r, private_data);
- if (ret < 0)
- return ret;
+ if (func(r, private_data) < 0)
+ return -E_OSL_LOOP;
}
return 1;
}
*
*
* \return Standard. If the termination of the loop was caused by \a func
- * returning a negative value, this value is returned.
+ * returning a negative value, \p -E_OSL_LOOP is returned.
*
* \sa osl_storage_flags, osl_rbtree_loop_reverse(), osl_compare_func.
*/