summaryrefslogtreecommitdiff
path: root/mysys/my_getwd.c
diff options
context:
space:
mode:
authorunknown <ingo@mysql.com>2005-04-28 18:28:50 +0200
committerunknown <ingo@mysql.com>2005-04-28 18:28:50 +0200
commitf0e256efe4a569788908d4ff9d672010b878449b (patch)
tree0f234f007885333223f6233c5d1e6f54e303446f /mysys/my_getwd.c
parente2f5671064639b4dfe22fda07349fa00220a9af2 (diff)
downloadmariadb-git-f0e256efe4a569788908d4ff9d672010b878449b.tar.gz
BUG#5964 - 4.1 MERGE tables regression from 4.0
Changed the creation of the .MRG file so that only the table name is written when the MyISAM table is in the same database as the MERGE table, a relative path is used in other cases in mysqld, and possibly an absolute path is used in an embedded server. No test case is added as the external behaviour is unchanged. Only the file names within the .MRG file are changed. include/my_sys.h: BUG#5964 - 4.1 MERGE tables regression from 4.0 Added declaration for a new function. myisammrg/myrg_open.c: BUG#5964 - 4.1 MERGE tables regression from 4.0 Changed check for absolute path to check for any path. mysys/my_getwd.c: BUG#5964 - 4.1 MERGE tables regression from 4.0 Added a new functions which checks for absolute _or_ relative paths. sql/ha_myisammrg.cc: BUG#5964 - 4.1 MERGE tables regression from 4.0 Changed the creation of the .MRG file so that only the table name is written when the MyISAM table is in the same database as the MERGE table, a relative path is used in other cases in mysqld, and possibly an absolute path is used in an embedded server.
Diffstat (limited to 'mysys/my_getwd.c')
-rw-r--r--mysys/my_getwd.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/mysys/my_getwd.c b/mysys/my_getwd.c
index d6f647254e8..89f949eca27 100644
--- a/mysys/my_getwd.c
+++ b/mysys/my_getwd.c
@@ -192,3 +192,25 @@ int test_if_hard_path(register const char *dir_name)
return FALSE;
#endif
} /* test_if_hard_path */
+
+
+/*
+ Test if a name contains an (absolute or relative) path.
+
+ SYNOPSIS
+ has_path()
+ name The name to test.
+
+ RETURN
+ TRUE name contains a path.
+ FALSE name does not contain a path.
+*/
+
+my_bool has_path(const char *name)
+{
+ return test(strchr(name, FN_LIBCHAR))
+#ifdef FN_DEVCHAR
+ || test(strchr(name, FN_DEVCHAR))
+#endif
+ ;
+}