Define code style formatter for eclipse and apply it to source.
This commit is contained in:
134
src/tree.c
134
src/tree.c
@ -48,14 +48,14 @@ int iso_tree_add_new_dir(IsoDir *parent, const char *name, IsoDir **dir)
|
||||
IsoDir *node;
|
||||
IsoNode **pos;
|
||||
time_t now;
|
||||
|
||||
|
||||
if (parent == NULL || name == NULL) {
|
||||
return ISO_NULL_POINTER;
|
||||
}
|
||||
if (dir) {
|
||||
*dir = NULL;
|
||||
}
|
||||
|
||||
|
||||
/* find place where to insert */
|
||||
pos = &(parent->children);
|
||||
while (*pos != NULL && strcmp((*pos)->name, name) < 0) {
|
||||
@ -65,12 +65,12 @@ int iso_tree_add_new_dir(IsoDir *parent, const char *name, IsoDir **dir)
|
||||
/* a node with same name already exists */
|
||||
return ISO_NODE_NAME_NOT_UNIQUE;
|
||||
}
|
||||
|
||||
|
||||
node = calloc(1, sizeof(IsoDir));
|
||||
if (node == NULL) {
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
node->node.refcount = 1;
|
||||
node->node.type = LIBISO_DIR;
|
||||
node->node.name = strdup(name);
|
||||
@ -78,24 +78,24 @@ int iso_tree_add_new_dir(IsoDir *parent, const char *name, IsoDir **dir)
|
||||
free(node);
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
/* permissions from parent */
|
||||
node->node.mode = parent->node.mode;
|
||||
node->node.uid = parent->node.uid;
|
||||
node->node.gid = parent->node.gid;
|
||||
node->node.hidden = parent->node.hidden;
|
||||
|
||||
|
||||
/* current time */
|
||||
now = time(NULL);
|
||||
node->node.atime = now;
|
||||
node->node.ctime = now;
|
||||
node->node.mtime = now;
|
||||
|
||||
|
||||
/* add to dir */
|
||||
node->node.parent = parent;
|
||||
node->node.next = *pos;
|
||||
*pos = (IsoNode*)node;
|
||||
|
||||
|
||||
if (dir) {
|
||||
*dir = node;
|
||||
}
|
||||
@ -126,20 +126,20 @@ int iso_tree_add_new_dir(IsoDir *parent, const char *name, IsoDir **dir)
|
||||
* ISO_NODE_NAME_NOT_UNIQUE, a node with same name already exists
|
||||
* ISO_MEM_ERROR
|
||||
*/
|
||||
int iso_tree_add_new_symlink(IsoDir *parent, const char *name,
|
||||
int iso_tree_add_new_symlink(IsoDir *parent, const char *name,
|
||||
const char *dest, IsoSymlink **link)
|
||||
{
|
||||
IsoSymlink *node;
|
||||
IsoNode **pos;
|
||||
time_t now;
|
||||
|
||||
|
||||
if (parent == NULL || name == NULL || dest == NULL) {
|
||||
return ISO_NULL_POINTER;
|
||||
}
|
||||
if (link) {
|
||||
*link = NULL;
|
||||
}
|
||||
|
||||
|
||||
/* find place where to insert */
|
||||
pos = &(parent->children);
|
||||
while (*pos != NULL && strcmp((*pos)->name, name) < 0) {
|
||||
@ -149,12 +149,12 @@ int iso_tree_add_new_symlink(IsoDir *parent, const char *name,
|
||||
/* a node with same name already exists */
|
||||
return ISO_NODE_NAME_NOT_UNIQUE;
|
||||
}
|
||||
|
||||
|
||||
node = calloc(1, sizeof(IsoSymlink));
|
||||
if (node == NULL) {
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
node->node.refcount = 1;
|
||||
node->node.type = LIBISO_SYMLINK;
|
||||
node->node.name = strdup(name);
|
||||
@ -162,31 +162,31 @@ int iso_tree_add_new_symlink(IsoDir *parent, const char *name,
|
||||
free(node);
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
node->dest = strdup(dest);
|
||||
if (node->dest == NULL) {
|
||||
free(node->node.name);
|
||||
free(node);
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
/* permissions from parent */
|
||||
node->node.mode = S_IFLNK | 0777;
|
||||
node->node.uid = parent->node.uid;
|
||||
node->node.gid = parent->node.gid;
|
||||
node->node.hidden = parent->node.hidden;
|
||||
|
||||
|
||||
/* current time */
|
||||
now = time(NULL);
|
||||
node->node.atime = now;
|
||||
node->node.ctime = now;
|
||||
node->node.mtime = now;
|
||||
|
||||
|
||||
/* add to dir */
|
||||
node->node.parent = parent;
|
||||
node->node.next = *pos;
|
||||
*pos = (IsoNode*)node;
|
||||
|
||||
|
||||
if (link) {
|
||||
*link = node;
|
||||
}
|
||||
@ -231,13 +231,13 @@ int iso_tree_add_new_symlink(IsoDir *parent, const char *name,
|
||||
* ISO_MEM_ERROR
|
||||
*
|
||||
*/
|
||||
int iso_tree_add_new_special(IsoDir *parent, const char *name, mode_t mode,
|
||||
int iso_tree_add_new_special(IsoDir *parent, const char *name, mode_t mode,
|
||||
dev_t dev, IsoSpecial **special)
|
||||
{
|
||||
IsoSpecial *node;
|
||||
IsoNode **pos;
|
||||
time_t now;
|
||||
|
||||
|
||||
if (parent == NULL || name == NULL) {
|
||||
return ISO_NULL_POINTER;
|
||||
}
|
||||
@ -247,7 +247,7 @@ int iso_tree_add_new_special(IsoDir *parent, const char *name, mode_t mode,
|
||||
if (special) {
|
||||
*special = NULL;
|
||||
}
|
||||
|
||||
|
||||
/* find place where to insert */
|
||||
pos = &(parent->children);
|
||||
while (*pos != NULL && strcmp((*pos)->name, name) < 0) {
|
||||
@ -257,12 +257,12 @@ int iso_tree_add_new_special(IsoDir *parent, const char *name, mode_t mode,
|
||||
/* a node with same name already exists */
|
||||
return ISO_NODE_NAME_NOT_UNIQUE;
|
||||
}
|
||||
|
||||
|
||||
node = calloc(1, sizeof(IsoSpecial));
|
||||
if (node == NULL) {
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
node->node.refcount = 1;
|
||||
node->node.type = LIBISO_SPECIAL;
|
||||
node->node.name = strdup(name);
|
||||
@ -270,51 +270,51 @@ int iso_tree_add_new_special(IsoDir *parent, const char *name, mode_t mode,
|
||||
free(node);
|
||||
return ISO_MEM_ERROR;
|
||||
}
|
||||
|
||||
|
||||
node->node.mode = mode;
|
||||
node->dev = dev;
|
||||
|
||||
|
||||
/* atts from parent */
|
||||
node->node.uid = parent->node.uid;
|
||||
node->node.gid = parent->node.gid;
|
||||
node->node.hidden = parent->node.hidden;
|
||||
|
||||
|
||||
/* current time */
|
||||
now = time(NULL);
|
||||
node->node.atime = now;
|
||||
node->node.ctime = now;
|
||||
node->node.mtime = now;
|
||||
|
||||
|
||||
/* add to dir */
|
||||
node->node.parent = parent;
|
||||
node->node.next = *pos;
|
||||
*pos = (IsoNode*)node;
|
||||
|
||||
|
||||
if (special) {
|
||||
*special = node;
|
||||
}
|
||||
return ++parent->nchildren;
|
||||
}
|
||||
|
||||
static
|
||||
int iso_tree_add_node_builder(IsoImage *image, IsoDir *parent,
|
||||
IsoFileSource *src, IsoNodeBuilder *builder,
|
||||
static
|
||||
int iso_tree_add_node_builder(IsoImage *image, IsoDir *parent,
|
||||
IsoFileSource *src, IsoNodeBuilder *builder,
|
||||
IsoNode **node)
|
||||
{
|
||||
int result;
|
||||
IsoNode *new;
|
||||
IsoNode **pos;
|
||||
char *name;
|
||||
|
||||
|
||||
if (parent == NULL || src == NULL || builder == NULL) {
|
||||
return ISO_NULL_POINTER;
|
||||
}
|
||||
if (node) {
|
||||
*node = NULL;
|
||||
}
|
||||
|
||||
|
||||
name = iso_file_source_get_name(src);
|
||||
|
||||
|
||||
/* find place where to insert */
|
||||
pos = &(parent->children);
|
||||
while (*pos != NULL && strcmp((*pos)->name, name) < 0) {
|
||||
@ -324,43 +324,43 @@ int iso_tree_add_node_builder(IsoImage *image, IsoDir *parent,
|
||||
/* a node with same name already exists */
|
||||
return ISO_NODE_NAME_NOT_UNIQUE;
|
||||
}
|
||||
|
||||
|
||||
result = builder->create_node(builder, image, src, &new);
|
||||
if (result < 0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/* finally, add node to parent */
|
||||
new->parent = parent;
|
||||
new->next = *pos;
|
||||
*pos = new;
|
||||
|
||||
|
||||
if (node) {
|
||||
*node = new;
|
||||
}
|
||||
return ++parent->nchildren;
|
||||
}
|
||||
|
||||
int iso_tree_add_node(IsoImage *image, IsoDir *parent, const char *path,
|
||||
int iso_tree_add_node(IsoImage *image, IsoDir *parent, const char *path,
|
||||
IsoNode **node)
|
||||
{
|
||||
int result;
|
||||
IsoFilesystem *fs;
|
||||
IsoFileSource *file;
|
||||
|
||||
|
||||
if (image == NULL || parent == NULL || path == NULL) {
|
||||
return ISO_NULL_POINTER;
|
||||
}
|
||||
|
||||
|
||||
fs = image->fs;
|
||||
result = fs->get_by_path(fs, path, &file);
|
||||
if (result < 0) {
|
||||
return result;
|
||||
}
|
||||
result = iso_tree_add_node_builder(image, parent, file, image->builder,
|
||||
result = iso_tree_add_node_builder(image, parent, file, image->builder,
|
||||
node);
|
||||
/* free the file */
|
||||
iso_file_source_unref(file);
|
||||
iso_file_source_unref(file);
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -381,7 +381,7 @@ int check_excludes(IsoImage *image, const char *path)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static
|
||||
static
|
||||
int check_hidden(IsoImage *image, const char *name)
|
||||
{
|
||||
return (image->recOpts->ignore_hidden && name[0] == '.');
|
||||
@ -399,25 +399,25 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
IsoNodeBuilder *builder;
|
||||
IsoFileSource *file;
|
||||
IsoNode **pos;
|
||||
|
||||
|
||||
result = iso_file_source_open(dir);
|
||||
if (result < 0) {
|
||||
iso_msg_debug(image, "Can't open dir %s",
|
||||
iso_file_source_get_path(dir));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
builder = image->builder;
|
||||
action = 1;
|
||||
while ( (result = iso_file_source_readdir(dir, &file)) == 1) {
|
||||
int flag;
|
||||
char *name;
|
||||
IsoNode *new;
|
||||
|
||||
|
||||
iso_msg_debug(image, "Adding file %s", iso_file_source_get_path(file));
|
||||
|
||||
|
||||
name = iso_file_source_get_name(file);
|
||||
|
||||
|
||||
if (check_excludes(image, iso_file_source_get_path(file))) {
|
||||
action = 2;
|
||||
} else if (check_hidden(image, name)) {
|
||||
@ -425,7 +425,7 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
} else {
|
||||
action = 1;
|
||||
}
|
||||
|
||||
|
||||
/* find place where to insert */
|
||||
flag = 0;
|
||||
pos = &(parent->children);
|
||||
@ -438,12 +438,12 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
action = 2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* ask user if callback has been set */
|
||||
if (image->recOpts->report) {
|
||||
action = image->recOpts->report(file, action, flag);
|
||||
}
|
||||
|
||||
|
||||
if (action == 2) {
|
||||
/* skip file */
|
||||
iso_file_source_unref(file);
|
||||
@ -453,23 +453,23 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
iso_file_source_unref(file);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
/* ok, file will be added */
|
||||
result = builder->create_node(builder, image, file, &new);
|
||||
if (result < 0) {
|
||||
|
||||
iso_msg_debug(image, "Error %d when adding file %s",
|
||||
result, iso_file_source_get_path(file));
|
||||
|
||||
|
||||
iso_msg_debug(image, "Error %d when adding file %s", result,
|
||||
iso_file_source_get_path(file));
|
||||
|
||||
if (image->recOpts->report) {
|
||||
action = image->recOpts->report(file, result, flag);
|
||||
} else {
|
||||
action = image->recOpts->stop_on_error ? 3 : 1;
|
||||
}
|
||||
|
||||
|
||||
/* free file */
|
||||
iso_file_source_unref(file);
|
||||
|
||||
|
||||
if (action == 3) {
|
||||
result = 1; /* prevent error to be passing up */
|
||||
break;
|
||||
@ -478,7 +478,7 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* ok, node has correctly created, we need to add it */
|
||||
if (flag) {
|
||||
/* replace node */
|
||||
@ -495,7 +495,7 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
new->parent = parent;
|
||||
++parent->nchildren;
|
||||
}
|
||||
|
||||
|
||||
/* finally, if the node is a directory we need to recurse */
|
||||
if (new->type == LIBISO_DIR) {
|
||||
result = iso_add_dir_aux(image, (IsoDir*)new, file);
|
||||
@ -516,12 +516,12 @@ int iso_add_dir_aux(IsoImage *image, IsoDir *parent, IsoFileSource *dir)
|
||||
iso_file_source_unref(file);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (result < 0) {
|
||||
// TODO printf message
|
||||
action = result;
|
||||
}
|
||||
|
||||
|
||||
result = iso_file_source_close(dir);
|
||||
if (result < 0) {
|
||||
return result;
|
||||
@ -541,24 +541,24 @@ int iso_tree_add_dir_rec(IsoImage *image, IsoDir *parent, const char *dir)
|
||||
struct stat info;
|
||||
IsoFilesystem *fs;
|
||||
IsoFileSource *file;
|
||||
|
||||
|
||||
if (image == NULL || parent == NULL || dir == NULL) {
|
||||
return ISO_NULL_POINTER;
|
||||
}
|
||||
|
||||
|
||||
fs = image->fs;
|
||||
result = fs->get_by_path(fs, dir, &file);
|
||||
if (result < 0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/* we also allow dir path to be a symlink to a dir */
|
||||
result = iso_file_source_stat(file, &info);
|
||||
if (result < 0) {
|
||||
iso_file_source_unref(file);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
if (!S_ISDIR(info.st_mode)) {
|
||||
iso_file_source_unref(file);
|
||||
return ISO_FILE_IS_NOT_DIR;
|
||||
@ -591,7 +591,7 @@ int iso_tree_path_to_node(IsoImage *image, const char *path, IsoNode **node)
|
||||
|
||||
ptr = strdup(path);
|
||||
result = 0;
|
||||
|
||||
|
||||
/* get the first component of the path */
|
||||
component = strtok_r(ptr, "/", &brk_info);
|
||||
while (component) {
|
||||
|
Reference in New Issue
Block a user