Mercurial > pub > dyncall > dyncall
diff test/dynload_plain/dynload_plain.c @ 223:7076f551faf5
- dynload mach-o handling fixes for 64bit platforms
- dynload test code improvements
- dynload(3) clarification
author | Tassilo Philipp |
---|---|
date | Sat, 15 Apr 2017 15:21:37 +0200 |
parents | cb56f077fd37 |
children | 8216c86b4cbc |
line wrap: on
line diff
--- a/test/dynload_plain/dynload_plain.c Fri Apr 14 21:23:22 2017 +0200 +++ b/test/dynload_plain/dynload_plain.c Sat Apr 15 15:21:37 2017 +0200 @@ -46,14 +46,17 @@ "/lib32/libc.so", "/lib32/libc.so.6", "/lib32/libc.so.7", + "/usr/lib/system/libsystem_c.dylib", "/usr/lib/libc.dylib", "C:\\Windows\\system32\\msvcrt.dll" }; for(i=0; i<(sizeof(clibs)/sizeof(const char*)); ++i) { - if(access(clibs[i], F_OK) != -1) + if(access(clibs[i], F_OK) != -1) { path = clibs[i]; + break; + } } if(path) { @@ -100,7 +103,7 @@ } printf("printf symbol found by iteration: %d\n", i<n); - name = dlSymsName(pSyms, i); + name = (i<n) ? dlSymsName(pSyms, i) : NULL; r += (name && strcmp(name, "printf") == 0); // check if we can lookup "printf" by index printf("printf symbol name by index: %s\n", name?name:"");