diff -urdpNX /usr/share/dontdiff -x Makefile dovecot.vanilla/src/lib-sql/driver-mysql.c dovecot/src/lib-sql/driver-mysql.c --- dovecot.vanilla/src/lib-sql/driver-mysql.c 2006-05-31 15:02:50.000000000 +0400 +++ dovecot/src/lib-sql/driver-mysql.c 2006-06-12 17:09:30.480164264 +0400 @@ -395,6 +395,8 @@ driver_mysql_query_s(struct sql_db *_db, result->result = mysql_store_result(conn->mysql); if (result->result != NULL) break; + if (mysql_field_count(conn->mysql) == 0) + break; /* fallback */ case -1: /* error */ @@ -422,6 +424,9 @@ static int driver_mysql_result_next_row( { struct mysql_result *result = (struct mysql_result *)_result; + if (!result->result) + return 0; + result->row = mysql_fetch_row(result->result); if (result->row != NULL) return 1;