diff options
author | wax@kishkin.ru <> | 2003-03-18 04:07:40 +0500 |
---|---|---|
committer | wax@kishkin.ru <> | 2003-03-18 04:07:40 +0500 |
commit | 12f1cb55b5630eb3730f1ced55df47733a837989 (patch) | |
tree | d5655e0a1fd7bd5c629fbc934a708f44ea818663 /sql/sql_error.cc | |
parent | 0e22b88af3c260c9651f9f3b3bd4674376249d1b (diff) | |
download | mariadb-git-12f1cb55b5630eb3730f1ced55df47733a837989.tar.gz |
This is full commit of group_concat with support subselects
Diffstat (limited to 'sql/sql_error.cc')
-rw-r--r-- | sql/sql_error.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/sql/sql_error.cc b/sql/sql_error.cc index 5508be5167a..9f28d33bc50 100644 --- a/sql/sql_error.cc +++ b/sql/sql_error.cc @@ -79,14 +79,19 @@ void mysql_reset_errors(THD *thd) level Severity of warning (note, warning, error ...) code Error number msg Clear error message + + RETURN + pointer on MYSQL_ERROR object */ -void push_warning(THD *thd, MYSQL_ERROR::enum_warning_level level, uint code, - const char *msg) +MYSQL_ERROR *push_warning(THD *thd, MYSQL_ERROR::enum_warning_level level, + uint code, const char *msg) { if (thd->query_id != thd->warn_id) mysql_reset_errors(thd); + MYSQL_ERROR *err = NULL; + if (thd->warn_list.elements < thd->variables.max_error_count) { /* @@ -95,13 +100,14 @@ void push_warning(THD *thd, MYSQL_ERROR::enum_warning_level level, uint code, */ MEM_ROOT *old_root=my_pthread_getspecific_ptr(MEM_ROOT*,THR_MALLOC); my_pthread_setspecific_ptr(THR_MALLOC, &thd->warn_root); - MYSQL_ERROR *err= new MYSQL_ERROR(code, level, msg); + err = new MYSQL_ERROR(code, level, msg); if (err) thd->warn_list.push_back(err); my_pthread_setspecific_ptr(THR_MALLOC, old_root); } thd->warn_count[(uint) level]++; thd->total_warn_count++; + return err; } /* |