aboutsummaryrefslogtreecommitdiff
path: root/odb/oracle/oracle-types.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/oracle/oracle-types.cxx')
-rw-r--r--odb/oracle/oracle-types.cxx38
1 files changed, 38 insertions, 0 deletions
diff --git a/odb/oracle/oracle-types.cxx b/odb/oracle/oracle-types.cxx
index 9de57cd..9f2ca3e 100644
--- a/odb/oracle/oracle-types.cxx
+++ b/odb/oracle/oracle-types.cxx
@@ -15,6 +15,44 @@ namespace odb
namespace oracle
{
//
+ // lob
+ //
+
+ lob::
+ ~lob ()
+ {
+ if (locator != 0)
+ OCIDescriptorFree (locator, OCI_DTYPE_LOB);
+ }
+
+ lob::
+ lob (lob& x)
+ : locator (x.locator),
+ buffer (x.buffer),
+ position_context (x.position_context)
+ {
+ x.locator = 0;
+ }
+
+ lob& lob::
+ operator= (lob& x)
+ {
+ if (this != &x)
+ {
+ if (locator != 0)
+ OCIDescriptorFree (locator, OCI_DTYPE_LOB);
+
+ locator = x.locator;
+ buffer = x.buffer;
+ position_context = x.position_context;
+
+ x.locator = 0;
+ }
+
+ return *this;
+ }
+
+ //
// datetime
//