95944: XPI packages not working on Linux 0.9.3. (r=ssu,sr=dveditz).

failover to profile directory when the global location isn't writable.
This commit is contained in:
tao%netscape.com 2001-09-19 00:21:21 +00:00
parent 191917c5db
commit b5df3256fb
6 changed files with 192 additions and 104 deletions

View File

@ -27,33 +27,49 @@ logComment("fProgram: " + fProgram);
if (verifyDiskSpace(fProgram, srDest))
{
var chromeType = LOCALE;
err = addDirectory("",
"$Version$",
"viewer",
fProgram,
"",
true);
"viewer",
fProgram,
"");
logComment("addDirectory() returned: " + err);
var cf = getFolder("Chrome");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "global/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "communicator/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "messenger/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "editor/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "navigator/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "necko/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "cookie/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "wallet/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "content-packs/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "help/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "pippki/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "pipnss/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "global-platform/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "communicator-platform/");
if(err == SUCCESS)
if (err != SUCCESS)
{
logComment("addDirectory() to " + fProgram + "failed!");
// couldn't install globally, try installing to the profile
resetError();
chromeType |= PROFILE_CHROME;
fProgram = getFolder("Profile");
logComment("try installing to the user profile:" + fProgram);
err = addDirectory("","bin",fProgram,"");
}
setPackageFolder(fProgram);
// check return value
if (err == SUCCESS)
{
// register chrome
var cf = getFolder(fProgram, "chrome/"+chromeName);
var pf = getFolder(fProgram, "chrome/"+platformName);
registerChrome(chromeType, cf, localeName + "global/");
registerChrome(chromeType, cf, localeName + "communicator/");
registerChrome(chromeType, cf, localeName + "messenger/");
registerChrome(chromeType, cf, localeName + "editor/");
registerChrome(chromeType, cf, localeName + "navigator/");
registerChrome(chromeType, cf, localeName + "necko/");
registerChrome(chromeType, cf, localeName + "cookie/");
registerChrome(chromeType, cf, localeName + "wallet/");
registerChrome(chromeType, cf, localeName + "content-packs/");
registerChrome(chromeType, cf, localeName + "help/");
registerChrome(chromeType, cf, localeName + "pippki/");
registerChrome(chromeType, cf, localeName + "pipnss/");
registerChrome(chromeType, pf, localeName + "global-platform/");
registerChrome(chromeType, pf, localeName + "communicator-platform/");
err = performInstall();
logComment("performInstall() returned: " + err);
}

View File

@ -19,23 +19,36 @@ logComment("fProgram: " + fProgram);
if (verifyDiskSpace(fProgram, srDest))
{
var chromeType = LOCALE;
err = addDirectory("",
"$Version$",
"viewer",
fProgram,
"",
true);
"");
logComment("addDirectory() returned: " + err);
var cf = getFolder("Chrome");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "global-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "communicator-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "editor-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "messenger-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "navigator-region/");
if(err == SUCCESS)
if (err != SUCCESS)
{
logComment("addDirectory() to " + fProgram + "failed!");
// couldn't install globally, try installing to the profile
resetError();
chromeType |= PROFILE_CHROME;
fProgram = getFolder("Profile");
logComment("try installing to the profile: " + fProgram);
err = addDirectory("","viewer/chrome",fProgram,"chrome");
}
setPackageFolder(fProgram);
if (err == SUCCESS)
{
// register chrome
var cf = getFolder(fProgram, "chrome/"+ chromeName);
registerChrome(chromeType, cf, localeName + "global-region/");
registerChrome(chromeType, cf, localeName + "communicator-region/");
registerChrome(chromeType, cf, localeName + "editor-region/");
registerChrome(chromeType, cf, localeName + "messenger-region/");
registerChrome(chromeType, cf, localeName + "navigator-region/");
err = performInstall();
logComment("performInstall() returned: " + err);
}

View File

