~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_error.cc

  • Committer: Lee Bieber
  • Date: 2011-03-22 17:41:09 UTC
  • mfrom: (2241.2.18 refactor2)
  • Revision ID: kalebral@gmail.com-20110322174109-1bsfvv4q1dnfd089
Merge Olaf - more code refactoring

Show diffs side-by-side

added added

removed removed

Lines of Context:
95
95
    session->warn_list.clear();
96
96
    session->row_count= 1; // by default point to row 1
97
97
  }
98
 
  return;
99
98
}
100
99
 
101
100
 
116
115
DRIZZLE_ERROR *push_warning(Session *session, DRIZZLE_ERROR::enum_warning_level level,
117
116
                            drizzled::error_t code, const char *msg)
118
117
{
119
 
  DRIZZLE_ERROR *err= 0;
120
 
 
121
118
  if (level == DRIZZLE_ERROR::WARN_LEVEL_NOTE && !(session->options & OPTION_SQL_NOTES))
122
119
  {
123
120
    return NULL;
147
144
  if (session->handle_error(code, msg, level))
148
145
    return NULL;
149
146
 
 
147
  DRIZZLE_ERROR *err= NULL;
150
148
  if (session->warn_list.size() < session->variables.max_error_count)
151
149
  {
152
150
    /* We have to use warn_root, as mem_root is freed after each query */
153
 
    if ((err= new (&session->warn_root) DRIZZLE_ERROR(session, code, level, msg)))
154
 
    {
155
 
      session->warn_list.push_back(err, &session->warn_root);
156
 
    }
 
151
    err= new (&session->warn_root) DRIZZLE_ERROR(session, code, level, msg);
 
152
    session->warn_list.push_back(err, &session->warn_root);
157
153
  }
158
154
  session->warn_count[(uint32_t) level]++;
159
155
  session->total_warn_count++;
221
217
  if (session->getClient()->sendFields(&field_list))
222
218
    return true;
223
219
 
224
 
  DRIZZLE_ERROR *err;
225
220
  Select_Lex *sel= &session->lex().select_lex;
226
221
  Select_Lex_Unit *unit= &session->lex().unit;
227
222
  ha_rows idx= 0;
229
224
  unit->set_limit(sel);
230
225
 
231
226
  List<DRIZZLE_ERROR>::iterator it(session->warn_list.begin());
232
 
  while ((err= it++))
 
227
  while (DRIZZLE_ERROR* err= it++)
233
228
  {
234
229
    /* Skip levels that the user is not interested in */
235
230
    if (! levels_to_show.test(err->level))