summaryrefslogtreecommitdiff
path: root/mysys
diff options
context:
space:
mode:
authorSergey Vojtovich <sergey.vojtovich@oracle.com>2010-12-08 15:10:11 +0300
committerSergey Vojtovich <sergey.vojtovich@oracle.com>2010-12-08 15:10:11 +0300
commit9588e1ba53fa91463c4ad5695c46f821aa2ade7b (patch)
treed049239e7002e7351c1006894f711c5e80b134f1 /mysys
parent899038030ab0fdcba1e72efce46c98f409802099 (diff)
parent21779b35eaf0bbbd9aad6c220012a12ff001cc11 (diff)
downloadmariadb-git-9588e1ba53fa91463c4ad5695c46f821aa2ade7b.tar.gz
Merge fix for BUG58205 to 5.5-bugteam.
Diffstat (limited to 'mysys')
-rw-r--r--mysys/mf_pack.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mysys/mf_pack.c b/mysys/mf_pack.c
index c6e6a3a429e..a9482187138 100644
--- a/mysys/mf_pack.c
+++ b/mysys/mf_pack.c
@@ -192,7 +192,8 @@ size_t cleanup_dirname(register char *to, const char *from)
end_parentdir=pos;
while (pos >= start && *pos != FN_LIBCHAR) /* remove prev dir */
pos--;
- if (pos[1] == FN_HOMELIB || memcmp(pos,parent,length) == 0)
+ if (pos[1] == FN_HOMELIB ||
+ (pos > start && memcmp(pos, parent, length) == 0))
{ /* Don't remove ~user/ */
pos=strmov(end_parentdir+1,parent);
*pos=FN_LIBCHAR;