[Player-cvs] installer/stage1/platform/unix stage1app.cpp,1.3,1.4
nhart at helixcommunity.org nhart at helixcommunity.orgUpdate of /cvsroot/player/installer/stage1/platform/unix
In directory cvs-new:/tmp/cvs-serv4569/platform/unix
Modified Files:
stage1app.cpp
Log Message:
if .so fails to load try .so.0
Index: stage1app.cpp
===================================================================
RCS file: /cvsroot/player/installer/stage1/platform/unix/stage1app.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- stage1app.cpp 9 Jul 2004 18:24:42 -0000 1.3
+++ stage1app.cpp 12 Jul 2004 23:57:25 -0000 1.4
@@ -53,6 +53,7 @@
#include "hxbuffer.h"
#include "archive_info.h"
#include "stage1.h"
+#include "safestring.h"
#ifndef _PASSWORD
#define _PASSWORD NULL
@@ -102,6 +103,15 @@
for (Dep* dep = deps; dep->lib != NULL; dep++)
{
void* temp = dlopen(dep->lib, RTLD_LAZY);
+ if (!temp)
+ {
+ const int kAlternateSize = 256; // big enough for now
+ char pAlternate[kAlternateSize];
+ SafeStrCpy(pAlternate, dep->lib, kAlternateSize-3);
+ SafeStrCat(pAlternate, ".0", kAlternateSize);
+ temp = dlopen(pAlternate, RTLD_LAZY);
+ }
+
if (temp)
{
dep->found = TRUE;