From a7b1a008cdf4032dbabc9a174928c5584f09a64f Mon Sep 17 00:00:00 2001
From: Byron Nikolaidis <byronn@insightdist.com>
Date: Mon, 28 Feb 2000 00:23:18 +0000
Subject: [PATCH] missing state transition

---
 src/interfaces/odbc/execute.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/interfaces/odbc/execute.c b/src/interfaces/odbc/execute.c
index fd82e0df718..3f3549c89fd 100644
--- a/src/interfaces/odbc/execute.c
+++ b/src/interfaces/odbc/execute.c
@@ -157,6 +157,13 @@ static char *func = "SQLExecDirect";
 	mylog("**** %s: hstmt=%u, statement='%s'\n", func, hstmt, stmt->statement);
 
 	stmt->prepare = FALSE;
+
+	// If an SQLPrepare was performed prior to this, but was left in 
+	// the premature state because an error occurred prior to SQLExecute
+	// then set the statement to finished so it can be recycled.
+	if ( stmt->status == STMT_PREMATURE )
+		stmt->status = STMT_FINISHED;
+
 	stmt->statement_type = statement_type(stmt->statement);
 
 	//	Check if connection is onlyread (only selects are allowed)
-- 
GitLab