summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-12-22 11:28:34 -0800
committerBrion Vibber <brion@pobox.com>2010-12-22 11:28:34 -0800
commit055630516c5d47be62078e4798095e5dac5c71e9 (patch)
treefa6d4c0d78545ff01946ab38785a2f5b441cfd4f
parent5fe83011299ac930def8e1db5f9eeae782ddb14c (diff)
parent754bc1b6164b82109acd14d70b295291f40d07c7 (diff)
Merge branch 'righttoleave' into 0.9.x
-rw-r--r--actions/backupaccount.php2
-rw-r--r--actions/restoreaccount.php14
2 files changed, 12 insertions, 4 deletions
diff --git a/actions/backupaccount.php b/actions/backupaccount.php
index 9454741f0..4f6fb936b 100644
--- a/actions/backupaccount.php
+++ b/actions/backupaccount.php
@@ -97,7 +97,7 @@ class BackupaccountAction extends Action
function handle($argarray=null)
{
- parent::handle($args);
+ parent::handle($argarray);
if ($this->isPost()) {
$this->sendFeed();
diff --git a/actions/restoreaccount.php b/actions/restoreaccount.php
index c33756d48..5c8e4a12c 100644
--- a/actions/restoreaccount.php
+++ b/actions/restoreaccount.php
@@ -95,7 +95,7 @@ class RestoreaccountAction extends Action
function handle($argarray=null)
{
- parent::handle($args);
+ parent::handle($argarray);
if ($this->isPost()) {
$this->restoreAccount();
@@ -143,6 +143,7 @@ class RestoreaccountAction extends Action
return;
case UPLOAD_ERR_NO_FILE:
// No file; probably just a non-AJAX submission.
+ throw new ClientException(_('No uploaded file.'));
return;
case UPLOAD_ERR_NO_TMP_DIR:
// TRANS: Client exception thrown when a temporary folder is not present to store a file upload.
@@ -185,12 +186,19 @@ class RestoreaccountAction extends Action
// This check is costly but we should probably give
// the user some info ahead of time.
+ $doc = new DOMDocument();
- $doc = DOMDocument::loadXML($xml);
+ // Disable PHP warnings so we don't spew low-level XML errors to output...
+ // would be nice if we can just get exceptions instead.
+ $old_err = error_reporting();
+ error_reporting($old_err & ~E_WARNING);
+ $doc->loadXML($xml);
+ error_reporting($old_err);
$feed = $doc->documentElement;
- if ($feed->namespaceURI != Activity::ATOM ||
+ if (!$feed ||
+ $feed->namespaceURI != Activity::ATOM ||
$feed->localName != 'feed') {
throw new ClientException(_("Not an atom feed."));
}