Commit cd2d5b19 authored by davi@endora.local's avatar davi@endora.local
Browse files

Merge bk-internal.mysql.com:/home/bk/mysql-5.1-bugteam

into  mysql.com:/Users/davi/mysql/mysql-5.1-bugteam
parents e1d31e62 f28e6ac4
Loading
Loading
Loading
Loading
+15 −6
Original line number Diff line number Diff line
@@ -5595,7 +5595,7 @@ void fix_win_paths(const char *val, int len)
*/

void append_field(DYNAMIC_STRING *ds, uint col_idx, MYSQL_FIELD* field,
                  const char* val, ulonglong len, my_bool is_null)
                  char* val, ulonglong len, my_bool is_null)
{
  if (col_idx < max_replace_column && replace_column[col_idx])
  {
@@ -5618,11 +5618,20 @@ void append_field(DYNAMIC_STRING *ds, uint col_idx, MYSQL_FIELD* field,
        (start[1] == '-' || start[1] == '+') && start[2] == '0')
    {
      start+=2; /* Now points at first '0' */
      if (field->flags & ZEROFILL_FLAG)
      {
        /* Move all chars before the first '0' one step right */
        memmove(val + 1, val, start - val);
        *val= '0';
      }
      else
      {
        /* Move all chars after the first '0' one step left */
        memmove(start, start + 1, strlen(start));
        len--;
      }
    }
  }
#endif

  if (!display_result_vertically)
@@ -5659,7 +5668,7 @@ void append_result(DYNAMIC_STRING *ds, MYSQL_RES *res)
    lengths = mysql_fetch_lengths(res);
    for (i = 0; i < num_fields; i++)
      append_field(ds, i, &fields[i],
                   (const char*)row[i], lengths[i], !row[i]);
                   row[i], lengths[i], !row[i]);
    if (!display_result_vertically)
      dynstr_append_mem(ds, "\n", 1);
  }
@@ -5708,7 +5717,7 @@ void append_stmt_result(DYNAMIC_STRING *ds, MYSQL_STMT *stmt,
  while (mysql_stmt_fetch(stmt) == 0)
  {
    for (i= 0; i < num_fields; i++)
      append_field(ds, i, &fields[i], (const char *) my_bind[i].buffer,
      append_field(ds, i, &fields[i], my_bind[i].buffer,
                   *my_bind[i].length, *my_bind[i].is_null);
    if (!display_result_vertically)
      dynstr_append_mem(ds, "\n", 1);