@ -26,35 +26,53 @@ logComment("fProgram: " + fProgram);
if (verifyDiskSpace(fProgram, srDest))
{
var chromeType = LOCALE;
err = addDirectory("",
"$Version$",
"bin",
fProgram,
"",
true);
"");
logComment("addDirectory() returned: " + err);
// register chrome
var cf = getFolder("Chrome");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "global/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "communicator/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "messenger/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "editor/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "navigator/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "necko/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "cookie/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "wallet/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "content-packs/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "help/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "pippki/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "pipnss/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "global-platform/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "communicator-platform/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "navigator-platform/");
if (err != SUCCESS)
{
logComment("addDirectory() to " + fProgram + "failed!");
// couldn't install globally, try installing to the profile
resetError();
chromeType |= PROFILE_CHROME;
fProgram = getFolder("Profile");
logComment("try installing to the user profile:" + fProgram);
err = addDirectory("","bin",fProgram,"");
}
setPackageFolder(fProgram);
// check return value
if (err == SUCCESS)
{
// register chrome
var cf = getFolder(fProgram, "chrome/"+chromeName);
var pf = getFolder(fProgram, "chrome/"+platformName);
registerChrome(chromeType, cf, localeName + "global/");
registerChrome(chromeType, cf, localeName + "communicator/");
registerChrome(chromeType, cf, localeName + "messenger/");
registerChrome(chromeType, cf, localeName + "editor/");
registerChrome(chromeType, cf, localeName + "navigator/");
registerChrome(chromeType, cf, localeName + "aim/");
registerChrome(chromeType, cf, localeName + "necko/");
registerChrome(chromeType, cf, localeName + "cookie/");
registerChrome(chromeType, cf, localeName + "wallet/");
registerChrome(chromeType, cf, localeName + "content-packs/");
registerChrome(chromeType, cf, localeName + "help/");
registerChrome(chromeType, cf, localeName + "net2phone/");
registerChrome(chromeType, cf, localeName + "pipnss/");
registerChrome(chromeType, cf, localeName + "pippki/");
registerChrome(chromeType, pf, localeName + "global-platform/");
registerChrome(chromeType, pf, localeName + "communicator-platform/");
registerChrome(chromeType, pf, localeName + "navigator-platform/");
err = performInstall();
logComment("performInstall() returned: " + err);
}

View File

@ -18,24 +18,36 @@ logComment("fProgram: " + fProgram);
if (verifyDiskSpace(fProgram, srDest))
{
var chromeType = LOCALE;
err = addDirectory("",
"$Version$",
"bin",
fProgram,
"",
true);
"");
logComment("addDirectory() returned: " + err);
// register chrome
var cf = getFolder("Chrome");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "global-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "communicator-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "editor-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "messenger-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "navigator-region/");
if (err != SUCCESS)
{
logComment("addDirectory() to " + fProgram + "failed!");
// couldn't install globally, try installing to the profile
resetError();
chromeType |= PROFILE_CHROME;
fProgram = getFolder("Profile");
logComment("try installing to the profile: " + fProgram);
err = addDirectory("","bin/chrome",fProgram,"chrome");
}
setPackageFolder(fProgram);
if (err == SUCCESS)
{
// register chrome
var cf = getFolder(fProgram, "chrome/"+ chromeName);
registerChrome(chromeType, cf, localeName + "global-region/");
registerChrome(chromeType, cf, localeName + "communicator-region/");
registerChrome(chromeType, cf, localeName + "editor-region/");
registerChrome(chromeType, cf, localeName + "messenger-region/");
registerChrome(chromeType, cf, localeName + "navigator-region/");
err = performInstall();
logComment("performInstall() returned: " + err);
}

View File

