Whoops. That was like that for debugging purposes. Should be 1 = 0.

-Nathan

On Sep 2, 2012, at 1:34 PM, Petri Hintukainen <[email protected]> 
wrote:

> On ke, 2012-08-29 at 16:42 +0200, Jean-Baptiste Kempf wrote:
>> libbluray | branch: master | Jean-Baptiste Kempf <[email protected]> | Wed 
>> Aug 29 16:39:48 2012 +0200| [bbc5a574b1835e90f8ecc40a42cb91c14b40c034] | 
>> committer: Jean-Baptiste Kempf
>> 
>> Improve dlopen on OSX
>> 
>> It will search some common paths when dlopening libraries
>> 
>>> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=bbc5a574b1835e90f8ecc40a42cb91c14b40c034
>> ---
>> 
>> src/file/dl_posix.c |   78 
>> ++++++++++++++++++++++++++++++++++-----------------
>> 1 file changed, 53 insertions(+), 25 deletions(-)
>> 
>> diff --git a/src/file/dl_posix.c b/src/file/dl_posix.c
>> index 57ab232..76998dc 100644
>> --- a/src/file/dl_posix.c
>> +++ b/src/file/dl_posix.c
> [...]
>> +void   *dl_dlopen  ( const char* path, const char *version )
>> +{
>> +    char *name;
>> +    void *dll;
>> +    int i;
>> +
>> +#if defined(__APPLE__)
>> +    static const char ext[] = ".dylib";
>> +    /*
>> +      Search for the library in several locations:
>> +       ""               - default search path (including DYLD_LIBRARY_PATH)
>> +       @loader_path     - location of current library/binary (ex. 
>> libbluray.dylib)
>> +       @executable_path - location of running binary (ex. 
>> /Applications/Some.app/Contents/MacOS)
>> +       @rpath           - search rpaths of running binary (man 
>> install_name_path)
>> +    */
>> +    static const char *search_paths[] = {"", "@loader_path/lib/", 
>> "@loader_path/", "@executable_path/",
>> +                                         "@executable_path/lib/", 
>> "@executable_path/../lib/",
>> +                                         "@executable_path/../Resources/", 
>> "@rpath/", NULL};
>> +    version = NULL;
>> +#elif defined(_WIN32)
>> +    static const char ext[] = ".dll";
>> +    static const char *search_paths[] = {"", NULL};
>> +    version = NULL;
>> +#else
>> +    static const char ext[] = ".so";
>> +    static const char *search_paths[] = {"", NULL};
>> +#endif
>> +
>> +    for (i = 1 ; search_paths[i] ; ++i) {
> 
> Should this be
>  for (i = 0; ...
> 
> (search_paths[1] == NULL for all but OS X...)
> 
>> +        if (version) {
>> +            name = str_printf("%s%s%s.%s", search_paths[i], path, ext, 
>> version);
>> +        } else {
>> +            name = str_printf("%s%s%s", search_paths[i], path, ext);
>> +        }
>> +
>> +        fprintf (stderr, "Attempting to open %s\n", name);
>> +
>> +        dll = _dl_dlopen (name);
>> +        X_FREE(name);
>> +        if (dll) {
>> +            return dll;
>> +        }
>> +    }
>> +
>> +    return NULL;
>> +}
>> +
>> void   *dl_dlsym   ( void* handle, const char* symbol )
>> {
>> #if defined(_WIN32)
>> 
>> _______________________________________________
>> libbluray-devel mailing list
>> [email protected]
>> http://mailman.videolan.org/listinfo/libbluray-devel
> 
> 
> _______________________________________________
> libbluray-devel mailing list
> [email protected]
> http://mailman.videolan.org/listinfo/libbluray-devel

_______________________________________________
libbluray-devel mailing list
[email protected]
http://mailman.videolan.org/listinfo/libbluray-devel

Reply via email to