From 2c7405294e5af29661559572a129abd337f03043 Mon Sep 17 00:00:00 2001 From: Michael Wallner Date: Thu, 3 Sep 2015 09:30:50 +0200 Subject: [PATCH] check links and copy permissions --- bin/pharext | Bin 91216 -> 91393 bytes bin/pharext.update | Bin 91230 -> 91407 bytes src/pharext/Updater.php | 13 +++++++++++-- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/bin/pharext b/bin/pharext index 292d252ec4e8a66f34ad8503f9dcc9ea7a5037f5..62ee132e705ef2a2da1b85a4e3eeae441dbf8c2b 100755 GIT binary patch delta 560 zcmca`g0=A!>xNmJOg!Hw&*3x%Q5QM&KoldFA&4^J(gjh;T>2nt3WRqU!utZ@DRYB0 z1an(}l=MP)d$~{yY>!d*v?Rn=CA-3esRD2v(UT2-Y_fOf{bn+~G@ACg!EWC3+qgEZBG2oM&^OhYmlWV^=nKlY5u+Yi_>8nY;a zWEGP$a`RI(R7z5F3v?8~?gE<{kXn>mtf4vi;}_-W3fhb;+rK+9+A7I>U6t+Tu`cZI ZsrL1U;wt%%%XIg$GchnQxI6he0RUrIw<7=m delta 387 zcmZoX#d_fc>xNmJOyXZA&*3x%Q5QM&KoldFA&4^J(gjh;T>2nt3WRqU!utZ@DRYB0 z1an(}l=MP)d$~rnGFu+pzqNRY%{@D&gM5PQ Tyy?Y1&b?=1U|?`}@^u0Lzb%71 diff --git a/bin/pharext.update b/bin/pharext.update index 7e0a531fbb29575a6b74f303bd5e69a640938f19..f419b46da9c30040a56b99d5ffc5e9514ec9bde9 100755 GIT binary patch delta 648 zcmcb2g0=q?>xLDaOg!Hwui`WYQTI9ZKomchArH^@=b^K?7#O&C-kVI`C@4HRo=X5E zSIDIgmP=-2Uo}C z@E-CSgU!rkW?=YSxz%B^BGB>1d_o`%?tEZVYWPgRO6IUIFr@x0nKikQS90*3=834)Gg;1i$i|fhb)8Ef5tcpbMfp1i*gW0ij+9XbNQW zGBAKb5=49DF5m+?Mir#eLlCU8LJ+KPIhbm`Cb<2YAme)NdX>z)w0s3yg}l^qh2Vl5 zx6GVWPoRi~N*a)*Y0bsO$;nxs0c0y^fR*anWfuEn=4ESWYARHNBsp=K05VzEE0Azs%8Z(m4XuQ?KeA<%XHf#FQB2Or%}>!# zDM`&O&`|)p4s3QnYEf>n#^i}gD%%;I7#)>lw!ize;O4xN+s{hlqRO+bX6A-ne8t4T Kz~JuW>jVH9c-7ee delta 493 zcmeA_#d_}q>xLDaOcGxvui`WYQTI9ZKomchA&o}C z@E-CSgU!rkW?=YSxz%B^BGB>1d_o`%?tEZVYWPgRO6IUIFr@x0nKikQS90*3=834)Gg;1i$i|fhb)8Ef5tcpbMfp1i*gW0ij+9XbSA& zVPF7-B#6!}<5vMXMir#eLlCU8LJ+KPIhbm`Cb<2YAme&%mdrE-jmg=MrKZc3 Ui%sFq4fJDUVqjo!ck*=t01N!6Qvd(} diff --git a/src/pharext/Updater.php b/src/pharext/Updater.php index 7da989d..d4ba5b8 100644 --- a/src/pharext/Updater.php +++ b/src/pharext/Updater.php @@ -82,8 +82,14 @@ class Updater implements Command } foreach ($this->args[0] as $file) { - if (file_exists($file)) { - $this->updatePackage(new SplFileInfo($file)); + $info = new SplFileInfo($file); + + while ($info->isLink()) { + $info = new SplFileInfo($info->getLinkTarget()); + } + + if ($info->isFile()) { + $this->updatePackage($info); } else { $this->error("File '%s' does not exist\n", $file); exit(self::EARGS); @@ -124,6 +130,9 @@ class Updater implements Command if (!copy($file->getPathname(), $temp)) { throw new Exception; } + if (!chmod($temp, $file->getPerms())) { + throw new Exception; + } $this->replacePharext($temp); -- 2.30.2