summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas V.V.Cox <cox@php.net>2001-10-09 02:56:33 +0000
committerTomas V.V.Cox <cox@php.net>2001-10-09 02:56:33 +0000
commitd557151ce77e0b9eb9ff088e3555586e323a0099 (patch)
tree72396ce7859a78352f346004b5c19f767c264a50
parent3bf9d3d82f5466af38ba55760479b645a7d3dd42 (diff)
downloadphp-git-d557151ce77e0b9eb9ff088e3555586e323a0099.tar.gz
more clean up/fixes
-rw-r--r--pear/PEAR/Common.php3
-rw-r--r--pear/PEAR/Installer.php2
-rw-r--r--pear/PEAR/Packager.php32
3 files changed, 18 insertions, 19 deletions
diff --git a/pear/PEAR/Common.php b/pear/PEAR/Common.php
index 2c963cb5cf..6f2385c8e0 100644
--- a/pear/PEAR/Common.php
+++ b/pear/PEAR/Common.php
@@ -74,7 +74,6 @@ class PEAR_Common extends PEAR
function _PEAR_Common()
{
- $this->_PEAR();
while (is_array($this->_tempfiles) &&
$file = array_shift($this->_tempfiles))
{
@@ -129,7 +128,7 @@ class PEAR_Common extends PEAR
function mkTempDir()
{
$dir = (OS_WINDOWS) ? 'c:\\windows\\temp' : '/tmp';
- $tmpdir = tempnam($tmpdir, 'pear');
+ $tmpdir = tempnam($dir, 'pear');
unlink($tmpdir);
if (!mkdir($tmpdir, 0700)) {
return $this->raiseError("Unable to create temporary directory $tmpdir");
diff --git a/pear/PEAR/Installer.php b/pear/PEAR/Installer.php
index f2ec95f729..1bd0eabc1b 100644
--- a/pear/PEAR/Installer.php
+++ b/pear/PEAR/Installer.php
@@ -198,7 +198,7 @@ class PEAR_Installer extends PEAR_Common
{
$type = strtolower($atts['ROLE']);
switch ($type) {
- case "test":
+ case 'test':
// don't install test files for now
$this->log(2, "+ Test file $file won't be installed yet");
return true;
diff --git a/pear/PEAR/Packager.php b/pear/PEAR/Packager.php
index 16dcd9a0f5..f07764a818 100644
--- a/pear/PEAR/Packager.php
+++ b/pear/PEAR/Packager.php
@@ -88,6 +88,7 @@ class PEAR_Packager extends PEAR_Common
function _PEAR_Packager()
{
+ chdir($this->orig_pwd);
$this->_PEAR_Common();
}
@@ -97,6 +98,7 @@ class PEAR_Packager extends PEAR_Common
function package($pkgfile = null)
{
+ $this->orig_pwd = getcwd();
if (empty($pkgfile)) {
$pkgfile = 'package.xml';
}
@@ -105,7 +107,6 @@ class PEAR_Packager extends PEAR_Common
return $pkginfo;
}
// TMP DIR -------------------------------------------------
- $orig_pwd = getcwd();
// We allow calls like "pear package /home/user/mypack/package.xml"
if (!@chdir(dirname($pkgfile))) {
return $this->raiseError('Couldn\'t chdir to package.xml dir',
@@ -118,22 +119,22 @@ class PEAR_Packager extends PEAR_Common
$pkgversion = ereg_replace ('[^a-zA-Z0-9._\-]', '_', $pkginfo['version']);
$pkgver = $pkgname . '-' . $pkgversion;
- $this->tmpdir = $pwd . DIRECTORY_SEPARATOR . $pkgver;
- if (file_exists($this->tmpdir)) {
- return $this->raiseError('Tmpdir: ' . $this->tmpdir .' already exists',
+ $tmpdir = $pwd . DIRECTORY_SEPARATOR . $pkgver;
+ if (file_exists($tmpdir)) {
+ return $this->raiseError('Tmpdir: ' . $tmpdir .' already exists',
null, PEAR_ERROR_TRIGGER, E_USER_ERROR);
}
- if (!mkdir($this->tmpdir, 0755)) {
- return $this->raiseError("Unable to create temporary directory $this->tmpdir.",
+ if (!mkdir($tmpdir, 0700)) {
+ return $this->raiseError("Unable to create temporary directory $tmpdir.",
null, PEAR_ERROR_TRIGGER, E_USER_ERROR);
} else {
- $this->log(2, "+ tmp dir created at: " . $this->tmpdir);
+ $this->log(2, "+ tmp dir created at: " . $tmpdir);
}
- $this->addTempFile($this->tmpdir);
+ $this->addTempFile($tmpdir);
// Copy files -----------------------------------------------
foreach ($pkginfo['filelist'] as $fname => $atts) {
- $file = $this->tmpdir . DIRECTORY_SEPARATOR . $fname;
+ $file = $tmpdir . DIRECTORY_SEPARATOR . $fname;
$dir = dirname($file);
if (!@is_dir($dir)) {
if (!$this->mkDirHier($dir)) {
@@ -145,31 +146,30 @@ class PEAR_Packager extends PEAR_Common
if (!@copy($fname, $file)) {
$this->log(0, "could not copy $fname to $file");
} else {
- $this->log(2, "+ copying from $fname to $file");
+ $this->log(2, "+ copying $fname to $file");
@chmod($file, $orig_perms);
}
}
// XXX TODO: Rebuild the package file as the old method did?
// This allows build packages from different pear pack def files
- $dest_pkgfile = $this->tmpdir . DIRECTORY_SEPARATOR . 'package.xml';
+ $dest_pkgfile = $tmpdir . DIRECTORY_SEPARATOR . 'package.xml';
$this->log(2, "+ copying package $pkgfile to $dest_pkgfile");
if (!@copy($pkgfile, $dest_pkgfile)) {
return $this->raiseError("could not copy $pkgfile to $dest_pkgfile");
}
- chmod($dest_pkgfile, 0644);
+ @chmod($dest_pkgfile, 0644);
// TAR the Package -------------------------------------------
- chdir(dirname($this->tmpdir));
- $dest_package = $orig_pwd . DIRECTORY_SEPARATOR . "${pkgver}.tgz";
- $this->log(2, "Attempting to pack {$this->tmpdir} $contents_dir dir in $dest_package");
+ chdir(dirname($tmpdir));
+ $dest_package = $this->orig_pwd . DIRECTORY_SEPARATOR . "{$pkgver}.tgz";
+ $this->log(2, "Attempting to pack $tmpdir dir in $dest_package");
$tar = new Archive_Tar($dest_package, true);
$tar->setErrorHandling(PEAR_ERROR_PRINT);
if (!$tar->create($pkgver)) {
return $this->raiseError('an error ocurred during package creation');
}
$this->log(1, "Package $dest_package done");
- chdir($orig_pwd);
return $dest_package;
}