Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 0.5.2

Bug #18130 Problems with executing checkout
Submitted: 2010-12-21 20:15 UTC
From: kiklop Assigned: mrook
Status: Closed Package: VersionControl_SVN (version 0.3.4)
PHP Version: 5.2.12 OS: Windows 2003
Roadmaps: 0.5.0    
Subscription  


 [2010-12-21 20:15 UTC] kiklop (Darko Miletic)
Description: ------------ I have a server with IIS 6 and clean install of PHP 5.2.16 with latest PEAR. While trying to use phing I discovered that it is impossible to execute checkout because escapeshellargs screws the command line. Only when I comment this line in SVN.php in run method $cmd = str_replace($this->svn_path, escapeshellarg($this->svn_path), $cmd); checkout starts working. I have no antivirus, firewall or other kind of intrusive software. Test script: --------------- <?php require_once 'VersionControl/SVN.php'; $svnstack = PEAR_ErrorStack::singleton('VersionControl_SVN'); $options = array( 'fetchmode' => VERSIONCONTROL_SVN_FETCHMODE_ARRAY, 'svn_path' => 'E:/bin/svn/bin/svn.exe' ); $svn = VersionControl_SVN::factory('co', $options); $args = array( '--trust-server-cert', 'https://svn.filezilla-project.org/svn/FileZilla3/trunk/', 'E:/Temp/tt' ); // Run command $output = $svn->run($args); if ($output) { print_r($output); } else { if (count($errs = $svnstack->getErrors())) { foreach ($errs as $err) { echo '<br />'.$err['message']."<br />\n"; echo "Command used: " . $err['params']['cmd']; } } } Expected result: ---------------- This should checkout latest filezilla code in a specified folder. Actual result: -------------- E:\test>php svntest.php <br />The filename, directory name, or volume label syntax is incorrect. (cmd: "E:/bin/svn/bin/svn.exe" checkout -- non-interactive "--trust-server-cert" "https://svn.filezilla-project.org/svn/FileZilla3/trunk/" "E:/Temp/tt")<br /> Command used: "E:/bin/svn/bin/svn.exe" checkout --non-interactive "--trust-server-cert" "https://svn.filezilla-proj ect.org/svn/FileZilla3/trunk/" "E:/Temp/tt"

Comments

 [2011-11-30 09:43 UTC] carcus88 (Mark Mitchell)
try changing this line exec("$cmd 2>&1", $out, $ret_var); to this exec("\"$cmd 2>&1\"", $out, $ret_var); Does that work for you? Thats my issue for when there are spaces in the path name.
 [2012-09-04 02:38 UTC] mrook (Michiel Rook)
-Roadmap Versions: 0.4.0, 0.5.0 +Roadmap Versions:
 [2012-10-25 01:51 UTC] mrook (Michiel Rook)
-Roadmap Versions: +Roadmap Versions: 0.5.0
 [2012-11-17 20:50 UTC] mrook (Michiel Rook)
-Status: Open +Status: Closed -Assigned To: +Assigned To: mrook
This bug has been fixed in SVN. If this was a documentation problem, the fix will appear on pear.php.net by the end of next Sunday (CET). If this was a problem with the pear.php.net website, the change should be live shortly. Otherwise, the fix will appear in the package's next release. Thank you for the report and for helping us make PEAR better.