Date: Thursday, December 15, 2005 @ 10:48:40
  Author: zsolt
    Path: /cvsroot/carob/libmysequoia/src

Modified: CarobMySQL.cpp (1.17 -> 1.18)

- corrected the max_length in the field info to return the correct value


----------------+
 CarobMySQL.cpp |   10 ++++------
 1 files changed, 4 insertions(+), 6 deletions(-)


Index: libmysequoia/src/CarobMySQL.cpp
diff -u libmysequoia/src/CarobMySQL.cpp:1.17 
libmysequoia/src/CarobMySQL.cpp:1.18
--- libmysequoia/src/CarobMySQL.cpp:1.17        Wed Dec 14 15:18:23 2005
+++ libmysequoia/src/CarobMySQL.cpp     Thu Dec 15 10:48:40 2005
@@ -584,31 +584,29 @@
   delete_row_data(row, field_count);
   
   row = new PCHAR[field_count+1];
-  memset(row, 0, sizeof(PCHAR)*field_count);
+  memset(row, 0, sizeof(PCHAR)*(field_count+1));
   
   std::string result;
-  length = 0;
 
   for (unsigned i=0; i<field_count; i++)
   {
     if (!drsPtr->isNull(i+1))
     {
       std::wstring s = drsPtr->getString(i+1);
-      unsigned long field_len = s.length() + 1;
+      unsigned long field_len = s.length();
 
       row[i] = (char *)(unsigned long)(result.size()+1);
 
       result += toString(s);
       result.push_back(0);
 
-      length += field_len;
-
-      lengths[i] = field_len - 1;      
+      lengths[i] = field_len;      
       if (fields && fields[i].max_length < field_len)
         fields[i].max_length = field_len;
     }
   }
 
+  length = result.size();
   if (result.size())
   {
     char * presult = cstrdup(result.data(), result.size());

_______________________________________________
Carob-commits mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob-commits

Reply via email to