Index: src/db/oracle/OracleResultSet.c
===================================================================
--- src/db/oracle/OracleResultSet.c	(revision 542)
+++ src/db/oracle/OracleResultSet.c	(working copy)
@@ -283,14 +283,12 @@
         TEST_INDEX
         if (R->columns[i].isNull) 
                 return NULL;
-        if (R->columns[i].buffer) {
-                *size = (int)R->columns[i].length;
-                return (const void *)R->columns[i].buffer;
-        }
         oraub8 read_chars = 0;
         oraub8 read_bytes = 0;
         oraub8 total_bytes = 0;
-        R->columns[i].buffer = ALLOC(LOB_CHUNK_SIZE);
+        if (R->columns[i].buffer == NULL) {
+                R->columns[i].buffer = ALLOC(LOB_CHUNK_SIZE);
+        }
         *size = 0;
         ub1 piece = OCI_FIRST_PIECE;
         do {

