Avoid spewing giant debug backtrace into exception in certain OStatus subscription failure cases.

The code pattern 'new XXXException($e)' to chain exceptions doesn't actually work as intended, as exceptions are actually expecting a string message here.
This caused an implicit string conversion from HTTP_Request2_Exception, which is a PEAR_Exception, which defines an absurdly detailed __toString() method including a giant HTML table with a backtrace if you happen to be on a web request.
Simply passing $e->getMessage() instead clears this up, as we'll get the nice short message like 'Couldn't connect to tcp://blahblah:80'
This commit is contained in:
Brion Vibber 2010-05-04 17:11:43 -07:00
parent 9d2c3d45bc
commit 5f5d9518bd

View File

@ -104,7 +104,7 @@ class FeedDiscovery
$response = $client->get($url);
} catch (HTTP_Request2_Exception $e) {
common_log(LOG_ERR, __METHOD__ . " Failure for $url - " . $e->getMessage());
throw new FeedSubBadURLException($e);
throw new FeedSubBadURLException($e->getMessage());
}
if ($htmlOk) {