pthread_mutex_lock(&db_handle.lock);
if (!db_handle.lib) {
if ((!MYSQL_LIBPATH[0] || (db_handle.lib = dlopen(MYSQL_LIBPATH, RTLD_LAZY | RTLD_LOCAL)) == NULL) &&
- (db_handle.lib = dlopen("libmysqlclient.so", RTLD_LAZY | RTLD_LOCAL)) == NULL) {
- free(*ctx);
- *ctx = NULL;
+ (db_handle.lib = dlopen("libmysqlclient.so", RTLD_LAZY | RTLD_LOCAL)) == NULL)
return ERR(*ctx, ENOENT, "can't load '%s' or 'libmysqlclient.so' (%s)", MYSQL_LIBPATH, dlerror());
- }
do {
LOAD(mysql_init, "mysql_init");
LOAD(mysql_get_client_version, "mysql_get_client_version");
dlclose(db_handle.lib);
db_handle.lib = NULL;
pthread_mutex_unlock(&db_handle.lock);
- free(*ctx);
- *ctx = NULL;
return err;
}
} else pthread_mutex_unlock(&db_handle.lock);