Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Wurst <christoph@winzerhof-wurst.at>2020-08-28 15:30:33 +0300
committerChristoph Wurst <christoph@winzerhof-wurst.at>2020-08-28 15:30:33 +0300
commit3bc54bfd062d9396f438a295ebc1dd16cbed0e5e (patch)
tree5d15964fe4a79a4ccbd5a53472a3feba74267bf4 /lib/public/AppFramework
parent286bf2b84ffda4c5878026b28aa2bdd0ef75b54a (diff)
Fix writing BLOBs to postgres with recent contacts interaction
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Diffstat (limited to 'lib/public/AppFramework')
-rw-r--r--lib/public/AppFramework/Db/Entity.php7
-rw-r--r--lib/public/AppFramework/Db/QBMapper.php2
2 files changed, 8 insertions, 1 deletions
diff --git a/lib/public/AppFramework/Db/Entity.php b/lib/public/AppFramework/Db/Entity.php
index 954b8787c4c..34719c82aea 100644
--- a/lib/public/AppFramework/Db/Entity.php
+++ b/lib/public/AppFramework/Db/Entity.php
@@ -110,7 +110,12 @@ abstract class Entity {
// if type definition exists, cast to correct type
if ($args[0] !== null && array_key_exists($name, $this->_fieldTypes)) {
- settype($args[0], $this->_fieldTypes[$name]);
+ $type = $this->_fieldTypes[$name];
+ if ($type === 'blob') {
+ // (B)LOB is treated as string when we read from the DB
+ $type = 'string';
+ }
+ settype($args[0], $type);
}
$this->$name = $args[0];
} else {
diff --git a/lib/public/AppFramework/Db/QBMapper.php b/lib/public/AppFramework/Db/QBMapper.php
index 9b396965706..ebbe92e7875 100644
--- a/lib/public/AppFramework/Db/QBMapper.php
+++ b/lib/public/AppFramework/Db/QBMapper.php
@@ -230,6 +230,8 @@ abstract class QBMapper {
case 'bool':
case 'boolean':
return IQueryBuilder::PARAM_BOOL;
+ case 'blob':
+ return IQueryBuilder::PARAM_LOB;
}
return IQueryBuilder::PARAM_STR;