Fix uploading files containing a # in the path for webdav
This commit is contained in:
parent
65e3f63400
commit
76c63a5760
2 changed files with 21 additions and 2 deletions
|
@ -267,7 +267,7 @@ class DAV extends \OC\Files\Storage\Common {
|
|||
|
||||
$curl = curl_init();
|
||||
curl_setopt($curl, CURLOPT_USERPWD, $this->user . ':' . $this->password);
|
||||
curl_setopt($curl, CURLOPT_URL, $this->createBaseUri() . str_replace(' ', '%20', $target));
|
||||
curl_setopt($curl, CURLOPT_URL, $this->createBaseUri() . $this->encodePath($target));
|
||||
curl_setopt($curl, CURLOPT_BINARYTRANSFER, true);
|
||||
curl_setopt($curl, CURLOPT_INFILE, $source); // file pointer
|
||||
curl_setopt($curl, CURLOPT_INFILESIZE, filesize($path));
|
||||
|
|
|
@ -299,7 +299,7 @@ abstract class Storage extends \PHPUnit_Framework_TestCase {
|
|||
$this->assertFalse($this->instance->file_exists('folder'));
|
||||
}
|
||||
|
||||
public function hashProvider(){
|
||||
public function hashProvider() {
|
||||
return array(
|
||||
array('Foobar', 'md5'),
|
||||
array('Foobar', 'sha1'),
|
||||
|
@ -315,4 +315,23 @@ abstract class Storage extends \PHPUnit_Framework_TestCase {
|
|||
$this->assertEquals(hash($type, $data), $this->instance->hash($type, 'hash.txt'));
|
||||
$this->assertEquals(hash($type, $data, true), $this->instance->hash($type, 'hash.txt', true));
|
||||
}
|
||||
|
||||
public function testHashInFileName() {
|
||||
$this->instance->file_put_contents('#test.txt', 'data');
|
||||
$this->assertEquals('data', $this->instance->file_get_contents('#test.txt'));
|
||||
|
||||
$this->instance->mkdir('#foo');
|
||||
$this->instance->file_put_contents('#foo/test.txt', 'data');
|
||||
$this->assertEquals('data', $this->instance->file_get_contents('#foo/test.txt'));
|
||||
|
||||
$dh = $this->instance->opendir('#foo');
|
||||
$content = array();
|
||||
while ($file = readdir($dh)) {
|
||||
if ($file != '.' and $file != '..') {
|
||||
$content[] = $file;
|
||||
}
|
||||
}
|
||||
|
||||
$this->assertEquals(array('test.txt'), $content);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue