Evgenii Stepanov | 6865082 | 2015-06-10 13:38:39 -0700 | [diff] [blame] | 1 | #include <dlfcn.h> |
| 2 | extern "C" void *dlopen_b() { |
Dmitriy Ivanov | 7d09a8c | 2015-06-23 13:44:18 -0700 | [diff] [blame] | 3 | // TODO (dimitry): this is to work around http://b/20049306 |
| 4 | // remove once it is fixed |
| 5 | static int dummy = 0; |
| 6 | |
Dmitriy Ivanov | a1feb11 | 2015-10-01 18:41:57 -0700 | [diff] [blame] | 7 | // This is supposed to succeed because this library has DT_RUNPATH |
| 8 | // for libtest_dt_runpath_x.so which should be taken into account |
| 9 | // by dlopen. |
Evgenii Stepanov | 6865082 | 2015-06-10 13:38:39 -0700 | [diff] [blame] | 10 | void *handle = dlopen("libtest_dt_runpath_x.so", RTLD_NOW); |
Dmitriy Ivanov | 7d09a8c | 2015-06-23 13:44:18 -0700 | [diff] [blame] | 11 | if (handle != nullptr) { |
| 12 | dummy++; |
| 13 | return handle; |
| 14 | } |
| 15 | return nullptr; |
Evgenii Stepanov | 6865082 | 2015-06-10 13:38:39 -0700 | [diff] [blame] | 16 | } |