equal
deleted
inserted
replaced
27 #include "logging/logFileStreamOutput.hpp" |
27 #include "logging/logFileStreamOutput.hpp" |
28 #include "logging/logMessageBuffer.hpp" |
28 #include "logging/logMessageBuffer.hpp" |
29 #include "memory/allocation.inline.hpp" |
29 #include "memory/allocation.inline.hpp" |
30 |
30 |
31 static bool initialized; |
31 static bool initialized; |
32 static char stdoutmem[sizeof(LogStdoutOutput)]; |
32 static union { |
33 static char stderrmem[sizeof(LogStderrOutput)]; |
33 char stdoutmem[sizeof(LogStdoutOutput)]; |
|
34 jlong dummy; |
|
35 } aligned_stdoutmem; |
|
36 static union { |
|
37 char stderrmem[sizeof(LogStderrOutput)]; |
|
38 jlong dummy; |
|
39 } aligned_stderrmem; |
34 |
40 |
35 LogStdoutOutput &StdoutLog = reinterpret_cast<LogStdoutOutput&>(stdoutmem); |
41 LogStdoutOutput &StdoutLog = reinterpret_cast<LogStdoutOutput&>(aligned_stdoutmem.stdoutmem); |
36 LogStderrOutput &StderrLog = reinterpret_cast<LogStderrOutput&>(stderrmem); |
42 LogStderrOutput &StderrLog = reinterpret_cast<LogStderrOutput&>(aligned_stderrmem.stderrmem); |
37 |
43 |
38 LogFileStreamInitializer::LogFileStreamInitializer() { |
44 LogFileStreamInitializer::LogFileStreamInitializer() { |
39 if (!initialized) { |
45 if (!initialized) { |
40 ::new (&StdoutLog) LogStdoutOutput(); |
46 ::new (&StdoutLog) LogStdoutOutput(); |
41 ::new (&StderrLog) LogStderrOutput(); |
47 ::new (&StderrLog) LogStderrOutput(); |