DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Untracked file

Line Code
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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
function upgradeCleanup()
{
  deleteThisFile("Program",    "zlib.dll");
  deleteThisFile("Program",    "component.reg");
  deleteThisFile("Components", "compreg.dat");
  deleteThisFile("Components", "xpti.dat");
  deleteThisFile("Components", "xptitemp.dat");
}

// main
var srDest;
var err;
var szUninstall;
var fProgram;
var fWindowsSystem;
var fileComponentReg;
var fileComponentRegStr;
var fileMsvcrt;
var fileMsvcirt;

srDest = $SpaceRequired$:bin;
err    = initInstall("Mozilla XPCOM", "XPCOM", "$Version$"); 
logComment("initInstall: " + err);

fProgram  = getFolder("Program");
fWindowsSystem = getFolder("Win System");
logComment("fProgram: " + fProgram);

// build the uninstall folder path
szUninstall = fProgram + "Uninstall";

// Log component.reg file so it can be deleted by the uninstaller.
// These two files are created after installation is done, thus
// are normally not logged for uninstall.
logComment("Installing: " + fProgram + "component.reg");

if(verifyDiskSpace(fProgram, srDest))
{
  setPackageFolder(fProgram);

  upgradeCleanup();
  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 
  logComment("addDirectory() of Program returned: " + err);

  if( err == SUCCESS )
  {
    // install msvcrt.dll *only* if it does not exist
    // we don't care if addFile() fails (if the file does not exist in the archive)
    // bacause it will still install
    fileMsvcrt = getFolder(fWindowsSystem, "msvcrt.dll");
    rv         = File.exists(fileMsvcrt);
    logComment("fileExists() returned: " + rv);
    if(rv == false)
    {
      logComment("File not found: " + fileMsvcrt);
      addFile("/Microsoft/Shared/msvcrt.dll",
              "$Version$",
              "msvcrt.dll",         // dir name in jar to extract 
              fWindowsSystem,       // Where to put this file (Returned from getFolder) 
              "",                   // subdir name to create relative to fProgram
              WIN_SHARED_FILE);
      logComment("addFile() of msvcrt.dll returned: " + err);
    }
    else
    {
      logComment("File found: " + fileMsvcrt);
    }

    // install msvcirt.dll *only* if it does not exist
    // we don't care if addFile() fails (if the file does not exist in the archive)
    // bacause it will still install
    fileMsvcirt = getFolder(fWindowsSystem, "msvcirt.dll");
    rv          = File.exists(fileMsvcirt);
    logComment("fileExists() returned: " + rv);
    if(rv == false)
    {
      logComment("File not found: " + fileMsvcirt);
      addFile("/Microsoft/Shared/msvcirt.dll",
              "$Version$",
              "msvcirt.dll",        // dir name in jar to extract 
              fWindowsSystem,       // Where to put this file (Returned from getFolder) 
              "",                   // subdir name to create relative to fProgram
              WIN_SHARED_FILE);
      logComment("addFile() of msvcirt.dll returned: " + err);
    }
    else
    {
      logComment("File found: " + fileMsvcirt);
    }
  }

  // check return value
  if( err == SUCCESS )
  {
    err = performInstall(); 
    logComment("performInstall() returned: " + err);
  }
  else
    cancelInstall(err);
}
else
  cancelInstall(INSUFFICIENT_DISK_SPACE);


// end main