diff options
Diffstat (limited to 'common/vfsutils.c')
| -rw-r--r-- | common/vfsutils.c | 28 |
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); } } |
