diff options
-rw-r--r-- | source3/smbd/filename.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/source3/smbd/filename.c b/source3/smbd/filename.c index 5fdbef44fe..d1c512c251 100644 --- a/source3/smbd/filename.c +++ b/source3/smbd/filename.c @@ -76,15 +76,17 @@ static BOOL fname_equal(char *name1, char *name2) ****************************************************************************/ static BOOL mangled_equal(char *name1, char *name2) { - pstring tmpname; - - if (is_8_3(name2, True)) - return(False); - - pstrcpy(tmpname,name2); - mangle_name_83(tmpname); - - return(strequal(name1,tmpname)); + char *tmpname; + BOOL ret = False; + + if (is_8_3(name2, True)) + { + tmpname = dos_mangle(name2); + if(tmpname) + ret = strequal(name1,tmpname); + SAFE_FREE(tmpname); + } + return ret; } |