From 119e5ca38c0969bd78c32c12e6fb7da49f4785a7 Mon Sep 17 00:00:00 2001 From: Henry Castro Date: Thu, 17 Mar 2016 09:58:11 -0400 Subject: [PATCH 1/2] Fix inconsistent validation bug --- controller/documentcontroller.php | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/controller/documentcontroller.php b/controller/documentcontroller.php index e1cea878..e405b9e2 100644 --- a/controller/documentcontroller.php +++ b/controller/documentcontroller.php @@ -110,23 +110,24 @@ class DocumentController extends Controller{ try { $wopiClient = \OC::$server->getHTTPClientService()->newClient(); $xmlBody = $wopiClient->get($wopiDiscovery)->getBody(); - if (!$xmlBody) { - return $this->responseError('failure body content', $wopiRemote); - } } catch (\Exception $e) { return $this->responseError($e->getMessage(), $wopiRemote); } - } - $loadEntities = libxml_disable_entity_loader(true); - $data = simplexml_load_string($xmlBody); - libxml_disable_entity_loader($loadEntities); - if ($data !== false) { - $this->cache->set('discovery.xml', $xmlBody, 3600); - } - else { - return $this->responseError('failure discovery.xml not well-formed XML string', $wopiRemote); + if (!$xmlBody) { + return $this->responseError('failure body content', $wopiRemote); + } + + $loadEntities = libxml_disable_entity_loader(true); + $data = simplexml_load_string($xmlBody); + libxml_disable_entity_loader($loadEntities); + if ($data !== false) { + $this->cache->set('discovery.xml', $xmlBody, 3600); + } + else { + return $this->responseError('failure discovery.xml not well-formed XML string', $wopiRemote); + } } \OC::$server->getNavigationManager()->setActiveEntry( 'richdocuments_index' ); From 0d243cbc608811ce48fe0f1977206e0a348ed919 Mon Sep 17 00:00:00 2001 From: Henry Castro Date: Thu, 17 Mar 2016 10:00:46 -0400 Subject: [PATCH 2/2] Clear cache when saves admin settings --- controller/settingscontroller.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/controller/settingscontroller.php b/controller/settingscontroller.php index 61b5d840..79f12752 100644 --- a/controller/settingscontroller.php +++ b/controller/settingscontroller.php @@ -115,6 +115,9 @@ class SettingsController extends Controller{ $this->appConfig->setAppValue('wopi_url', $wopi_url); } + $richMemCache = \OC::$server->getMemCacheFactory()->create('richdocuments'); + $richMemCache->clear('discovery.xml'); + $response = array( 'status' => 'success', 'data' => array('message' => (string) $this->l10n->t('Saved'))