List:Commits« Previous MessageNext Message »
From:bdegtyariov Date:July 17 2006 11:07am
Subject:Connector/ODBC 3.51 commit: r49 - / myodbc3
View as plain text  
Modified:
   ChangeLog
   myodbc3/cursor.c
Log:
fixed bug #20547 - SQL_LEN_DATA_AT_EXEC not working

Modified: ChangeLog
===================================================================
--- ChangeLog	2006-07-17 10:41:28 UTC (rev 48)
+++ ChangeLog	2006-07-17 11:07:56 UTC (rev 49)
@@ -6,7 +6,7 @@
 ---------------------------------------------
 22-FEB-2006 (3.51.13): pharvey@stripped
 ---------------------------------------------
-
+-- fixed bug #20547 - SQL_LEN_DATA_AT_EXEC not working
 -- fixed problem with query log
 -- added support for SQLMoreResults
 -- SQL_ATTR_CONNECTION_DEAD now calls mysql_ping everytime

Modified: myodbc3/cursor.c
===================================================================
--- myodbc3/cursor.c	2006-07-17 10:41:28 UTC (rev 48)
+++ myodbc3/cursor.c	2006-07-17 11:07:56 UTC (rev 49)
@@ -829,7 +829,14 @@
         param.CType= bind->fCType;
         param.buffer= (gptr) bind->rgbValue+irow*bind->cbValueMax;
         param.ValueMax= bind->cbValueMax;
-        length= length == (SQLUINTEGER) SQL_NTS ? strlen(param.buffer) : length;
+        /*
+            Check when SQL_LEN_DATA_AT_EXEC() macro was used instead of data length
+        */
+        if ( length == (SQLUINTEGER)SQL_NTS )
+            length= strlen(param.buffer);
+                else if ( length <= SQL_LEN_DATA_AT_EXEC_OFFSET )
+                    length= -( length - SQL_LEN_DATA_AT_EXEC_OFFSET );
+
         param.actual_len= &length;
 
         if ( copy_rowdata(stmt,param,&net,&to) != SQL_SUCCESS )

Thread
Connector/ODBC 3.51 commit: r49 - / myodbc3bdegtyariov17 Jul