From 33590ff77d991763d8dc6394a98c271bab19f56e Mon Sep 17 00:00:00 2001 From: Constantin Michael Date: Mon, 17 Oct 2011 09:04:27 +0200 Subject: Do not allocate a buffer for LOB images as connections now maintain one --- odb/relational/oracle/header.cxx | 1 - odb/relational/oracle/source.cxx | 15 ++++++--------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/odb/relational/oracle/header.cxx b/odb/relational/oracle/header.cxx index 539498d..9e4bb1c 100644 --- a/odb/relational/oracle/header.cxx +++ b/odb/relational/oracle/header.cxx @@ -175,7 +175,6 @@ namespace relational "lob;" << "mutable oracle::lob_context " << mi.var << "context;" << "ub4 " << mi.var << "position_context;" - << "char " << mi.var << "buffer[4096];" << endl; } diff --git a/odb/relational/oracle/source.cxx b/odb/relational/oracle/source.cxx index e591234..25e3bc1 100644 --- a/odb/relational/oracle/source.cxx +++ b/odb/relational/oracle/source.cxx @@ -225,18 +225,15 @@ namespace relational { os << b << ".type = " << lob_buffer_types[mi.st->type - sql_type::BLOB] << ";" + << b << ".indicator = &" << arg << "." << mi.var << "indicator;" << b << ".callback = &" << arg << "." << mi.var << "callback;" - << b << ".indicator = &" << arg << "." << mi.var << "indicator;" - << b << ".size = " << "out" << endl - << "? reinterpret_cast (&" << arg << "." << mi.var << - "lob)" << endl - << ": reinterpret_cast (&" << arg << "." << mi.var << - "position_context);" << b << ".context = &" << arg << "." << mi.var << "context;" - << b << ".buffer = " << arg << "." << mi.var << "buffer;" - << b << ".capacity = static_cast (sizeof (" << arg << "." << - mi.var << "buffer));" + << "if (out)" << endl + << b << ".buffer = &" << arg << "." << mi.var << "lob;" + << "else" << endl + << b << ".size = reinterpret_cast (&" << arg << "." << + mi.var << "position_context);" << endl; } -- cgit v1.1