1
Remove overly optimistic definition of strmov() as stpcpy().
3
mysql uses this macro with overlapping source and destination strings,
4
which is verboten per spec, and fails on some Red Hat platforms.
5
Deleting the definition is sufficient to make it fall back to a
6
byte-at-a-time copy loop, which should consistently give the
9
Note: the particular case that prompted this patch is reported and fixed
10
at http://bugs.mysql.com/bug.php?id=48864. However, my faith in upstream's
11
ability to detect this type of error is low, and I also see little evidence
12
of any real performance gain from optimizing these calls. So I'm keeping
16
diff -Naur mysql-5.1.37.orig/include/m_string.h mysql-5.1.37/include/m_string.h
17
--- mysql-5.1.37.orig/include/m_string.h 2009-07-13 19:08:50.000000000 -0400
18
+++ mysql-5.1.37/include/m_string.h 2009-08-31 21:49:49.000000000 -0400
20
extern void *(*my_str_malloc)(size_t);
21
extern void (*my_str_free)(void *);
23
-#if defined(HAVE_STPCPY)
24
-#define strmov(A,B) stpcpy((A),(B))
26
-extern char *stpcpy(char *, const char *); /* For AIX with gcc 2.95.3 */
30
/* Declared in int2str() */
31
extern char NEAR _dig_vec_upper[];
32
extern char NEAR _dig_vec_lower[];