~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_connect.cc

  • Committer: Brian Aker
  • Date: 2008-12-24 02:06:33 UTC
  • Revision ID: brian@tangent.org-20081224020633-sbe7ca5yvo8yj5d3
Removal of client side collation.

Show diffs side-by-side

added added

removed removed

Lines of Context:
173
173
  free((char*) uc);
174
174
}
175
175
 
176
 
void session_init_client_charset(Session *session, uint32_t cs_number)
177
 
{
178
 
  /*
179
 
   Use server character set and collation if
180
 
   - opt_character_set_client_handshake is not set
181
 
   - client has not specified a character set
182
 
   - client character set is the same as the servers
183
 
   - client character set doesn't exists in server
184
 
  */
185
 
  if (!opt_character_set_client_handshake ||
186
 
      !(session->variables.character_set_client= get_charset(cs_number, MYF(0))) ||
187
 
      !my_strcasecmp(&my_charset_utf8_general_ci,
188
 
                     global_system_variables.character_set_client->name,
189
 
                     session->variables.character_set_client->name))
190
 
  {
191
 
    session->variables.character_set_client=
192
 
      global_system_variables.character_set_client;
193
 
    session->variables.collation_connection=
194
 
      global_system_variables.collation_connection;
195
 
    session->variables.character_set_results=
196
 
      global_system_variables.character_set_results;
197
 
  }
198
 
  else
199
 
  {
200
 
    session->variables.character_set_results=
201
 
      session->variables.collation_connection=
202
 
      session->variables.character_set_client;
203
 
  }
204
 
}
205
 
 
206
 
 
207
176
/*
208
177
  Initialize connection threads
209
178
*/
315
284
 
316
285
  session->client_capabilities|= ((uint32_t) uint2korr(net->read_pos+2)) << 16;
317
286
  session->max_client_packet_length= uint4korr(net->read_pos+4);
318
 
  session_init_client_charset(session, (uint) net->read_pos[8]);
319
287
  session->update_charset();
320
288
  end= (char*) net->read_pos+32;
321
289