List:Internals« Previous MessageNext Message »
From:reggie Date:May 23 2005 6:55pm
Subject:bk commit into 4.1 tree (reggie:1.2286) BUG#10687
View as plain text  
Below is the list of changes that have just been committed into a local
4.1 repository of reggie. When reggie does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet
  1.2286 05/05/23 11:53:16 reggie@mdk10.(none) +2 -0
  BUG# 10687: MERGE Engine fails on Windows
  This is a replacement for the original patch given by Ingo.  This one comes
  from Monty.
  The problem is that merge files now use unix style pathnames on all 
  platforms.  The merge file open code was not properly converting those
  pathnames back to non-unix when necessary.

  mysys/my_getwd.c
    1.14 05/05/23 11:53:08 reggie@mdk10.(none) +1 -1
    add a test for '/' in the code that determines if a string inlucdes a pathname

  myisammrg/myrg_open.c
    1.29 05/05/23 11:53:07 reggie@mdk10.(none) +3 -1
    use fn_format to convert pathnames if the files in the merge file have a pathname

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	reggie
# Host:	mdk10.(none)
# Root:	/home/reggie/bk/mysql-4.1

--- 1.28/myisammrg/myrg_open.c	2005-04-28 11:28:44 -05:00
+++ 1.29/myisammrg/myrg_open.c	2005-05-23 11:53:07 -05:00
@@ -67,7 +67,7 @@
   while ((length=my_b_gets(&file,buff,FN_REFLEN-1)))
   {
     if ((end=buff+length)[-1] == '\n')
-      end[-1]='\0';
+      *--end='\0';
     if (!buff[0])
       continue;		/* Skip empty lines */
     if (buff[0] == '#')
@@ -86,6 +86,8 @@
                    sizeof(name_buff)-1-dir_length));
       VOID(cleanup_dirname(buff,name_buff));
     }
+    else
+      fn_format(buff, buff, "", "", 0);
     if (!(isam=mi_open(buff,mode,(handle_locking?HA_OPEN_WAIT_IF_LOCKED:0))))
       goto err;
     if (!m_info)                                /* First file */

--- 1.13/mysys/my_getwd.c	2005-04-28 11:28:44 -05:00
+++ 1.14/mysys/my_getwd.c	2005-05-23 11:53:08 -05:00
@@ -208,7 +208,7 @@
 
 my_bool has_path(const char *name)
 {
-  return test(strchr(name, FN_LIBCHAR))
+  return test(strchr(name, FN_LIBCHAR)) || test(strchr(name,'/'))
 #ifdef FN_DEVCHAR
     || test(strchr(name, FN_DEVCHAR))
 #endif
Thread
bk commit into 4.1 tree (reggie:1.2286) BUG#10687reggie23 May