History log of /haiku/src/bin/copyattr.cpp
Revision Date Author Comments
# 711e2dc0 01-Dec-2021 Augustin Cavalier <waddlesplash@gmail.com>

Adjust all struct dirent creations (again), this time to use offsetof().

The dirent struct is not packed, so offsetof(dirent, d_name) != sizeof(dirent).
Thus in order not to waste the alignment bytes (which are significant,
on x86_64 at least, sizeof(dirent)==32, but offsetof(...)=26.)

This is also the most portable way to handle things, and should
work just fine in cross-platform code that has a non-zero-sized d_name.


# 40ee778c 12-Feb-2019 Rob Gill <rrobgill@protonmail.com>

Fix memory leaks

* Delete/free as appropriate

Most cases involve not freeing memory after encountering error or
unexpected situation (identified via cppcheck static analysis)

Change-Id: I90ba2fca518b00d2dfa9ec1ddbcebe1920a34b7c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1038
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 39d0e79f 27-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

copyattr: Fix error output


# 204dee70 09-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Use libbe_build also on Haiku

This means the build tools will no longer be built against the host
platform's libbe, which avoids compatibility problems -- e.g. an
older Haiku host libbe may not have certain features the build tools
require -- and also makes the build behave more similiar on Haiku and
other platforms. The host libroot dependency still remains and is not
easy to get rid of.

Also remove some bits of BeOS/Dano/Zeta build support.


# cf844822 24-Nov-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added B_PRIdTIME and B_PRIiTIME macros (for time_t).
* Added FSSH_[S]SIZE_MAX to headers/private/fs_shell/fssh_types.h.
* Fixed various 64 bit compiler warnings. Nothing too serious, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34241 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a428058d 23-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Copy the attributes before setting the destination's permissions. At least
under Linux this caused trouble for files without write permission.
* Fixed gcc4 warning.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30833 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f3591f2 12-May-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30722 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc3955fe 23-Oct-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Preparations for removing __BEOS__ from the compiler defines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28305 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 54045c2e 07-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Explicitly support source paths with a leaf name "." or "..". In this
case the contents of the directory shall be copied into the target
directory, not the source directory itself. This is actually a feature
the build system uses for installing in a directory, but I've only
ever tested it under Linux and there a bug in libbe_build made it work
automatically. Fixes #2036.
* Removed copy and paste left-over for the "-x" and "-X" options.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24859 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b71cab01 25-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added the options -x and -X to copyattr. They can be used to specify an
exclude pattern for file respectively path names.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24584 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 338b8dc3 29-Oct-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged changes from branch build_system_redesign at revision 14573.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 39d0e79f2be67f6da2843db3695257a7a93fd7d7 27-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

copyattr: Fix error output


# 204dee708a999d5a71d0cb9497650ee7cef85d0a 09-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Use libbe_build also on Haiku

This means the build tools will no longer be built against the host
platform's libbe, which avoids compatibility problems -- e.g. an
older Haiku host libbe may not have certain features the build tools
require -- and also makes the build behave more similiar on Haiku and
other platforms. The host libroot dependency still remains and is not
easy to get rid of.

Also remove some bits of BeOS/Dano/Zeta build support.


# cf844822db58eed3db11f93243e38503eb1a4b91 24-Nov-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added B_PRIdTIME and B_PRIiTIME macros (for time_t).
* Added FSSH_[S]SIZE_MAX to headers/private/fs_shell/fssh_types.h.
* Fixed various 64 bit compiler warnings. Nothing too serious, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34241 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a428058ded434f15da13704249cca9ec22c1a952 23-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Copy the attributes before setting the destination's permissions. At least
under Linux this caused trouble for files without write permission.
* Fixed gcc4 warning.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30833 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f3591f267c7bb8197edd7191a8935a26384630f 12-May-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30722 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc3955fea5b07e2e94a27fc05e4bb58fe6f0319b 23-Oct-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Preparations for removing __BEOS__ from the compiler defines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28305 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 54045c2e44fb014082e1d770afd0be9e8faadc32 07-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Explicitly support source paths with a leaf name "." or "..". In this
case the contents of the directory shall be copied into the target
directory, not the source directory itself. This is actually a feature
the build system uses for installing in a directory, but I've only
ever tested it under Linux and there a bug in libbe_build made it work
automatically. Fixes #2036.
* Removed copy and paste left-over for the "-x" and "-X" options.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24859 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b71cab0178758ee8ba89c720a308b95983e98ae9 25-Mar-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Added the options -x and -X to copyattr. They can be used to specify an
exclude pattern for file respectively path names.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24584 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 338b8dc301721b1f472e8297a898d4eaa2f2ee3a 29-Oct-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged changes from branch build_system_redesign at revision 14573.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96