From 10e537947dad138517bb990c3eee1bb4e9d6d9b5 Mon Sep 17 00:00:00 2001 From: "Valeriano A.R" Date: Wed, 14 Oct 2015 07:18:30 +0200 Subject: [PATCH] FileNode_Copy --- src/filenode.c | 16 ++++++++++++++++ src/filenode.h | 1 + 2 files changed, 17 insertions(+) diff --git a/src/filenode.c b/src/filenode.c index cdbe799..f5c5d30 100644 --- a/src/filenode.c +++ b/src/filenode.c @@ -49,6 +49,22 @@ FileNode *FileNode_Create() { return (fileNode); } +FileNode *FileNode_Copy(FileNode *fileNode) { + FileNode *fileNodeNew; + + fileNodeNew = FileNode_Create(); + + // Copy + strcpy(fileNodeNew->name, fileNode->name); + fileNodeNew->flags = fileNode->flags; + fileNodeNew->status = fileNode->status; + fileNodeNew->size = fileNode->size; + fileNodeNew->crc = fileNode->crc; + fileNodeNew->fileTime = fileNode->fileTime; + + return fileNodeNew; +} + void FileNode_Delete(FileNode *fn) { // Delete childs FileNode *fileNodeChildAux = fn->child; diff --git a/src/filenode.h b/src/filenode.h index a19e331..b78f383 100644 --- a/src/filenode.h +++ b/src/filenode.h @@ -38,6 +38,7 @@ typedef struct SFileNode { } FileNode; FileNode *FileNode_Create(); +FileNode *FileNode_Copy(FileNode *fileNode); void FileNode_Delete(FileNode *fileNode); void FileNode_AddChild(FileNode *file, FileNode *file2);