diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-12-31 10:56:05 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-01-27 06:54:22 +0100 |
commit | cf36b70e8dd8755e7dac6eb516169f586e78566d (patch) | |
tree | 97200818ec5dfeaa4e137a572fcbb4db746842b1 /cpukit/libfs/src/imfs/imfs_symlink.c | |
parent | user/conf.t: Fix typo (diff) | |
download | rtems-cf36b70e8dd8755e7dac6eb516169f586e78566d.tar.bz2 |
IMFS: Replace node union with individual struct
This reduces the average node size.
Add and use IMFS_GENERIC_INITIALIZER().
Diffstat (limited to 'cpukit/libfs/src/imfs/imfs_symlink.c')
-rw-r--r-- | cpukit/libfs/src/imfs/imfs_symlink.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/cpukit/libfs/src/imfs/imfs_symlink.c b/cpukit/libfs/src/imfs/imfs_symlink.c index 003b379c14..963cefcd77 100644 --- a/cpukit/libfs/src/imfs/imfs_symlink.c +++ b/cpukit/libfs/src/imfs/imfs_symlink.c @@ -30,14 +30,14 @@ int IMFS_symlink( const char *target ) { - IMFS_types_union info; - IMFS_jnode_t *new_node; + char *dup_target; + IMFS_jnode_t *new_node; /* * Duplicate link name */ - info.sym_link.name = strdup(target); - if (info.sym_link.name == NULL) { + dup_target = strdup(target); + if (dup_target == NULL) { rtems_set_errno_and_return_minus_one(ENOMEM); } @@ -50,11 +50,11 @@ int IMFS_symlink( name, namelen, ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )), - &info + dup_target ); if (new_node == NULL) { - free(info.sym_link.name); + free(dup_target); rtems_set_errno_and_return_minus_one(ENOMEM); } |