Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit eacabaf

Browse files
snrkiwiPeter Soetens
authored andcommitted
Use O_LARGEFILE when creating log files on non-APPLE platforms.
Without the O_LARGEFILE flag, files on a linux system can not be larger than 2 GB.
1 parent b81c639 commit eacabaf

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/FileAppender.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,11 @@ namespace log4cpp {
3030
mode_t mode) :
3131
LayoutAppender(name),
3232
_fileName(fileName),
33+
#ifdef __APPLE__
3334
_flags(O_CREAT | O_APPEND | O_WRONLY),
35+
#else
36+
_flags(O_CREAT | O_APPEND | O_WRONLY | O_LARGEFILE),
37+
#endif
3438
_mode(mode) {
3539
if (!append)
3640
_flags |= O_TRUNC;
@@ -41,7 +45,11 @@ namespace log4cpp {
4145
LayoutAppender(name),
4246
_fileName(""),
4347
_fd(fd),
48+
#ifdef __APPLE__
4449
_flags(O_CREAT | O_APPEND | O_WRONLY),
50+
#else
51+
_flags(O_CREAT | O_APPEND | O_WRONLY | O_LARGEFILE),
52+
#endif
4553
_mode(00644) {
4654
}
4755

0 commit comments

Comments
 (0)