Fall back to libcurl.so.4 or libcurl.so.4 if the default symlink does not exist.

This commit is contained in:
Thilo Schulz 2008-02-16 22:57:45 +00:00
parent 1f86aba342
commit a99634c2d3
1 changed files with 20 additions and 5 deletions

View File

@ -100,13 +100,28 @@ qboolean CL_cURL_Init()
return qfalse; return qfalse;
#else #else
char fn[1024]; char fn[1024];
Q_strncpyz( fn, Sys_Cwd( ), sizeof( fn ) );
strncat(fn, "/", sizeof(fn)-strlen(fn)-1);
strncat(fn, cl_cURLLib->string, sizeof(fn)-strlen(fn)-1);
if( (cURLLib = Sys_LoadLibrary(fn)) == 0 ) // On some linux distributions there is no libcurl.so symlink, but only libcurl.so.4
Q_strncpyz(fn, cl_cURLLib->string, sizeof(fn));
strncat(fn, ".4", sizeof(fn)-strlen(fn)-1);
if((cURLLib = Sys_LoadLibrary(fn)) == 0)
{ {
return qfalse; Q_strncpyz(fn, cl_cURLLib->string, sizeof(fn));
strncat(fn, ".3", sizeof(fn)-strlen(fn)-1);
if((cURLLib = Sys_LoadLibrary(fn)) == 0)
{
Q_strncpyz( fn, Sys_Cwd( ), sizeof( fn ) );
strncat(fn, "/", sizeof(fn)-strlen(fn)-1);
strncat(fn, cl_cURLLib->string, sizeof(fn)-strlen(fn)-1);
if( (cURLLib = Sys_LoadLibrary(fn)) == 0 )
{
return qfalse;
}
}
} }
#endif /* _WIN32 */ #endif /* _WIN32 */
} }