From 3f9bb62d87a49000213ac2802758011f962cd991 Mon Sep 17 00:00:00 2001 From: Giovanni Mele Date: Fri, 17 Jun 2016 16:57:48 +0200 Subject: [PATCH] db_unixodbc: do not consider SQL_NO_DATA return code as an error (cherry picked from commit feb195b2d9c801bc3591b1e95de6b70956e76dfe) (cherry picked from commit 6f8ff98f10a6df21a1b669881fef5df91254446b) (cherry picked from commit f525e3e015586c27969499c3e5cd5a8266dc3a85) --- modules/db_unixodbc/dbase.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/db_unixodbc/dbase.c b/modules/db_unixodbc/dbase.c index 346010c44d4..d5c7d2794e4 100644 --- a/modules/db_unixodbc/dbase.c +++ b/modules/db_unixodbc/dbase.c @@ -127,7 +127,9 @@ static int db_unixodbc_submit_query(const db1_con_t* _h, const str* _s) } ret=SQLExecDirect(CON_RESULT(_h), (SQLCHAR*)_s->s, _s->len); - if (!SQL_SUCCEEDED(ret)) + + /* Handle SQL_NO_DATA as a valid return code. DELETE and UPDATE statements may return this return code if nothing was deleted/updated. */ + if (!SQL_SUCCEEDED(ret) && (ret != SQL_NO_DATA)) { SQLCHAR sqlstate[7]; LM_ERR("rv=%d. Query= %.*s\n", ret, _s->len, _s->s);