--- mozilla/xulrunner/stub/nsXULStub.cpp.old 2008-04-09 09:49:41.000000000 +0300 +++ mozilla/xulrunner/stub/nsXULStub.cpp 2008-09-27 17:20:37.000000000 +0300 @@ -208,8 +208,10 @@ main(int argc, char **argv) // 3) give up struct stat fileStat; + int r = readlink("/proc/self/exe", iniPath, MAXPATHLEN); - if (!realpath(argv[0], iniPath) || stat(iniPath, &fileStat)) { + if ((!(r > 0 && r < MAXPATHLEN) || stat(iniPath, &fileStat)) && + (!realpath(argv[0], iniPath) || stat(iniPath, &fileStat))) { const char *path = getenv("PATH"); if (!path) return 1;