summaryrefslogtreecommitdiff
path: root/common/vfsutils.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/vfsutils.c')
-rw-r--r--common/vfsutils.c28
1 files changed, 15 insertions, 13 deletions
diff --git a/common/vfsutils.c b/common/vfsutils.c
index 71080eb..173c0df 100644
--- a/common/vfsutils.c
+++ b/common/vfsutils.c
@@ -30,28 +30,30 @@
void copy_vfs_item(struct TVFSItem *src, struct TVFSItem *dst)
{
-/*
- dst->ItemType = src->ItemType;
+ dst->FName = g_strdup (src->FName);
+ dst->FDisplayName = g_strdup (src->FDisplayName);
+ dst->iSize = src->iSize;
+ dst->iPackedSize = src->iPackedSize;
+ dst->m_time = src->m_time;
dst->a_time = src->a_time;
dst->c_time = src->c_time;
- dst->iGID = src->iGID;
dst->iMode = src->iMode;
- dst->iSize = src->iSize;
+ dst->sLinkTo = g_strdup (src->sLinkTo);
dst->iUID = src->iUID;
- dst->m_time = src->m_time;
- dst->sFileName = src->sFileName;
- dst->sLinkTo = src->sLinkTo;
- */
- memcpy(dst, src, sizeof(struct TVFSItem));
+ dst->iGID = src->iGID;
+ dst->ItemType = src->ItemType;
}
void free_vfs_item(struct TVFSItem *item)
{
if (item) {
- if (item->FName) free(item->FName);
- if (item->FDisplayName) free(item->FDisplayName);
- if (item->sLinkTo) free(item->sLinkTo);
- free(item);
+ if (item->FName)
+ free(item->FName);
+ if (item->FDisplayName)
+ free(item->FDisplayName);
+ if (item->sLinkTo)
+ free(item->sLinkTo);
+ free(item);
}
}