Commit 1c2cb842 authored by unknown's avatar unknown
Browse files

Merge joreland@bk-internal.mysql.com:/home/bk/mysql-4.1

into  perch.ndb.mysql.com:/home/jonas/src/mysql-4.1-push


sql/mysqld.cc:
  Auto merged
parents 7aad3ae6 98bbb1ae
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -361,6 +361,10 @@ SOURCE=.\my_compress.c
# End Source File
# Begin Source File

SOURCE=.\my_conio.c
# End Source File
# Begin Source File

SOURCE=.\my_copy.c
# End Source File
# Begin Source File
+4 −0
Original line number Diff line number Diff line
@@ -362,6 +362,10 @@ SOURCE=.\my_compress.c
# End Source File
# Begin Source File

SOURCE=.\my_conio.c
# End Source File
# Begin Source File

SOURCE=.\my_copy.c
# End Source File
# Begin Source File
+28 −3
Original line number Diff line number Diff line
@@ -938,10 +938,15 @@ static int get_options(int argc, char **argv)

static int read_lines(bool execute_commands)
{
#if defined( __WIN__) || defined(OS2) || defined(__NETWARE__)
#if defined(OS2) || defined(__NETWARE__)
  char linebuffer[254];
  String buffer;
#endif
#if defined(__WIN__)
  String tmpbuf;
  String buffer;
#endif

  char	*line;
  char	in_string=0;
  ulong line_number=0;
@@ -972,7 +977,7 @@ static int read_lines(bool execute_commands)

#if defined( __WIN__) || defined(OS2) || defined(__NETWARE__)
      tee_fputs(prompt, stdout);
#ifdef __NETWARE__
#if defined(__NETWARE__)
      line=fgets(linebuffer, sizeof(linebuffer)-1, stdin);
      /* Remove the '\n' */
      if (line)
@@ -981,7 +986,22 @@ static int read_lines(bool execute_commands)
        if (p != NULL)
          *p = '\0';
      }
#else
#elif defined(__WIN__)
      if (!tmpbuf.is_alloced())
        tmpbuf.alloc(65535);
      buffer.length(0);
      unsigned long clen;
      do
      {
        line= my_cgets(tmpbuf.c_ptr(), tmpbuf.alloced_length(), &clen);
        buffer.append(line, clen);
        /* 
           if we got buffer fully filled than there is a chance that
           something else is still in console input buffer
        */
      } while (tmpbuf.alloced_length() <= clen + 1);
      line= buffer.c_ptr();
#else /* OS2 */
      buffer.length(0);
      /* _cgets() expects the buffer size - 3 as the first byte */
      linebuffer[0]= (char) sizeof(linebuffer) - 3;
@@ -1057,9 +1077,14 @@ static int read_lines(bool execute_commands)
	status.exit_status=0;
    }
  }

#if defined( __WIN__) || defined(OS2) || defined(__NETWARE__)
  buffer.free();
#endif
#if defined( __WIN__)
  tmpbuf.free();
#endif

  return status.exit_status;
}

+3 −0
Original line number Diff line number Diff line
@@ -801,6 +801,9 @@ int my_security_attr_create(SECURITY_ATTRIBUTES **psa, const char **perror,

void my_security_attr_free(SECURITY_ATTRIBUTES *sa);

/* implemented in my_conio.c */
char* my_cgets(char *string, unsigned long clen, unsigned long* plen);

#endif
#ifdef __NETWARE__
void netware_reg_user(const char *ip, const char *user,
+15 −0
Original line number Diff line number Diff line
@@ -311,6 +311,20 @@ typedef struct st_sort_key_blocks /* Used when sorting */
} SORT_KEY_BLOCKS;


/* 
  MyISAM supports several statistics collection methods. Currently statistics 
  collection method is not stored in MyISAM file and has to be specified for 
  each table analyze/repair operation in  MI_CHECK::stats_method.
*/

typedef enum 
{
  /* Treat NULLs as inequal when collecting statistics (default for 4.1/5.0) */
  MI_STATS_METHOD_NULLS_NOT_EQUAL,
  /* Treat NULLs as equal when collecting statistics (like 4.0 did) */
  MI_STATS_METHOD_NULLS_EQUAL
} enum_mi_stats_method;

typedef struct st_mi_check_param
{
  ulonglong auto_increment_value;
@@ -341,6 +355,7 @@ typedef struct st_mi_check_param
  void *thd;
  char *db_name,*table_name;
  char *op_name;
  enum_mi_stats_method stats_method;
} MI_CHECK;

typedef struct st_sort_ft_buf
Loading