From 2b901fb13c39f7613e28f947bd15353c379b2d06 Mon Sep 17 00:00:00 2001 From: Matthias Breddin Date: Thu, 10 Apr 2014 02:47:07 +0200 Subject: [PATCH 1/2] We should always use Interfaces if available --- src/Steam/Adapter/AdapterAbstract.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Steam/Adapter/AdapterAbstract.php b/src/Steam/Adapter/AdapterAbstract.php index d768cc1..484d180 100644 --- a/src/Steam/Adapter/AdapterAbstract.php +++ b/src/Steam/Adapter/AdapterAbstract.php @@ -2,7 +2,7 @@ namespace Steam\Adapter; -use JMS\Serializer\Serializer; +use JMS\Serializer\SerializerInterface; use Steam\Configuration; abstract class AdapterAbstract @@ -28,7 +28,7 @@ abstract class AdapterAbstract protected $_parsedBody = ''; /** - * @var Serializer + * @var SerializerInterface */ protected $_serializer = null; @@ -60,15 +60,15 @@ public function getConfig() } /** - * @param Serializer $serializer + * @param SerializerInterface $serializer */ - public function setSerializer(Serializer $serializer) + public function setSerializer(SerializerInterface $serializer) { $this->_serializer = $serializer; } /** - * @return Serializer + * @return SerializerInterface */ public function getSerializer() { From b92e9d9a5e403adf6f844442ad068746bd12bf49 Mon Sep 17 00:00:00 2001 From: Matthias Breddin Date: Thu, 10 Apr 2014 04:17:55 +0200 Subject: [PATCH 2/2] Often the Steam Users use bogus UTF-8 characters. This iconv strips out illegal characters --- src/Steam/Adapter/AdapterAbstract.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Steam/Adapter/AdapterAbstract.php b/src/Steam/Adapter/AdapterAbstract.php index 484d180..2bd4cac 100644 --- a/src/Steam/Adapter/AdapterAbstract.php +++ b/src/Steam/Adapter/AdapterAbstract.php @@ -88,6 +88,6 @@ public function getRawBody() */ public function getParsedBody() { - return $this->getSerializer()->deserialize($this->getRawBody(), 'array', 'json'); + return $this->getSerializer()->deserialize(iconv('UTF-8', 'UTF-8//IGNORE', utf8_encode($this->getRawBody())), 'array', 'json'); } } \ No newline at end of file