diff --git a/muk_fields_lobject/__manifest__.py b/muk_fields_lobject/__manifest__.py index 0deedf5..3c9e08a 100644 --- a/muk_fields_lobject/__manifest__.py +++ b/muk_fields_lobject/__manifest__.py @@ -32,7 +32,7 @@ They are useful with data values too large to be manipulated conveniently as a whole. """, - "version": '11.0.1.0.1', + "version": '11.0.1.0.2', "category": 'Extra Tools', "license": "AGPL-3", "website": "http://www.mukit.at", diff --git a/muk_fields_lobject/fields.py b/muk_fields_lobject/fields.py index 5829a36..fd937c6 100644 --- a/muk_fields_lobject/fields.py +++ b/muk_fields_lobject/fields.py @@ -58,7 +58,7 @@ class LargeObject(fields.Field): return lobject.oid def convert_to_record(self, value, record): - if value: + if value and isinstance(value, int): lobject = record.env.cr._cnx.lobject(value, 'rb') if record._context.get('human_size'): return human_size(lobject.seek(0, 2)) @@ -76,7 +76,7 @@ class LargeObject(fields.Field): file.write(chunk) else: return lobject.read() - return False + return value def convert_to_export(self, value, record): if value: diff --git a/muk_fields_lobject/models.py b/muk_fields_lobject/models.py index 2370626..03fd99e 100644 --- a/muk_fields_lobject/models.py +++ b/muk_fields_lobject/models.py @@ -39,7 +39,9 @@ def large_object_unlink(self): field = self._fields[name] if field.type == 'lobject' and field.store: for record in self: - oids.append(record.with_context({'oid': True})[name]) + oid = record.with_context({'oid': True})[name] + if oid: + oids.append(oid) unlink(self) for oid in oids: lobject = self.env.cr._cnx.lobject(oid, 'rb').unlink()