blob: 46e12d05b047968101a1642b59537108a8a4722a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
Index: mozilla/security/nss/lib/freebl/genload.c
===================================================================
--- mozilla.orig/security/nss/lib/freebl/genload.c 2008-07-23 20:20:36.000000000 +0200
+++ mozilla/security/nss/lib/freebl/genload.c 2008-07-23 20:20:39.000000000 +0200
@@ -62,6 +62,16 @@
*/
static char* loader_GetOriginalPathname(const char* link)
{
+#ifdef __GLIBC__
+ char* tmp = realpath(link, NULL);
+ char* resolved;
+ if (! tmp)
+ return NULL;
+ resolved = PR_Malloc(strlen(tmp) + 1);
+ strcpy(resolved, tmp); /* This is necessary because PR_Free might not be using free() */
+ free(tmp);
+ return resolved;
+#else
char* resolved = NULL;
char* input = NULL;
PRUint32 iterations = 0;
@@ -96,6 +106,7 @@
input = NULL;
}
return input;
+#endif
}
#endif /* XP_UNIX */
|