diff --git a/libmariadb/mariadb_lib.c b/libmariadb/mariadb_lib.c index a0b71c48..0c863a68 100644 --- a/libmariadb/mariadb_lib.c +++ b/libmariadb/mariadb_lib.c @@ -217,7 +217,8 @@ restart: len-=2; if (last_errno== 65535 && - (mysql->server_capabilities & CLIENT_PROGRESS)) + ((mariadb_connection(mysql) && (mysql->server_capabilities & CLIENT_PROGRESS)) || + (!(mysql->server_capabilities & CLIENT_MYSQL) && mysql->server_capabilities & MARIADB_CLIENT_PROGRESS))) { if (cli_report_progress(mysql, (uchar *)pos, (uint) (len-1))) { diff --git a/libmariadb/mariadb_stmt.c b/libmariadb/mariadb_stmt.c index 3942ae7e..e40ca3b1 100644 --- a/libmariadb/mariadb_stmt.c +++ b/libmariadb/mariadb_stmt.c @@ -1253,7 +1253,7 @@ int STDCALL mysql_stmt_prepare(MYSQL_STMT *stmt, const char *query, size_t lengt on server side. Statment handle will get a new stmt_id */ char stmt_id[STMT_ID_LENGTH]; - if (mysql_stmt_reset(stmt)) + if (mysql_stmt_internal_reset(stmt, 1)) goto fail; ma_free_root(&stmt->mem_root, MYF(MY_KEEP_PREALLOC));