OSDN Git Service

Always erase output name buffer in exfat_split() to avoid garbage after null character.
authorresver <resver@60bc1c72-a15a-11de-b98f-4500b42dc123>
Tue, 6 Jul 2010 18:54:36 +0000 (18:54 +0000)
committerresver <resver@60bc1c72-a15a-11de-b98f-4500b42dc123>
Tue, 6 Jul 2010 18:54:36 +0000 (18:54 +0000)
git-svn-id: http://exfat.googlecode.com/svn/trunk@147 60bc1c72-a15a-11de-b98f-4500b42dc123

libexfat/lookup.c
libexfat/node.c

index 2e85322..b08ce43 100644 (file)
@@ -164,6 +164,7 @@ int exfat_split(struct exfat* ef, struct exfat_node** parent,
        size_t n;
        int rc;
 
+       memset(name, 0, (EXFAT_NAME_MAX + 1) * sizeof(le16_t));
        *parent = *node = exfat_get_node(ef->root);
        for (p = path; (n = get_comp(p, &p)); p += n)
        {
index a10bd70..bd0fa3b 100644 (file)
@@ -806,7 +806,6 @@ int exfat_rename(struct exfat* ef, const char* old_path, const char* new_path)
        if (rc != 0)
                return rc;
 
-       memset(name, 0, (EXFAT_NAME_MAX + 1) * sizeof(le16_t));
        rc = exfat_split(ef, &dir, &existing, name, new_path);
        if (rc != 0)
        {