diff options
author | Pierre Ossman <ossman@cendio.se> | 2006-05-24 13:23:15 +0000 |
---|---|---|
committer | Pierre Ossman <ossman@cendio.se> | 2006-05-24 13:23:15 +0000 |
commit | 3fa19ab457ff71d148a6dff5eb7362582e82ce61 (patch) | |
tree | 8c155d9feebaab58a9b1208f9c72429ecce7b1c0 /src/polypcore/modinfo.c | |
parent | 2843b1a318aa1a01da465031d713ca2238b39d4c (diff) |
Fix warnings.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@959 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/polypcore/modinfo.c')
-rw-r--r-- | src/polypcore/modinfo.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/polypcore/modinfo.c b/src/polypcore/modinfo.c index 4a9be0f0..a2fffb01 100644 --- a/src/polypcore/modinfo.c +++ b/src/polypcore/modinfo.c @@ -38,6 +38,13 @@ #define PA_SYMBOL_USAGE "pa__get_usage" #define PA_SYMBOL_VERSION "pa__get_version" +/* lt_dlsym() violates ISO C, so confide the breakage into this function to + * avoid warnings. */ +typedef void (*fnptr)(void); +static inline fnptr lt_dlsym_fn(lt_dlhandle handle, const char *symbol) { + return (fnptr) (long) lt_dlsym(handle, symbol); +} + pa_modinfo *pa_modinfo_get_by_handle(lt_dlhandle dl) { pa_modinfo *i; const char* (*func)(void); @@ -45,16 +52,16 @@ pa_modinfo *pa_modinfo_get_by_handle(lt_dlhandle dl) { i = pa_xnew0(pa_modinfo, 1); - if ((func = (const char* (*)(void)) lt_dlsym(dl, PA_SYMBOL_AUTHOR))) + if ((func = (const char* (*)(void)) lt_dlsym_fn(dl, PA_SYMBOL_AUTHOR))) i->author = pa_xstrdup(func()); - if ((func = (const char* (*)(void)) lt_dlsym(dl, PA_SYMBOL_DESCRIPTION))) + if ((func = (const char* (*)(void)) lt_dlsym_fn(dl, PA_SYMBOL_DESCRIPTION))) i->description = pa_xstrdup(func()); - if ((func = (const char* (*)(void)) lt_dlsym(dl, PA_SYMBOL_USAGE))) + if ((func = (const char* (*)(void)) lt_dlsym_fn(dl, PA_SYMBOL_USAGE))) i->usage = pa_xstrdup(func()); - if ((func = (const char* (*)(void)) lt_dlsym(dl, PA_SYMBOL_VERSION))) + if ((func = (const char* (*)(void)) lt_dlsym_fn(dl, PA_SYMBOL_VERSION))) i->version = pa_xstrdup(func()); return i; |