@ -28,41 +28,57 @@ logComment("fProgram: " + fProgram);
if(verifyDiskSpace(fProgram, srDest))
{
setPackageFolder(fProgram);
var chromeType = LOCALE;
err = addDirectory("",
"$Version$",
"bin", // dir name in jar to extract
fProgram, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fProgram
true); // Force Flag
"bin", // dir name in jar to extract
fProgram, // Where to put this file (Returned from GetFolder)
""); // Force Flag
logComment("addDirectory() returned: " + err);
// register chrome
var cf = getFolder("Chrome");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "global/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "communicator/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "messenger/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "editor/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "navigator/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "necko/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "cookie/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "wallet/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "content-packs/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "help/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "pippki/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "pipnss/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "global-platform/");
registerChrome(LOCALE, getFolder(cf, platformName), localeName + "communicator-platform/");
if (err != SUCCESS)
{
logComment("addDirectory() to " + fProgram + "failed!");
// couldn't install globally, try installing to the profile
resetError();
chromeType |= PROFILE_CHROME;
fProgram = getFolder("Profile");
logComment("try installing to the user profile:" + fProgram);
err = addDirectory("","bin",fProgram,"");
}
setPackageFolder(fProgram);
// check return value
if(err == SUCCESS)
if (err == SUCCESS)
{
// register chrome
var cf = getFolder(fProgram, "chrome/"+chromeName);
var pf = getFolder(fProgram, "chrome/"+platformName);
registerChrome(chromeType, cf, localeName + "global/");
registerChrome(chromeType, cf, localeName + "communicator/");
registerChrome(chromeType, cf, localeName + "messenger/");
registerChrome(chromeType, cf, localeName + "editor/");
registerChrome(chromeType, cf, localeName + "navigator/");
registerChrome(chromeType, cf, localeName + "necko/");
registerChrome(chromeType, cf, localeName + "cookie/");
registerChrome(chromeType, cf, localeName + "wallet/");
registerChrome(chromeType, cf, localeName + "content-packs/");
registerChrome(chromeType, cf, localeName + "help/");
registerChrome(chromeType, cf, localeName + "pippki/");
registerChrome(chromeType, cf, localeName + "pipnss/");
registerChrome(chromeType, pf, localeName + "global-platform/");
registerChrome(chromeType, pf, localeName + "communicator-platform/");
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
cancelInstall(err);
logComment("cancelInstall due to error: " + err);
}
}
else
cancelInstall(INSUFFICIENT_DISK_SPACE);

View File

@ -21,31 +21,44 @@ logComment("fProgram: " + fProgram);
if(verifyDiskSpace(fProgram, srDest))
{
setPackageFolder(fProgram);
var chromeType = LOCALE;
err = addDirectory("",
"$Version$",
"bin", // dir name in jar to extract
fProgram, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fProgram
true); // Force Flag
""); // Force Flag
logComment("addDirectory() returned: " + err);
// register chrome
var cf = getFolder("Chrome");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "global-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "communicator-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "editor-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "messenger-region/");
registerChrome(LOCALE, getFolder(cf, chromeName), localeName + "navigator-region/");
// check return value
if(err == SUCCESS)
if (err != SUCCESS)
{
logComment("addDirectory() to " + fProgram + "failed!");
// couldn't install globally, try installing to the profile
resetError();
chromeType |= PROFILE_CHROME;
fProgram = getFolder("Profile");
logComment("try installing to the profile: " + fProgram);
err = addDirectory("","bin/chrome",fProgram,"chrome");
}
setPackageFolder(fProgram);
if (err == SUCCESS)
{
// register chrome
var cf = getFolder(fProgram, "chrome/"+ chromeName);
registerChrome(chromeType, cf, localeName + "global-region/");
registerChrome(chromeType, cf, localeName + "communicator-region/");
registerChrome(chromeType, cf, localeName + "editor-region/");
registerChrome(chromeType, cf, localeName + "messenger-region/");
registerChrome(chromeType, cf, localeName + "navigator-region/");
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
cancelInstall(err);
logComment("cancelInstall due to error: " + err);
}
}
else
cancelInstall(INSUFFICIENT_DISK_SPACE);