Fix DSO open, specifically for auth modules like GNOME keyring From: David Rothenberger support. Thanks to Yaakov for the patch. http://cygwin.com/ml/cygwin/2012-03/msg00835.html --- subversion/libsvn_fs/fs-loader.c | 7 ++++++- subversion/libsvn_ra/ra_loader.c | 7 ++++++- subversion/libsvn_subr/auth.c | 4 ++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/subversion/libsvn_fs/fs-loader.c b/subversion/libsvn_fs/fs-loader.c index 336b84f..63ef3cc 100644 --- a/subversion/libsvn_fs/fs-loader.c +++ b/subversion/libsvn_fs/fs-loader.c @@ -121,7 +121,12 @@ load_module(fs_init_func_t *initfunc, const char *name, apr_pool_t *pool) _("Invalid name for FS type '%s'"), name); - libname = apr_psprintf(pool, "libsvn_fs_%s-%d.so.%d", + libname = apr_psprintf(pool, +#ifdef __CYGWIN__ + "cygsvn_fs_%s-%d-%d.dll", +#else + "libsvn_fs_%s-%d.so.%d", +#endif name, SVN_VER_MAJOR, SVN_SOVERSION); funcname = apr_psprintf(pool, "svn_fs_%s__init", name); diff --git a/subversion/libsvn_ra/ra_loader.c b/subversion/libsvn_ra/ra_loader.c index d9cb96b..ae17d84 100644 --- a/subversion/libsvn_ra/ra_loader.c +++ b/subversion/libsvn_ra/ra_loader.c @@ -141,7 +141,12 @@ load_ra_module(svn_ra__init_func_t *func, const char *compat_funcname; apr_status_t status; - libname = apr_psprintf(pool, "libsvn_ra_%s-%d.so.%d", + libname = apr_psprintf(pool, +#ifdef __CYGWIN__ + "cygsvn_ra_%s-%d-%d.dll", +#else + "libsvn_ra_%s-%d.so.%d", +#endif ra_name, SVN_VER_MAJOR, SVN_SOVERSION); funcname = apr_psprintf(pool, "svn_ra_%s__init", ra_name); compat_funcname = apr_psprintf(pool, "svn_ra_%s_init", ra_name); diff --git a/subversion/libsvn_subr/auth.c b/subversion/libsvn_subr/auth.c index a999711..6f88853 100644 --- a/subversion/libsvn_subr/auth.c +++ b/subversion/libsvn_subr/auth.c @@ -455,7 +455,11 @@ svn_auth_get_platform_specific_provider(svn_auth_provider_object_t **provider, const char *library_label, *library_name; const char *provider_function_name, *version_function_name; library_name = apr_psprintf(pool, +#ifdef __CYGWIN__ + "cygsvn_auth_%s-%d-%d.dll", +#else "libsvn_auth_%s-%d.so.%d", +#endif provider_name, SVN_VER_MAJOR, SVN_SOVERSION); library_label = apr_psprintf(pool, "svn_%s", provider_name);