Skip to content
Snippets Groups Projects
Commit ed125d48 authored by Dries Buytaert's avatar Dries Buytaert
Browse files

- Patch #858528 by Damien Tournoud, chx: file_uri_target() purpose is unclear.

parent a25b6054
No related branches found
No related tags found
2 merge requests!7452Issue #1797438. HTML5 validation is preventing form submit and not fully...,!789Issue #3210310: Adjust Database API to remove deprecated Drupal 9 code in Drupal 10
......@@ -203,7 +203,7 @@ function file_stream_wrapper_valid_scheme($scheme) {
}
/**
* Returns the target of a URI (e.g. a stream).
* Returns the part of an URI after the schema.
*
* @param $uri
* A stream, referenced as "scheme://target".
......@@ -216,10 +216,10 @@ function file_stream_wrapper_valid_scheme($scheme) {
* @see file_uri_scheme()
*/
function file_uri_target($uri) {
if ($scheme = file_uri_scheme($uri)) {
return file_stream_wrapper_get_instance_by_scheme($scheme)->getTarget($uri);
}
return FALSE;
$data = explode('://', $uri, 2);
// Remove erroneous leading or trailing, forward-slashes and backslashes.
return count($data) == 2 ? trim($data[1], '\/') : FALSE;
}
/**
......
......@@ -145,24 +145,6 @@ public function getUri();
*/
public function getExternalUrl();
/**
* Returns the local writable target of the resource within the stream.
*
* This function should be used in place of calls to realpath() or similar
* functions when attempting to determine the location of a file. While
* functions like realpath() may return the location of a read-only file, this
* method may return a URI or path suitable for writing that is completely
* separate from the URI used for reading.
*
* @param $uri
* Optional URI.
*
* @return
* Returns a string representing a location suitable for writing of a file,
* or FALSE if unable to write to the file such as with read-only streams.
*/
public function getTarget($uri = NULL);
/**
* Returns the MIME type of the resource.
*
......@@ -286,9 +268,22 @@ function getUri() {
}
/**
* Base implementation of getTarget().
* Returns the local writable target of the resource within the stream.
*
* This function should be used in place of calls to realpath() or similar
* functions when attempting to determine the location of a file. While
* functions like realpath() may return the location of a read-only file, this
* method may return a URI or path suitable for writing that is completely
* separate from the URI used for reading.
*
* @param $uri
* Optional URI.
*
* @return
* Returns a string representing a location suitable for writing of a file,
* or FALSE if unable to write to the file such as with read-only streams.
*/
function getTarget($uri = NULL) {
protected function getTarget($uri = NULL) {
if (!isset($uri)) {
$uri = $this->uri;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment