static int gt_rdb_stmt_mysql_reset(GtRDBStmt *st, GtError *err) { GtRDBStmtMySQL *stm; int rval, had_err = 0; gt_assert(st); gt_error_check(err); stm = gt_rdb_stmt_mysql_cast(st); gt_hashtable_reset(stm->buffers); gt_hashtable_reset(stm->returned_strings); mysql_stmt_free_result(stm->stmt); if ((rval = mysql_stmt_reset(stm->stmt))) { gt_error_set(err, GT_MYSQL_ERRMSG, rval, mysql_stmt_error(stm->stmt)); had_err = -1; } memset(stm->params, 0, stm->num_params*sizeof (MYSQL_BIND)); gt_free(stm->results); stm->results = NULL; if (!had_err) stm->executed = false; return had_err; }
void gt_hashmap_reset(GtHashmap *hm) { gt_hashtable_reset((GtHashtable*) hm); }