Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F2893129
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Advanced/Developer...
View Handle
View Hovercard
Size
2 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/src/applications/repository/response/PhabricatorVCSResponse.php b/src/applications/repository/response/PhabricatorVCSResponse.php
index aa0a3dff1d..544dc1f0ff 100644
--- a/src/applications/repository/response/PhabricatorVCSResponse.php
+++ b/src/applications/repository/response/PhabricatorVCSResponse.php
@@ -1,62 +1,74 @@
<?php
/**
* In Git, there appears to be no way to send a message which will be output
- * by `git clone http://...`, although the response code is visible.
+ * by `git clone http://...`, although the response code is visible. We send
+ * the message in a header which is visible with "GIT_CURL_VERBOSE" if you
+ * know where to look.
*
* In Mercurial, the HTTP status response message is printed to the console, so
* we send human-readable text there.
*
* In Subversion, we can get it to print a custom message if we send an
* invalid/unknown response code, although the output is ugly and difficult
* to read. For known codes like 404, it prints a canned message.
*
* All VCS binaries ignore the response body; we include it only for
* completeness.
*/
final class PhabricatorVCSResponse extends AphrontResponse {
private $code;
private $message;
public function __construct($code, $message) {
$this->code = $code;
$message = head(phutil_split_lines($message));
$this->message = $message;
}
public function getMessage() {
return $this->message;
}
public function buildResponseString() {
return $this->code.' '.$this->message;
}
public function getHeaders() {
$headers = array();
if ($this->getHTTPResponseCode() == 401) {
$headers[] = array(
'WWW-Authenticate',
'Basic realm="Phabricator Repositories"',
);
}
+ $message = $this->getMessage();
+ if (strlen($message)) {
+ foreach (phutil_split_lines($message, false) as $line) {
+ $headers[] = array(
+ 'X-Phabricator-Message',
+ $line,
+ );
+ }
+ }
+
return $headers;
}
public function getCacheHeaders() {
return array();
}
public function getHTTPResponseCode() {
return $this->code;
}
public function getHTTPResponseMessage() {
return $this->message;
}
}
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sun, Jan 19, 17:55 (1 w, 5 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1127174
Default Alt Text
(2 KB)
Attached To
Mode
rP Phorge
Attached
Detach File
Event Timeline
Log In to Comment