diff options
Diffstat (limited to 'client/mysqldump.c')
-rw-r--r-- | client/mysqldump.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/client/mysqldump.c b/client/mysqldump.c index 023e35cf7c9..e7d2b8bebe1 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -894,9 +894,12 @@ static void dumpTable(uint numFields, char *table) { char query[QUERY_LENGTH], *end, buff[256],table_buff[NAME_LEN+3]; MYSQL_RES *res; - MYSQL_FIELD *field; - MYSQL_ROW row; + MYSQL_FIELD *field; + MYSQL_ROW row; ulong rownr, row_break, total_length, init_length; +#if defined(__NETWARE__) && defined(THREAD) + uint lines= 0; +#endif if (verbose) fprintf(stderr, "-- Sending SELECT query...\n"); @@ -1123,6 +1126,11 @@ static void dumpTable(uint numFields, char *table) } else if (!opt_xml) fputs(");\n", md_result_file); +#if defined(__NETWARE__) && defined(THREAD) + /* on a long result the screen could hog the cpu */ + if ((lines++ & 1023) == 0) + pthread_yield(); +#endif } /* XML - close table tag and supress regular output */ |