2009-12-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+ lt_dlloader_remove and lt_dlloader_find accept const arguments.
+ * libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
+ Accept `const char *' arguments, as documented. Cast them to
+ `void *' for the slist machinery.
+ * libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
+
Test and fix slist.c.
* libltdl/libltdl/slist.h: Include stddef.h, for size_t.
(slist_remove): Return pointer to SList, not void.
LT_SCOPE int lt_dlloader_add (const lt_dlvtable *vtable);
LT_SCOPE lt_dlloader lt_dlloader_next (const lt_dlloader loader);
-LT_SCOPE lt_dlvtable * lt_dlloader_remove (char *name);
-LT_SCOPE const lt_dlvtable *lt_dlloader_find (char *name);
+LT_SCOPE lt_dlvtable * lt_dlloader_remove (const char *name);
+LT_SCOPE const lt_dlvtable *lt_dlloader_find (const char *name);
LT_SCOPE const lt_dlvtable *lt_dlloader_get (lt_dlloader loader);
modules need this loader; in either case, the loader list is not
changed if NULL is returned. */
lt_dlvtable *
-lt_dlloader_remove (char *name)
+lt_dlloader_remove (const char *name)
{
const lt_dlvtable * vtable = lt_dlloader_find (name);
static const char id_string[] = "lt_dlloader_remove";
/* If we got this far, remove the loader from our global list. */
return (lt_dlvtable *)
- slist_unbox ((SList *) slist_remove (&loaders, loader_callback, name));
+ slist_unbox ((SList *) slist_remove (&loaders, loader_callback, (void *) name));
}
const lt_dlvtable *
-lt_dlloader_find (char *name)
+lt_dlloader_find (const char *name)
{
- return lt_dlloader_get (slist_find (loaders, loader_callback, name));
+ return lt_dlloader_get (slist_find (loaders, loader_callback, (void *) name));
}