diff options
author | Byron Nikolaidis | 1999-10-25 01:11:44 +0000 |
---|---|---|
committer | Byron Nikolaidis | 1999-10-25 01:11:44 +0000 |
commit | c4c8e812b4ed3f50f4701169c4e302c7aeb8a548 (patch) | |
tree | 7b566c5281ccb6719b2f5d5848f5b5c1e4671b10 | |
parent | eae456cd7fcdc5de759b38ef1d114f7770775483 (diff) |
bug fix for large objects (free)
-rw-r--r-- | src/interfaces/odbc/bind.c | 3 | ||||
-rw-r--r-- | src/interfaces/odbc/statement.c | 5 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/interfaces/odbc/bind.c b/src/interfaces/odbc/bind.c index 285fabd75ab..67811f39265 100644 --- a/src/interfaces/odbc/bind.c +++ b/src/interfaces/odbc/bind.c @@ -124,7 +124,8 @@ static char *func="SQLBindParameter"; } if (stmt->parameters[ipar].EXEC_buffer) { - free(stmt->parameters[ipar].EXEC_buffer); + if (stmt->parameters[ipar].SQLType != SQL_LONGVARBINARY) + free(stmt->parameters[ipar].EXEC_buffer); stmt->parameters[ipar].EXEC_buffer = NULL; } diff --git a/src/interfaces/odbc/statement.c b/src/interfaces/odbc/statement.c index c11a0ab2169..5aa540ec277 100644 --- a/src/interfaces/odbc/statement.c +++ b/src/interfaces/odbc/statement.c @@ -327,7 +327,8 @@ int i; } if (self->parameters[i].EXEC_buffer) { - free(self->parameters[i].EXEC_buffer); + if (self->parameters[i].SQLType != SQL_LONGVARBINARY) + free(self->parameters[i].EXEC_buffer); self->parameters[i].EXEC_buffer = NULL; } } @@ -875,7 +876,7 @@ QueryInfo qi; */ } else { - self->errornumber = STMT_BAD_ERROR; + self->errornumber = STMT_EXEC_ERROR; self->errormsg = "Error while executing the query"; } |