You can subscribe to this list here.
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(2) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
| 2015 |
Jan
|
Feb
|
Mar
(1) |
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
(2) |
Feb
|
Mar
|
Apr
(6) |
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(5) |
Nov
(4) |
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
(1) |
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2023 |
Jan
|
Feb
(11) |
Mar
(3) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
|
Dec
|
|
From: <log...@li...> - 2015-04-03 21:10:16
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via 1d93139cc8d083d38d3ab832283b0a86c900a9e4 (commit)
via 72385f1ef7638b0c63d1592452bba487ab76a5c1 (commit)
from ff355cd72f31b9dc4f87e114e9bc2754f1e8bc8d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit 1d93139cc8d083d38d3ab832283b0a86c900a9e4
Author: Alexander Perepelkin <san...@us...>
Date: Sat Apr 4 01:01:12 2015 +0400
DailyRollingFileAppender and tests for it: Linux, msvc2010
diff --git a/include/log4cpp/DailyRollingFileAppender.hh b/include/log4cpp/DailyRollingFileAppender.hh
new file mode 100644
index 0000000..e11a4ee
--- /dev/null
+++ b/include/log4cpp/DailyRollingFileAppender.hh
@@ -0,0 +1,45 @@
+/*
+ * DailyRollingFileAppender.hh
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
+#ifndef _LOG4CPP_DAILYROLLINGFILEAPPENDER_HH
+#define _LOG4CPP_DAILYROLLINGFILEAPPENDER_HH
+
+#include <log4cpp/Portability.hh>
+#include <log4cpp/FileAppender.hh>
+#include <string>
+#include <stdarg.h>
+
+namespace log4cpp {
+
+ /**
+ DailyRollingFileAppender is a FileAppender that rolls over the logfile once
+ the next day starts.
+ @since 1.1.2
+ **/
+ class LOG4CPP_EXPORT DailyRollingFileAppender : public FileAppender {
+ public:
+ DailyRollingFileAppender(const std::string& name,
+ const std::string& fileName,
+ unsigned int maxDaysToKeep = maxDaysToKeepDefault,
+ bool append = true,
+ mode_t mode = 00644);
+
+ virtual void setMaxDaysToKeep(unsigned int maxDaysToKeep);
+ virtual unsigned int getMaxDaysToKeep() const;
+
+ virtual void rollOver();
+
+ static unsigned int maxDaysToKeepDefault;
+ protected:
+ virtual void _append(const LoggingEvent& event);
+
+ unsigned int _maxDaysToKeep;
+ // last log's file creation time (or last modification if appender just created)
+ struct tm _logsTime;
+ };
+}
+
+#endif // _LOG4CPP_DAILYROLLINGFILEAPPENDER_HH
diff --git a/msvc10/msvc10.sln b/msvc10/msvc10.sln
index 96c14c4..d712cdf 100644
--- a/msvc10/msvc10.sln
+++ b/msvc10/msvc10.sln
@@ -1,89 +1,101 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cpp", "log4cpp\log4cpp.vcxproj", "{8C796FDD-5BB9-41D5-8471-DDC897C8C486}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testCategory", "testCategory\testCategory.vcxproj", "{0347D7FB-ECBD-E461-D1A7-3900286ADB39}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testDLL", "testDLL\testDLL.vcxproj", "{813F4A72-111B-54B9-FF71-20FFE82BD199}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testMain", "testMain\testMain.vcxproj", "{E1D631EF-17BF-0DEF-7051-F548524209B8}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNDC", "testNDC\testNDC.vcxproj", "{1293A7EA-6CEA-99E3-B182-2C70FAF48033}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNTEventLog", "testNTEventLog\testNTEventLog.vcxproj", "{4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPattern", "testPattern\testPattern.vcxproj", "{8132454B-2841-D9DB-CA23-0FB4F0957032}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPropConfig", "testPropConfig\testPropConfig.vcxproj", "{5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cppLIB", "log4cppLIB\log4cppLIB.vcxproj", "{AFA856A0-2388-4673-9277-CE4061709569}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug with Boost|Win32 = Debug with Boost|Win32
- Debug|Win32 = Debug|Win32
- Release with Boost|Win32 = Release with Boost|Win32
- Release|Win32 = Release|Win32
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug with Boost|Win32.ActiveCfg = Debug with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug with Boost|Win32.Build.0 = Debug with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug|Win32.ActiveCfg = Debug|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release with Boost|Win32.ActiveCfg = Release with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release with Boost|Win32.Build.0 = Release with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release|Win32.ActiveCfg = Release|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Debug|Win32.ActiveCfg = Debug|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Release with Boost|Win32.Build.0 = Release|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Release|Win32.ActiveCfg = Release|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Debug|Win32.ActiveCfg = Debug|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Release with Boost|Win32.Build.0 = Release|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Release|Win32.ActiveCfg = Release|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Debug|Win32.ActiveCfg = Debug|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Release with Boost|Win32.Build.0 = Release|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Release|Win32.ActiveCfg = Release|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Debug|Win32.ActiveCfg = Debug|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Release with Boost|Win32.Build.0 = Release|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Release|Win32.ActiveCfg = Release|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Debug|Win32.ActiveCfg = Debug|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Release with Boost|Win32.Build.0 = Release|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Release|Win32.ActiveCfg = Release|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Debug|Win32.ActiveCfg = Debug|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Release with Boost|Win32.Build.0 = Release|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Release|Win32.ActiveCfg = Release|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Debug|Win32.ActiveCfg = Debug|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Release with Boost|Win32.Build.0 = Release|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Release|Win32.ActiveCfg = Release|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug with Boost|Win32.ActiveCfg = Debug with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug with Boost|Win32.Build.0 = Debug with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug|Win32.ActiveCfg = Debug|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug|Win32.Build.0 = Debug|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release with Boost|Win32.ActiveCfg = Release with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release with Boost|Win32.Build.0 = Release with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release|Win32.ActiveCfg = Release|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release|Win32.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cpp", "log4cpp\log4cpp.vcxproj", "{8C796FDD-5BB9-41D5-8471-DDC897C8C486}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testCategory", "testCategory\testCategory.vcxproj", "{10F2E851-7448-9243-D562-F8D9B73CBBA3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testRollingFileAppender", "testRollingFileAppender\testRollingFileAppender.vcxproj", "{3B59E1C4-5E21-7EDC-65A4-EF00F14A06F9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testDailyRollingFileAppender", "testDailyRollingFileAppender\testDailyRollingFileAppender.vcxproj", "{EE21BD7B-DE51-0E46-F2BE-0ADAD400CF39}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testDLL", "testDLL\testDLL.vcxproj", "{161D6B87-4EB8-FE88-3D3F-C633B53EC37C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testMain", "testMain\testMain.vcxproj", "{26BD5108-03AB-CC39-F67B-556F4B308578}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNDC", "testNDC\testNDC.vcxproj", "{272F1ED6-5AA2-39ED-6B34-018AECD033CB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNTEventLog", "testNTEventLog\testNTEventLog.vcxproj", "{4397E5A9-9A3C-B0B5-71AB-B12944F70578}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPattern", "testPattern\testPattern.vcxproj", "{0382AEE1-DF52-72B6-8F1B-845048C09CEB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPropConfig", "testPropConfig\testPropConfig.vcxproj", "{CBD1803A-2183-3733-E316-B89082C4DBF5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cppLIB", "log4cppLIB\log4cppLIB.vcxproj", "{AFA856A0-2388-4673-9277-CE4061709569}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug with Boost|Win32 = Debug with Boost|Win32
+ Debug|Win32 = Debug|Win32
+ Release with Boost|Win32 = Release with Boost|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug with Boost|Win32.ActiveCfg = Debug with Boost|Win32
+ {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug with Boost|Win32.Build.0 = Debug with Boost|Win32
+ {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug|Win32.ActiveCfg = Debug|Win32
+ {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release with Boost|Win32.ActiveCfg = Release with Boost|Win32
+ {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release with Boost|Win32.Build.0 = Release with Boost|Win32
+ {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release|Win32.ActiveCfg = Release|Win32
+ {10F2E851-7448-9243-D562-F8D9B73CBBA3}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {10F2E851-7448-9243-D562-F8D9B73CBBA3}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {10F2E851-7448-9243-D562-F8D9B73CBBA3}.Debug|Win32.ActiveCfg = Debug|Win32
+ {10F2E851-7448-9243-D562-F8D9B73CBBA3}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {10F2E851-7448-9243-D562-F8D9B73CBBA3}.Release with Boost|Win32.Build.0 = Release|Win32
+ {10F2E851-7448-9243-D562-F8D9B73CBBA3}.Release|Win32.ActiveCfg = Release|Win32
+ {3B59E1C4-5E21-7EDC-65A4-EF00F14A06F9}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {3B59E1C4-5E21-7EDC-65A4-EF00F14A06F9}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3B59E1C4-5E21-7EDC-65A4-EF00F14A06F9}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {3B59E1C4-5E21-7EDC-65A4-EF00F14A06F9}.Release|Win32.ActiveCfg = Release|Win32
+ {EE21BD7B-DE51-0E46-F2BE-0ADAD400CF39}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {EE21BD7B-DE51-0E46-F2BE-0ADAD400CF39}.Debug|Win32.ActiveCfg = Debug|Win32
+ {EE21BD7B-DE51-0E46-F2BE-0ADAD400CF39}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {EE21BD7B-DE51-0E46-F2BE-0ADAD400CF39}.Release|Win32.ActiveCfg = Release|Win32
+ {161D6B87-4EB8-FE88-3D3F-C633B53EC37C}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {161D6B87-4EB8-FE88-3D3F-C633B53EC37C}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {161D6B87-4EB8-FE88-3D3F-C633B53EC37C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {161D6B87-4EB8-FE88-3D3F-C633B53EC37C}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {161D6B87-4EB8-FE88-3D3F-C633B53EC37C}.Release with Boost|Win32.Build.0 = Release|Win32
+ {161D6B87-4EB8-FE88-3D3F-C633B53EC37C}.Release|Win32.ActiveCfg = Release|Win32
+ {26BD5108-03AB-CC39-F67B-556F4B308578}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {26BD5108-03AB-CC39-F67B-556F4B308578}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {26BD5108-03AB-CC39-F67B-556F4B308578}.Debug|Win32.ActiveCfg = Debug|Win32
+ {26BD5108-03AB-CC39-F67B-556F4B308578}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {26BD5108-03AB-CC39-F67B-556F4B308578}.Release with Boost|Win32.Build.0 = Release|Win32
+ {26BD5108-03AB-CC39-F67B-556F4B308578}.Release|Win32.ActiveCfg = Release|Win32
+ {272F1ED6-5AA2-39ED-6B34-018AECD033CB}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {272F1ED6-5AA2-39ED-6B34-018AECD033CB}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {272F1ED6-5AA2-39ED-6B34-018AECD033CB}.Debug|Win32.ActiveCfg = Debug|Win32
+ {272F1ED6-5AA2-39ED-6B34-018AECD033CB}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {272F1ED6-5AA2-39ED-6B34-018AECD033CB}.Release with Boost|Win32.Build.0 = Release|Win32
+ {272F1ED6-5AA2-39ED-6B34-018AECD033CB}.Release|Win32.ActiveCfg = Release|Win32
+ {4397E5A9-9A3C-B0B5-71AB-B12944F70578}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {4397E5A9-9A3C-B0B5-71AB-B12944F70578}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {4397E5A9-9A3C-B0B5-71AB-B12944F70578}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4397E5A9-9A3C-B0B5-71AB-B12944F70578}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {4397E5A9-9A3C-B0B5-71AB-B12944F70578}.Release with Boost|Win32.Build.0 = Release|Win32
+ {4397E5A9-9A3C-B0B5-71AB-B12944F70578}.Release|Win32.ActiveCfg = Release|Win32
+ {0382AEE1-DF52-72B6-8F1B-845048C09CEB}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {0382AEE1-DF52-72B6-8F1B-845048C09CEB}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {0382AEE1-DF52-72B6-8F1B-845048C09CEB}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0382AEE1-DF52-72B6-8F1B-845048C09CEB}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {0382AEE1-DF52-72B6-8F1B-845048C09CEB}.Release with Boost|Win32.Build.0 = Release|Win32
+ {0382AEE1-DF52-72B6-8F1B-845048C09CEB}.Release|Win32.ActiveCfg = Release|Win32
+ {CBD1803A-2183-3733-E316-B89082C4DBF5}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
+ {CBD1803A-2183-3733-E316-B89082C4DBF5}.Debug with Boost|Win32.Build.0 = Debug|Win32
+ {CBD1803A-2183-3733-E316-B89082C4DBF5}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CBD1803A-2183-3733-E316-B89082C4DBF5}.Release with Boost|Win32.ActiveCfg = Release|Win32
+ {CBD1803A-2183-3733-E316-B89082C4DBF5}.Release with Boost|Win32.Build.0 = Release|Win32
+ {CBD1803A-2183-3733-E316-B89082C4DBF5}.Release|Win32.ActiveCfg = Release|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Debug with Boost|Win32.ActiveCfg = Debug with Boost|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Debug with Boost|Win32.Build.0 = Debug with Boost|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Debug|Win32.ActiveCfg = Debug|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Debug|Win32.Build.0 = Debug|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Release with Boost|Win32.ActiveCfg = Release with Boost|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Release with Boost|Win32.Build.0 = Release with Boost|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Release|Win32.ActiveCfg = Release|Win32
+ {AFA856A0-2388-4673-9277-CE4061709569}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/msvc10/testDailyRollingFileAppender/testConfig.log4cpp.dailyroll.nt.properties b/msvc10/testDailyRollingFileAppender/testConfig.log4cpp.dailyroll.nt.properties
new file mode 100644
index 0000000..dce97d6
--- /dev/null
+++ b/msvc10/testDailyRollingFileAppender/testConfig.log4cpp.dailyroll.nt.properties
@@ -0,0 +1,19 @@
+# a DailyRollingFileAppender test config
+
+log4j.rootCategory=DEBUG, rootAppender
+log4j.category.sub1=,DAILY, NCDAILY
+
+log4j.appender.rootAppender=org.apache.log4j.ConsoleAppender
+log4j.appender.rootAppender.layout=org.apache.log4j.BasicLayout
+
+log4cpp.appender.DAILY=DailyRollingFileAppender
+log4cpp.appender.DAILY.fileName=dailyrolling.log
+log4cpp.appender.DAILY.maxDaysKeep=1
+log4cpp.appender.DAILY.layout=PatternLayout
+log4cpp.appender.DAILY.layout.ConversionPattern=%d [%p] The message %m at time %d{%H:%M}%n
+
+log4cpp.appender.NCDAILY=DailyRollingFileAppender
+log4cpp.appender.NCDAILY.fileName=nesteddir\dailyrolling.log
+log4cpp.appender.NCDAILY.maxDaysKeep=1
+log4cpp.appender.NCDAILY.layout=PatternLayout
+log4cpp.appender.NCDAILY.layout.ConversionPattern=%d [%p] The message %m at time %d{%H:%M}%n
diff --git a/msvc10/testDailyRollingFileAppender/testDailyRollingFileAppender.vcxproj b/msvc10/testDailyRollingFileAppender/testDailyRollingFileAppender.vcxproj
new file mode 100644
index 0000000..b22e30f
--- /dev/null
+++ b/msvc10/testDailyRollingFileAppender/testDailyRollingFileAppender.vcxproj
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <SccProjectName />
+ <SccLocalPath />
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseOfMfc>false</UseOfMfc>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseOfMfc>false</UseOfMfc>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <PrecompiledHeaderOutputFile>.\Debug/testDailyRollingFileAppender.pch</PrecompiledHeaderOutputFile>
+ <AssemblerListingLocation>.\Debug/</AssemblerListingLocation>
+ <ObjectFileName>.\Debug/</ObjectFileName>
+ <ProgramDataBaseFileName>.\Debug/</ProgramDataBaseFileName>
+ <WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ <CompileAs>Default</CompileAs>
+ </ClCompile>
+ <Link>
+ <OutputFile>.\Debug/testDailyRollingFileAppender.exe</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>.\Debug/testDailyRollingFileAppender.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ <Midl>
+ <TypeLibraryName>.\Debug/testDailyRollingFileAppender.tlb</TypeLibraryName>
+ <HeaderFileName>
+ </HeaderFileName>
+ </Midl>
+ <ResourceCompile>
+ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <Culture>0x0409</Culture>
+ </ResourceCompile>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
+ <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <StringPooling>true</StringPooling>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <PrecompiledHeaderOutputFile>.\Release/testDailyRollingFileAppender.pch</PrecompiledHeaderOutputFile>
+ <AssemblerListingLocation>.\Release/</AssemblerListingLocation>
+ <ObjectFileName>.\Release/</ObjectFileName>
+ <ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
+ <WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <CompileAs>Default</CompileAs>
+ </ClCompile>
+ <Link>
+ <OutputFile>.\Release/testDailyRollingFileAppender.exe</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <ProgramDatabaseFile>.\Release/testDailyRollingFileAppender.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ <Midl>
+ <TypeLibraryName>.\Release/testDailyRollingFileAppender.tlb</TypeLibraryName>
+ <HeaderFileName>
+ </HeaderFileName>
+ </Midl>
+ <ResourceCompile>
+ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <Culture>0x0409</Culture>
+ </ResourceCompile>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\tests\testDailyRollingFileAppender.cpp">
+ <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
+ <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
+ <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
+ <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\log4cppLIB\log4cppLIB.vcxproj">
+ <Project>{afa856a0-2388-4673-9277-ce4061709569}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc10/testDailyRollingFileAppender/testDailyRollingFileAppender.vcxproj.user b/msvc10/testDailyRollingFileAppender/testDailyRollingFileAppender.vcxproj.user
new file mode 100644
index 0000000..f5e1823
--- /dev/null
+++ b/msvc10/testDailyRollingFileAppender/testDailyRollingFileAppender.vcxproj.user
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ShowAllFiles>false</ShowAllFiles>
+ </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc10/testRollingFileAppender/testRollingFileAppender.vcxproj b/msvc10/testRollingFileAppender/testRollingFileAppender.vcxproj
new file mode 100644
index 0000000..5d5eb73
--- /dev/null
+++ b/msvc10/testRollingFileAppender/testRollingFileAppender.vcxproj
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <SccProjectName />
+ <SccLocalPath />
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseOfMfc>false</UseOfMfc>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseOfMfc>false</UseOfMfc>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
+ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</OutDir>
+ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</IntDir>
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
+ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
+ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <PrecompiledHeaderOutputFile>.\Debug/testRollingFileAppender.pch</PrecompiledHeaderOutputFile>
+ <AssemblerListingLocation>.\Debug/</AssemblerListingLocation>
+ <ObjectFileName>.\Debug/</ObjectFileName>
+ <ProgramDataBaseFileName>.\Debug/</ProgramDataBaseFileName>
+ <WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ <CompileAs>Default</CompileAs>
+ </ClCompile>
+ <Link>
+ <OutputFile>.\Debug/testRollingFileAppender.exe</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <ProgramDatabaseFile>.\Debug/testRollingFileAppender.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ <Midl>
+ <TypeLibraryName>.\Debug/testRollingFileAppender.tlb</TypeLibraryName>
+ <HeaderFileName>
+ </HeaderFileName>
+ </Midl>
+ <ResourceCompile>
+ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <Culture>0x0409</Culture>
+ </ResourceCompile>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
+ <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <StringPooling>true</StringPooling>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <PrecompiledHeaderOutputFile>.\Release/testRollingFileAppender.pch</PrecompiledHeaderOutputFile>
+ <AssemblerListingLocation>.\Release/</AssemblerListingLocation>
+ <ObjectFileName>.\Release/</ObjectFileName>
+ <ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
+ <WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <CompileAs>Default</CompileAs>
+ </ClCompile>
+ <Link>
+ <OutputFile>.\Release/testRollingFileAppender.exe</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <ProgramDatabaseFile>.\Release/testRollingFileAppender.pdb</ProgramDatabaseFile>
+ <SubSystem>Console</SubSystem>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ <Midl>
+ <TypeLibraryName>.\Release/testRollingFileAppender.tlb</TypeLibraryName>
+ <HeaderFileName>
+ </HeaderFileName>
+ </Midl>
+ <ResourceCompile>
+ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <Culture>0x0409</Culture>
+ </ResourceCompile>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\..\tests\testRollingFileAppender.cpp">
+ <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
+ <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
+ <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
+ <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\log4cppLIB\log4cppLIB.vcxproj">
+ <Project>{afa856a0-2388-4673-9277-ce4061709569}</Project>
+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc10/testRollingFileAppender/testRollingFileAppender.vcxproj.user b/msvc10/testRollingFileAppender/testRollingFileAppender.vcxproj.user
new file mode 100644
index 0000000..f5e1823
--- /dev/null
+++ b/msvc10/testRollingFileAppender/testRollingFileAppender.vcxproj.user
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <ShowAllFiles>false</ShowAllFiles>
+ </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/src/DailyRollingFileAppender.cpp b/src/DailyRollingFileAppender.cpp
new file mode 100644
index 0000000..a20913f
--- /dev/null
+++ b/src/DailyRollingFileAppender.cpp
@@ -0,0 +1,174 @@
+/*
+ * DailyRollingFileAppender.cpp
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
+#include "PortabilityImpl.hh"
+#ifdef LOG4CPP_HAVE_IO_H
+# include <io.h>
+#endif
+#ifdef LOG4CPP_HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <log4cpp/DailyRollingFileAppender.hh>
+#include <log4cpp/Category.hh>
+#include <log4cpp/FactoryParams.hh>
+#include <memory>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <iostream>
+
+#ifdef LOG4CPP_HAVE_SSTREAM
+#include <sstream>
+#include <iomanip>
+#endif
+
+#ifndef WIN32 // only available on Win32
+#include <dirent.h>
+#endif
+
+namespace log4cpp {
+
+ unsigned int DailyRollingFileAppender::maxDaysToKeepDefault = 30;
+
+ DailyRollingFileAppender::DailyRollingFileAppender(const std::string& name,
+ const std::string& fileName,
+ unsigned int maxDaysToKeep,
+ bool append,
+ mode_t mode) :
+ FileAppender(name, fileName, append, mode),
+ _maxDaysToKeep(maxDaysToKeep != 0 ? maxDaysToKeep : maxDaysToKeepDefault) {
+ struct stat statBuf;
+ int res;
+ time_t t;
+
+ // obtain last modification time
+ res = ::stat(fileName.c_str(), &statBuf);
+ if (res < 0) {
+ t = time(NULL);
+ } else {
+ t = statBuf.st_mtime;
+ }
+#ifndef WIN32 // only available on Win32
+ localtime_r(&t, &_logsTime);
+#else
+ localtime_s(&_logsTime, &t);
+#endif
+ }
+
+ void DailyRollingFileAppender::setMaxDaysToKeep(unsigned int maxDaysToKeep) {
+ _maxDaysToKeep = maxDaysToKeep;
+ }
+
+ unsigned int DailyRollingFileAppender::getMaxDaysToKeep() const {
+ return _maxDaysToKeep;
+ }
+
+ void DailyRollingFileAppender::rollOver()
+ {
+ std::ostringstream filename_s;
+ ::close(_fd);
+ filename_s << _fileName << "." << _logsTime.tm_year + 1900 << "-"
+ << std::setfill('0') << std::setw(2) << _logsTime.tm_mon + 1 << "-"
+ << std::setw(2) << _logsTime.tm_mday << std::ends;
+ const std::string lastFn = filename_s.str();
+ ::rename(_fileName.c_str(), lastFn.c_str());
+
+ _fd = ::open(_fileName.c_str(), _flags, _mode);
+
+ const time_t oldest = time(NULL) - _maxDaysToKeep * 60 * 60 * 24;
+
+#ifndef WIN32
+#define PATHDELIMITER "/"
+#else
+#define PATHDELIMITER "\\"
+#endif
+ // iterate over files around log file and delete older with same prefix
+ const std::string::size_type last_delimiter = _fileName.rfind(PATHDELIMITER);
+ const std::string dirname((last_delimiter == std::string::npos)? "." : _fileName.substr(0, last_delimiter));
+ const std::string filname((last_delimiter == std::string::npos)? _fileName : _fileName.substr(last_delimiter+1, _fileName.size()-last_delimiter-1));
+#ifndef WIN32 // only available on Win32
+ struct dirent **entries;
+ int nentries = scandir(dirname.c_str(), &entries, 0, alphasort);
+ if (nentries < 0)
+ return;
+ for (int i = 0; i < nentries; i++) {
+ struct stat statBuf;
+ int res = ::stat(entries[i]->d_name, &statBuf);
+ if ((res == -1) || (!S_ISREG(statBuf.st_mode))) {
+ free(entries[i]);
+ continue;
+ }
+ if (statBuf.st_mtime < oldest && strstr(entries[i]->d_name, filname.c_str())) {
+ const std::string fullfilename = dirname + PATHDELIMITER + entries[i]->d_name;
+ ::unlink(fullfilename.c_str());
+ std::cout << " Deleting " << fullfilename.c_str() << std::endl;
+ }
+ free(entries[i]);
+ }
+ free(entries);
+#else
+ HANDLE hFind = INVALID_HANDLE_VALUE;
+ WIN32_FIND_DATA ffd;
+ const std::string pattern = _fileName + "*";
+
+ hFind = FindFirstFile(pattern.c_str(), &ffd);
+ if (hFind != INVALID_HANDLE_VALUE) {
+ do {
+ struct stat statBuf;
+ const std::string fullfilename = dirname + PATHDELIMITER + ffd.cFileName;
+ int res = ::stat(fullfilename.c_str(), &statBuf);
+ if (res != -1 && statBuf.st_mtime < oldest && !(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) {
+ std::cout << "Deleting " << fullfilename << "\n";
+ ::unlink(fullfilename.c_str());
+ }
+ } while (FindNextFile(hFind, &ffd) != 0);
+
+ if (GetLastError() != ERROR_NO_MORE_FILES) {
+ // [XXX] some kind of error happened
+ }
+ FindClose(hFind);
+ hFind = INVALID_HANDLE_VALUE;
+ }
+#endif
+ }
+
+ void DailyRollingFileAppender::_append(const log4cpp::LoggingEvent &event)
+ {
+ struct tm now;
+ time_t t = time(NULL);
+
+#ifndef WIN32 // only available on Win32
+ bool timeok = localtime_r(&t, &now) != NULL;
+#else
+ bool timeok = localtime_s(&now, &t) == 0;
+#endif
+ if (timeok) {
+ if ((now.tm_mday != _logsTime.tm_mday) ||
+ (now.tm_mon != _logsTime.tm_mon) ||
+ (now.tm_year != _logsTime.tm_year)) {
+ rollOver();
+ _logsTime = now;
+ }
+ }
+ log4cpp::FileAppender::_append(event);
+ }
+
+ std::auto_ptr<Appender> create_daily_roll_file_appender(const FactoryParams& params)
+ {
+ std::string name, filename;
+ bool append = true;
+ mode_t mode = 664;
+ unsigned int max_days_keep = 0;
+ params.get_for("daily roll file appender").required("name", name)("filename", filename)("max_days_keep", max_days_keep)
+ .optional("append", append)("mode", mode);
+
+ return std::auto_ptr<Appender>(new DailyRollingFileAppender(name, filename, max_days_keep, append, mode));
+ }
+}
diff --git a/tests/Makefile.am b/tests/Makefile.am
index d91e087..ed6101d 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,6 +1,6 @@
TESTS = testCategory testFixedContextCategory testNDC testPattern \
testErrorCollision testPriority testFilter testProperties \
- testConfig testPropertyConfig
+ testConfig testPropertyConfig testRollingFileAppender testDailyRollingFileAppender
check_PROGRAMS = $(TESTS)
check_DATA = log4cpp.init log4cpp.properties testProperties.properties \
@@ -50,5 +50,11 @@ testbench_LDADD = $(top_builddir)/src/liblog4cpp.la
testErrorCollision_SOURCES = testErrorCollision.cpp
testErrorCollision_LDADD = $(top_builddir)/src/liblog4cpp.la
+testRollingFileAppender_SOURCES = testRollingFileAppender.cpp
+testRollingFileAppender_LDADD = $(top_builddir)/src/liblog4cpp.la
+
+testDailyRollingFileAppender_SOURCES = testDailyRollingFileAppender.cpp
+testDailyRollingFileAppender_LDADD = $(top_builddir)/src/liblog4cpp.la
+
distclean-local:
$(RM) -f *.log
diff --git a/tests/jamfile b/tests/jamfile
index 15973bb..fbaf7b9 100644
--- a/tests/jamfile
+++ b/tests/jamfile
@@ -18,4 +18,5 @@ test-suite log4cpp :
[ run testPropConfig.cpp ]
[ run test_convenience.cpp ]
[ run testRollingFileAppender.cpp ]
+ [ run testDailyRollingFileAppender.cpp ]
;
diff --git a/tests/testConfig.log4cpp.dailyroll.properties b/tests/testConfig.log4cpp.dailyroll.properties
new file mode 100644
index 0000000..0c8d266
--- /dev/null
+++ b/tests/testConfig.log4cpp.dailyroll.properties
@@ -0,0 +1,19 @@
+# a DailyRollingFileAppender test config
+
+log4j.rootCategory=DEBUG, rootAppender
+log4j.category.sub1=,DAILY, NCDAILY
+
+log4j.appender.rootAppender=org.apache.log4j.ConsoleAppender
+log4j.appender.rootAppender.layout=org.apache.log4j.BasicLayout
+
+log4cpp.appender.DAILY=DailyRollingFileAppender
+log4cpp.appender.DAILY.fileName=dailyrolling.log
+log4cpp.appender.DAILY.maxDaysKeep=1
+log4cpp.appender.DAILY.layout=PatternLayout
+log4cpp.appender.DAILY.layout.ConversionPattern=%d [%p] The message %m at time %d{%H:%M}%n
+
+log4cpp.appender.NCDAILY=DailyRollingFileAppender
+log4cpp.appender.NCDAILY.fileName=nesteddir/dailyrolling.log
+log4cpp.appender.NCDAILY.maxDaysKeep=1
+log4cpp.appender.NCDAILY.layout=PatternLayout
+log4cpp.appender.NCDAILY.layout.ConversionPattern=%d [%p] The message %m at time %d{%H:%M}%n
diff --git a/tests/testDailyRollingFileAppender.cpp b/tests/testDailyRollingFileAppender.cpp
new file mode 100644
index 0000000..c8b5a85
--- /dev/null
+++ b/tests/testDailyRollingFileAppender.cpp
@@ -0,0 +1,158 @@
+#include <log4cpp/Category.hh>
+#include <log4cpp/PropertyConfigurator.hh>
+#include <log4cpp/DailyRollingFileAppender.hh>
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <iostream>
+
+#ifdef WIN32
+#pragma comment(lib, "Ws2_32.lib")
+#endif
+
+using namespace log4cpp;
+using namespace std;
+static const char* const test_message = "message";
+static const char* const daily_file_prefix = "dailyrolling_file.log";
+static const char* const nestedDir = "nesteddir";
+#ifndef WIN32
+#define PATHDELIMITER "/"
+#else
+#define PATHDELIMITER "\\"
+#endif
+const char* const nesteddirname = "nesteddir"PATHDELIMITER;
+
+
+class DailyRollingTest {
+ DailyRollingFileAppender* dailyApp, *nestedDirDailyApp;
+public:
+ bool remove_impl(const char* filename)
+ {
+ int res = remove(filename);
+
+ if (res != 0 && errno != ENOENT)
+ cout << "Can't remove file '" << filename << "'.\n";
+
+ return res == 0 || (res != 0 && errno == ENOENT);
+ }
+
+ bool remove_files()
+ {
+// if (!remove_impl(daily_file_prefix))
+// return false;
+
+ return true;
+ }
+
+ bool setup()
+ {
+ if (!remove_files())
+ return false;
+
+ Category& root = Category::getRoot();
+ dailyApp = new DailyRollingFileAppender("daily-rolling-appender", daily_file_prefix, 1);
+ nestedDirDailyApp = new DailyRollingFileAppender("nesteddir-daily-rolling-appender", std::string(nesteddirname).append(daily_file_prefix), 1);
+ root.addAppender(dailyApp);
+ root.addAppender(nestedDirDailyApp);
+ root.setPriority(Priority::DEBUG);
+
+ return true;
+ }
+
+ void make_log_files()
+ {
+ Category::getRoot().debugStream() << test_message << 1;
+ Category::getRoot().debugStream() << test_message << 2;
+ Category::getRoot().debugStream() << test_message << 3;
+ Category::getRoot().debugStream() << "The message before rolling over attempt";
+ dailyApp->rollOver();
+ nestedDirDailyApp->rollOver();
+ Category::getRoot().debugStream() << "The message after rolling over attempt";
+ Category::getRoot().debugStream() << test_message << 4;
+ Category::getRoot().debugStream() << test_message << 5;
+ }
+
+ bool exists(const char* filename)
+ {
+ FILE* f = fopen(filename, "r");
+ if (f == NULL)
+ {
+ cout << "File '" << filename << "' doesn't exists.\n";
+ return false;
+ }
+
+ fclose(f);
+
+ return true;
+ }
+
+ bool check_log_files()
+ {
+ bool result = exists(daily_file_prefix);
+
+ Category::shutdown();
+ return result && remove_files();
+ }
+};
+
+int testOnlyDailyRollingFileAppender() {
+ DailyRollingTest dailyTest;
+ if (!dailyTest.setup())
+ {
+ cout << "Setup has failed. Check for permissions on files " << daily_file_prefix << "*'.\n";
+ return -1;
+ }
+
+ dailyTest.make_log_files();
+
+ if (dailyTest.check_log_files())
+ return 0;
+ else
+ return -1;
+}
+
+int testConfigDailyRollingFileAppender()
+{
+ /* looking for the init file in $srcdir is a requirement of
+ automake's distcheck target.
+ */
+ const char* srcdir = getenv("srcdir");
+ std::string initFileName;
+ try {
+#if defined(WIN32)
+ initFileName = "./testConfig.log4cpp.dailyroll.nt.properties";
+#else
+ initFileName = "./testConfig.log4cpp.dailyroll.properties";
+#endif
+ if (srcdir != NULL) {
+ initFileName = std::string(srcdir) + PATHDELIMITER + initFileName;
+ }
+
+ log4cpp::PropertyConfigurator::configure(initFileName);
+ } catch(log4cpp::ConfigureFailure& f) {
+ std::cout << "Configure Problem " << f.what() << "($srcdir=" << ((srcdir != NULL)?srcdir:"NULL") << ")" << std::endl;
+ return -1;
+ }
+
+ log4cpp::Category& root = log4cpp::Category::getRoot();
+
+ log4cpp::Category& sub1 =
+ log4cpp::Category::getInstance(std::string("sub1"));
+
+ root.error("root error");
+ root.warn("root warn");
+ sub1.error("sub1 error");
+ sub1.warn("sub1 warn");
+
+ log4cpp::Category::shutdown();
+ return 0;
+}
+
+int main()
+{
+ int res = testOnlyDailyRollingFileAppender();
+ if (!res)
+ res = testConfigDailyRollingFileAppender();
+
+ return res;
+}
http://sourceforge.net/p/log4cpp/codegit/ci/
commit 1d93139cc8d083d38d3ab832283b0a86c900a9e4
Author: Alexander Perepelkin <san...@us...>
Date: Sat Apr 4 01:01:12 2015 +0400
DailyRollingFileAppender and tests for it: Linux, msvc2010
diff --git a/include/log4cpp/DailyRollingFileAppender.hh b/include/log4cpp/DailyRollingFileAppender.hh
new file mode 100644
index 0000000..e11a4ee
--- /dev/null
+++ b/include/log4cpp/DailyRollingFileAppender.hh
@@ -0,0 +1,45 @@
+/*
+ * DailyRollingFileAppender.hh
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
+#ifndef _LOG4CPP_DAILYROLLINGFILEAPPENDER_HH
+#define _LOG4CPP_DAILYROLLINGFILEAPPENDER_HH
+
+#include <log4cpp/Portability.hh>
+#include <log4cpp/FileAppender.hh>
+#include <string>
+#include <stdarg.h>
+
+namespace log4cpp {
+
+ /**
+ DailyRollingFileAppender is a FileAppender that rolls over the logfile once
+ the next day starts.
+ @since 1.1.2
+ **/
+ class LOG4CPP_EXPORT DailyRollingFileAppender : public FileAppender {
+ public:
+ DailyRollingFileAppender(const std::string& name,
+ const std::string& fileName,
+ unsigned int maxDaysToKeep = maxDaysToKeepDefault,
+ bool append = true,
+ mode_t mode = 00644);
+
+ virtual void setMaxDaysToKeep(unsigned int maxDaysToKeep);
+ virtual unsigned int getMaxDaysToKeep() const;
+
+ virtual void rollOver();
+
+ static unsigned int maxDaysToKeepDefault;
+ protected:
+ virtual void _append(const LoggingEvent& event);
+
+ unsigned int _maxDaysToKeep;
+ // last log's file creation time (or last modification if appender just created)
+ struct tm _logsTime;
+ };
+}
+
+#endif // _LOG4CPP_DAILYROLLINGFILEAPPENDER_HH
diff --git a/msvc10/msvc10.sln b/msvc10/msvc10.sln
index 96c14c4..d712cdf 100644
--- a/msvc10/msvc10.sln
+++ b/msvc10/msvc10.sln
@@ -1,89 +1,101 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cpp", "log4cpp\log4cpp.vcxproj", "{8C796FDD-5BB9-41D5-8471-DDC897C8C486}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testCategory", "testCategory\testCategory.vcxproj", "{0347D7FB-ECBD-E461-D1A7-3900286ADB39}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testDLL", "testDLL\testDLL.vcxproj", "{813F4A72-111B-54B9-FF71-20FFE82BD199}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testMain", "testMain\testMain.vcxproj", "{E1D631EF-17BF-0DEF-7051-F548524209B8}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNDC", "testNDC\testNDC.vcxproj", "{1293A7EA-6CEA-99E3-B182-2C70FAF48033}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNTEventLog", "testNTEventLog\testNTEventLog.vcxproj", "{4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPattern", "testPattern\testPattern.vcxproj", "{8132454B-2841-D9DB-CA23-0FB4F0957032}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPropConfig", "testPropConfig\testPropConfig.vcxproj", "{5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cppLIB", "log4cppLIB\log4cppLIB.vcxproj", "{AFA856A0-2388-4673-9277-CE4061709569}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug with Boost|Win32 = Debug with Boost|Win32
- Debug|Win32 = Debug|Win32
- Release with Boost|Win32 = Release with Boost|Win32
- Release|Win32 = Release|Win32
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug with Boost|Win32.ActiveCfg = Debug with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug with Boost|Win32.Build.0 = Debug with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Debug|Win32.ActiveCfg = Debug|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release with Boost|Win32.ActiveCfg = Release with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release with Boost|Win32.Build.0 = Release with Boost|Win32
- {8C796FDD-5BB9-41D5-8471-DDC897C8C486}.Release|Win32.ActiveCfg = Release|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Debug|Win32.ActiveCfg = Debug|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Release with Boost|Win32.Build.0 = Release|Win32
- {0347D7FB-ECBD-E461-D1A7-3900286ADB39}.Release|Win32.ActiveCfg = Release|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Debug|Win32.ActiveCfg = Debug|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Release with Boost|Win32.Build.0 = Release|Win32
- {813F4A72-111B-54B9-FF71-20FFE82BD199}.Release|Win32.ActiveCfg = Release|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Debug|Win32.ActiveCfg = Debug|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Release with Boost|Win32.Build.0 = Release|Win32
- {E1D631EF-17BF-0DEF-7051-F548524209B8}.Release|Win32.ActiveCfg = Release|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Debug|Win32.ActiveCfg = Debug|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Release with Boost|Win32.Build.0 = Release|Win32
- {1293A7EA-6CEA-99E3-B182-2C70FAF48033}.Release|Win32.ActiveCfg = Release|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Debug|Win32.ActiveCfg = Debug|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Release with Boost|Win32.Build.0 = Release|Win32
- {4DAB4E24-92CF-A476-5D7F-7272C9BCBF79}.Release|Win32.ActiveCfg = Release|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Debug|Win32.ActiveCfg = Debug|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Release with Boost|Win32.Build.0 = Release|Win32
- {8132454B-2841-D9DB-CA23-0FB4F0957032}.Release|Win32.ActiveCfg = Release|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Debug with Boost|Win32.ActiveCfg = Debug|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Debug with Boost|Win32.Build.0 = Debug|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Debug|Win32.ActiveCfg = Debug|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Release with Boost|Win32.ActiveCfg = Release|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Release with Boost|Win32.Build.0 = Release|Win32
- {5040EFF2-9A4A-223A-ABB1-8022B3BF34F3}.Release|Win32.ActiveCfg = Release|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug with Boost|Win32.ActiveCfg = Debug with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug with Boost|Win32.Build.0 = Debug with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug|Win32.ActiveCfg = Debug|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Debug|Win32.Build.0 = Debug|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release with Boost|Win32.ActiveCfg = Release with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release with Boost|Win32.Build.0 = Release with Boost|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release|Win32.ActiveCfg = Release|Win32
- {AFA856A0-2388-4673-9277-CE4061709569}.Release|Win32.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cpp", "log4cpp\log4cpp.vcxproj", "{8C796FDD-5BB9-41D5-8471-DDC897C8C486}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testCategory", "testCategory\testCategory.vcxproj", "{10F2E851-7448-9243-D562-F8D9B73CBBA3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testRollingFileAppender", "testRollingFileAppender\testRollingFileAppender.vcxproj", "{3B59E1C4-5E21-7EDC-65A4-EF00F14A06F9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testDailyRollingFileAppender", "testDailyRollingFileAppender\testDailyRollingFileAppender.vcxproj", "{EE21BD7B-DE51-0E46-F2BE-0ADAD400CF39}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testDLL", "testDLL\testDLL.vcxproj", "{161D6B87-4EB8-FE88-3D3F-C633B53EC37C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testMain", "testMain\testMain.vcxproj", "{26BD5108-03AB-CC39-F67B-556F4B308578}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNDC", "testNDC\testNDC.vcxproj", "{272F1ED6-5AA2-39ED-6B34-018AECD033CB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testNTEventLog", "testNTEventLog\testNTEventLog.vcxproj", "{4397E5A9-9A3C-B0B5-71AB-B12944F70578}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPattern", "testPattern\testPattern.vcxproj", "{0382AEE1-DF52-72B6-8F1B-845048C09CEB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testPropConfig", "testPropConfig\testPropConfig.vcxproj", "{CBD1803A-2183-3733-E316-B89082C4DBF5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "log4cppLIB", "log4cppLIB\log4cppLIB.vcxproj", "{AFA856A0-2388-4673-9277-CE4061709569}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug with Boost|Win32 = Debug ...
[truncated message content] |
|
From: <log...@li...> - 2015-03-26 20:05:55
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via ff355cd72f31b9dc4f87e114e9bc2754f1e8bc8d (commit)
via 68753c8d00f5f3ff20f7f376d3c28c773b402ae8 (commit)
from 14d95aa95b9b93d10765623030e9aa1f767696a1 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit ff355cd72f31b9dc4f87e114e9bc2754f1e8bc8d
Author: Alexander Perepelkin <san...@us...>
Date: Thu Mar 26 23:56:45 2015 +0400
options to disable syslog and smtp appenders are documented
diff --git a/doc/html/index.html b/doc/html/index.html
index b398497..7eca60b 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -157,6 +157,15 @@ documentation.</dd>
<dd>Let Doxygen use the 'dot' tool of GraphViz (<a href="http://www.graphviz.org/">http://www.graphviz.org</a>)
todraw its graphs.</dd>
</dl>
+<dl>
+<dt>--disable-remote-syslog </dt>
+<dd>Exclude RemoteSyslogAppender from build (included by default)</dd>
+</dl>
+<dl>
+<dt>--disable-smtp</dt>
+<dd>Exclude SmtpAppender from build (included by default)</dd>
+</dl>
+
<p></p>
<h3>Build notes for specific platforms</h3>
<dl>
http://sourceforge.net/p/log4cpp/codegit/ci/
commit ff355cd72f31b9dc4f87e114e9bc2754f1e8bc8d
Author: Alexander Perepelkin <san...@us...>
Date: Thu Mar 26 23:56:45 2015 +0400
options to disable syslog and smtp appenders are documented
diff --git a/doc/html/index.html b/doc/html/index.html
index b398497..7eca60b 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -157,6 +157,15 @@ documentation.</dd>
<dd>Let Doxygen use the 'dot' tool of GraphViz (<a href="http://www.graphviz.org/">http://www.graphviz.org</a>)
todraw its graphs.</dd>
</dl>
+<dl>
+<dt>--disable-remote-syslog </dt>
+<dd>Exclude RemoteSyslogAppender from build (included by default)</dd>
+</dl>
+<dl>
+<dt>--disable-smtp</dt>
+<dd>Exclude SmtpAppender from build (included by default)</dd>
+</dl>
+
<p></p>
<h3>Build notes for specific platforms</h3>
<dl>
-----------------------------------------------------------------------
Summary of changes:
Makefile.am | 2 ++
configure.in | 6 ++----
doc/html/index.html | 9 +++++++++
m4/BB_ENABLE_REMOTE_SYSLOG.m4 | 14 ++++++++++++++
m4/BB_ENABLE_SMTP.m4 | 11 +++++++++++
src/AppendersFactory.cpp | 6 +++++-
src/Makefile.am | 9 ++++++++-
src/PropertyConfiguratorImpl.cpp | 4 ++++
src/SimpleConfigurator.cpp | 6 +++++-
9 files changed, 60 insertions(+), 7 deletions(-)
create mode 100644 m4/BB_ENABLE_REMOTE_SYSLOG.m4
create mode 100644 m4/BB_ENABLE_SMTP.m4
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander <san...@gm...> - 2014-11-26 08:08:01
|
Hi Joe, You could use the ability of cdt eclipse to make projects from makefiles. After you have generated Makefile, choose File-New-Makefile Project and should end up with the ready project. Regards, Alex. On Nov 26, 2014 6:08 AM, "Joe Hellmers" <joe...@gq...> wrote: > How can I setup Eclipse to make use of log4cpp? > > Joe Hellmers > GQuad Research > HPC and Big Data Solutions Architect > Phone: 619-749-0528 > Mobile: 619-820-4236 > Email: joe...@gq... > Website: http://www.gquadresearch.com > > > > > > > > > > > ------------------------------------------------------------------------------ > Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server > from Actuate! Instantly Supercharge Your Business Reports and Dashboards > with Interactivity, Sharing, Native Excel Exports, App Integration & more > Get technology previously reserved for billion-dollar corporations, FREE > > http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk > _______________________________________________ > Log4cpp-commits mailing list > Log...@li... > https://lists.sourceforge.net/lists/listinfo/log4cpp-commits > > |
|
From: Joe H. <joe...@gq...> - 2014-11-26 02:08:33
|
How can I setup Eclipse to make use of log4cpp? Joe Hellmers GQuad Research HPC and Big Data Solutions Architect Phone: 619-749-0528 Mobile: 619-820-4236 Email: joe...@gq... <mailto:joe...@gq...> Website: http://www.gquadresearch.com <http://www.gquadresearch.com/> |
|
From: Alexander P. <no...@so...> - 2014-06-30 18:38:11
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via 14d95aa95b9b93d10765623030e9aa1f767696a1 (commit)
from f819554add5859a75a00edaa149642eb3898406d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit 14d95aa95b9b93d10765623030e9aa1f767696a1
Author: Alexander Perepelkin <sanchouss_@shell-22005.(none)>
Date: Mon Jun 30 18:37:01 2014 +0000
Add multithreading answer, formatting options
diff --git a/doc/html/index.html b/doc/html/index.html
index 525121d..b398497 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -309,6 +309,29 @@ For some small examples using log4cpp, see the 'tests' subdirectory.
Also see the documentation section for a pointer for API documentation
and more usage information.
<h4>3.2. Is log4cpp thread-safe?</h4>
+The same instance of the log4cpp::Category object (a logger) can be used from different threads simultaneously without explicit synchronization. Concurrent access to the appenders will be prevented by the logger object itself. It will lock internal mutex each time when it comes to writing into appenders. So, it is safe, for example, to write from the multiple threads to the same logger which appends to the same file.
+Although, log4cpp is configured in such a way that two different loggers append to the same appender (it may be a file), then there will be no way for the logging framework to arrange proper addition and things can get mixed up. So this way of configuration is not recommended.
+<h4>3.3. What are possible format characters for the custom log message?</h4>
+PatternLayout supports following set of format characters:<br>
+<li><b>%%</b> - a single percent sign</li>
+<li><b>%c</b> - the category</li>
+<li><b>%d</b> - the date\n
+ Date format: The date format character may be followed by a date format
+ specifier enclosed between braces. For example, %d{%H:%M:%S,%l} or %d{%d %m %Y %H:%M:%S,%l}.
+ If no date format specifier is given then the following format is used:
+"Wed Jan 02 02:03:55 1980". The date format specifier admits the same syntax
+as the ANSI C function strftime, with 1 addition. The addition is the specifier
+%l for milliseconds, padded with zeros to make 3 digits.</li>
+ <li><b>%m</b> - the message</li>
+ <li><b>%n</b> - the platform specific line separator</li>
+ <li><b>%p</b> - the priority</li>
+ <li><b>%r</b> - milliseconds since this layout was created.</li>
+ <li><b>%R</b> - seconds since Jan 1, 1970</li>
+ <li><b>%u</b> - clock ticks since process start</li>
+ <li><b>%x</b> - the NDC</li>
+ <li><b>%t</b> - thread name</li>
+
+ By default, ConversionPattern for PatternLayout is set to "%m%n".<br>
<h3>4. PROBLEMS AND ERROR MESSAGES</h3>
<h4>4.1. I get 'Naming collision for 'ERROR' detected. Please
read the FAQ for a workaround.'</h4>
-----------------------------------------------------------------------
Summary of changes:
doc/html/index.html | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <no...@so...> - 2014-06-30 18:25:55
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via f819554add5859a75a00edaa149642eb3898406d (commit)
from e69ad74b7fe1c71494a40f9396342df9ed40d00b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit f819554add5859a75a00edaa149642eb3898406d
Author: Alexander Perepelkin <san...@us...>
Date: Mon Jun 30 22:24:42 2014 +0400
copyright notes for src/
diff --git a/.gitignore b/.gitignore
index 0c7d76e..bc3ae53 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,5 @@ Compiled source #
#auto generated
Makefile.in
Makefile
+*.log
+
diff --git a/src/AppendersFactory.cpp b/src/AppendersFactory.cpp
index b30eaa9..6af7424 100644
--- a/src/AppendersFactory.cpp
+++ b/src/AppendersFactory.cpp
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
+
#include <log4cpp/AppendersFactory.hh>
#include <stdexcept>
diff --git a/src/BufferingAppender.cpp b/src/BufferingAppender.cpp
index de4fed3..7b36398 100644
--- a/src/BufferingAppender.cpp
+++ b/src/BufferingAppender.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include "PortabilityImpl.hh"
#include <log4cpp/BufferingAppender.hh>
#include <algorithm>
diff --git a/src/DummyThreads.cpp b/src/DummyThreads.cpp
index d291a14..ffe16bf 100644
--- a/src/DummyThreads.cpp
+++ b/src/DummyThreads.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/threading/Threading.hh>
#ifndef LOG4CPP_HAVE_THREADING
diff --git a/src/FactoryParams.cpp b/src/FactoryParams.cpp
index 96b971c..cc648f9 100644
--- a/src/FactoryParams.cpp
+++ b/src/FactoryParams.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/FactoryParams.hh>
#include <stdexcept>
diff --git a/src/LayoutsFactory.cpp b/src/LayoutsFactory.cpp
index f2a0159..232fa16 100644
--- a/src/LayoutsFactory.cpp
+++ b/src/LayoutsFactory.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/LayoutsFactory.hh>
#include <stdexcept>
diff --git a/src/LevelEvaluator.cpp b/src/LevelEvaluator.cpp
index 216b05f..bc030e3 100644
--- a/src/LevelEvaluator.cpp
+++ b/src/LevelEvaluator.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/LevelEvaluator.hh>
#include <log4cpp/FactoryParams.hh>
#include <memory>
diff --git a/src/Localtime.cpp b/src/Localtime.cpp
index fe6c4bd..64beecd 100644
--- a/src/Localtime.cpp
+++ b/src/Localtime.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/Portability.hh>
#include "Localtime.hh"
#include <time.h>
diff --git a/src/Localtime.hh b/src/Localtime.hh
index 1ff7cbb..9318456 100644
--- a/src/Localtime.hh
+++ b/src/Localtime.hh
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef _LOG4CPP_LOCALTIME_HH
#define _LOG4CPP_LOCALTIME_HH
diff --git a/src/MSThreads.cpp b/src/MSThreads.cpp
index fdfc774..17a4449 100644
--- a/src/MSThreads.cpp
+++ b/src/MSThreads.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/threading/Threading.hh>
#include <stdio.h>
diff --git a/src/Manipulator.cpp b/src/Manipulator.cpp
index 5f6264d..e3e730f 100644
--- a/src/Manipulator.cpp
+++ b/src/Manipulator.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/Manipulator.hh>
using namespace std;
namespace log4cpp {
diff --git a/src/NTEventLogAppender.cpp b/src/NTEventLogAppender.cpp
index 25aea2a..5419dac 100644
--- a/src/NTEventLogAppender.cpp
+++ b/src/NTEventLogAppender.cpp
@@ -1,5 +1,9 @@
/*
* NTEventLogAppender.cpp
+ *
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
*/
#ifdef WIN32 // only available on Win32
diff --git a/src/OmniThreads.cpp b/src/OmniThreads.cpp
index 86d2b2c..600c61c 100644
--- a/src/OmniThreads.cpp
+++ b/src/OmniThreads.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/threading/Threading.hh>
#if defined(LOG4CPP_HAVE_THREADING) && defined(LOG4CPP_USE_OMNITHREADS)
diff --git a/src/PThreads.cpp b/src/PThreads.cpp
index 18fd8e2..f404f03 100644
--- a/src/PThreads.cpp
+++ b/src/PThreads.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/threading/Threading.hh>
#if defined(LOG4CPP_HAVE_THREADING) && defined(LOG4CPP_USE_PTHREADS)
diff --git a/src/PassThroughLayout.cpp b/src/PassThroughLayout.cpp
index c3d3df4..e30062f 100644
--- a/src/PassThroughLayout.cpp
+++ b/src/PassThroughLayout.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/PassThroughLayout.hh>
#include <log4cpp/FactoryParams.hh>
#include <memory>
diff --git a/src/SmtpAppender.cpp b/src/SmtpAppender.cpp
index bdcce5d..b526cd4 100644
--- a/src/SmtpAppender.cpp
+++ b/src/SmtpAppender.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if defined(LOG4CPP_HAVE_BOOST)
#include <boost/version.hpp>
#if BOOST_VERSION >= 103500
diff --git a/src/TriggeringEventEvaluatorFactory.cpp b/src/TriggeringEventEvaluatorFactory.cpp
index 2706a1b..203e966 100644
--- a/src/TriggeringEventEvaluatorFactory.cpp
+++ b/src/TriggeringEventEvaluatorFactory.cpp
@@ -1,3 +1,9 @@
+/*
+ * Copyright 2002, Log4cpp Project. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#include <log4cpp/TriggeringEventEvaluatorFactory.hh>
#include <stdexcept>
-----------------------------------------------------------------------
Summary of changes:
.gitignore | 2 ++
src/AppendersFactory.cpp | 7 +++++++
src/BufferingAppender.cpp | 6 ++++++
src/DummyThreads.cpp | 6 ++++++
src/FactoryParams.cpp | 6 ++++++
src/LayoutsFactory.cpp | 6 ++++++
src/LevelEvaluator.cpp | 6 ++++++
src/Localtime.cpp | 6 ++++++
src/Localtime.hh | 6 ++++++
src/MSThreads.cpp | 6 ++++++
src/Manipulator.cpp | 6 ++++++
src/NTEventLogAppender.cpp | 4 ++++
src/OmniThreads.cpp | 6 ++++++
src/PThreads.cpp | 6 ++++++
src/PassThroughLayout.cpp | 6 ++++++
src/SmtpAppender.cpp | 6 ++++++
src/TriggeringEventEvaluatorFactory.cpp | 6 ++++++
17 files changed, 97 insertions(+), 0 deletions(-)
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <no...@so...> - 2014-06-29 19:36:33
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via e69ad74b7fe1c71494a40f9396342df9ed40d00b (commit)
from 8064124511a4752458f4bb0fe3fe42b4a4d372fd (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit e69ad74b7fe1c71494a40f9396342df9ed40d00b
Author: Alexander Perepelkin <san...@us...>
Date: Sun Jun 29 23:35:41 2014 +0400
Copyright notes, .gitignore
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0c7d76e
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,13 @@
+Compiled source #
+###################
+*.com
+*.class
+*.dll
+*.exe
+*.o
+*.lo
+*.la
+*.so
+#auto generated
+Makefile.in
+Makefile
diff --git a/include/log4cpp/AppendersFactory.hh b/include/log4cpp/AppendersFactory.hh
index 200532c..7c3a860 100644
--- a/include/log4cpp/AppendersFactory.hh
+++ b/include/log4cpp/AppendersFactory.hh
@@ -1,3 +1,11 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
+
#if !defined(h_738a42b1_1502_4483_948a_a69e7bbbee6a)
#define h_738a42b1_1502_4483_948a_a69e7bbbee6a
diff --git a/include/log4cpp/BufferingAppender.hh b/include/log4cpp/BufferingAppender.hh
index 555e90f..8035103 100644
--- a/include/log4cpp/BufferingAppender.hh
+++ b/include/log4cpp/BufferingAppender.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_ebd0ee89_622d_4af1_9a9d_d0e057debe86)
#define h_ebd0ee89_622d_4af1_9a9d_d0e057debe86
diff --git a/include/log4cpp/Export.hh b/include/log4cpp/Export.hh
index 48a9bd5..c7d1c1a 100644
--- a/include/log4cpp/Export.hh
+++ b/include/log4cpp/Export.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef _LOG4CPP_EXPORT_HH
#define _LOG4CPP_EXPORT_HH
diff --git a/include/log4cpp/FactoryParams.hh b/include/log4cpp/FactoryParams.hh
index b7a5c18..22212fe 100644
--- a/include/log4cpp/FactoryParams.hh
+++ b/include/log4cpp/FactoryParams.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_3e645482_ae6a_43e5_8f81_abbc4200212d)
#define h_3e645482_ae6a_43e5_8f81_abbc4200212d
diff --git a/include/log4cpp/LayoutsFactory.hh b/include/log4cpp/LayoutsFactory.hh
index cc1b3e7..f25680c 100644
--- a/include/log4cpp/LayoutsFactory.hh
+++ b/include/log4cpp/LayoutsFactory.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_409ac787_0acf_47ff_ac15_3e9024d40315)
#define h_409ac787_0acf_47ff_ac15_3e9024d40315
diff --git a/include/log4cpp/LevelEvaluator.hh b/include/log4cpp/LevelEvaluator.hh
index 3fd27a6..b5ab624 100644
--- a/include/log4cpp/LevelEvaluator.hh
+++ b/include/log4cpp/LevelEvaluator.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_3491ecd0_3891_4902_b3ba_15b15d98ae49)
#define h_3491ecd0_3891_4902_b3ba_15b15d98ae49
diff --git a/include/log4cpp/PassThroughLayout.hh b/include/log4cpp/PassThroughLayout.hh
index 3d3143b..12cb48a 100644
--- a/include/log4cpp/PassThroughLayout.hh
+++ b/include/log4cpp/PassThroughLayout.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_8e4861a3_f607_479c_ac2d_0b2d81b4c36c)
#define h_8e4861a3_f607_479c_ac2d_0b2d81b4c36c
diff --git a/include/log4cpp/SmtpAppender.hh b/include/log4cpp/SmtpAppender.hh
index 035087b..b233bf8 100644
--- a/include/log4cpp/SmtpAppender.hh
+++ b/include/log4cpp/SmtpAppender.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_2c5af17f_8daf_418f_acb8_5cfce724ec1a)
#define h_2c5af17f_8daf_418f_acb8_5cfce724ec1a
diff --git a/include/log4cpp/TriggeringEventEvaluator.hh b/include/log4cpp/TriggeringEventEvaluator.hh
index c2416e0..41a76b7 100644
--- a/include/log4cpp/TriggeringEventEvaluator.hh
+++ b/include/log4cpp/TriggeringEventEvaluator.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_fb88639f_85c9_481a_a3a0_f25ae8bac24c)
#define h_fb88639f_85c9_481a_a3a0_f25ae8bac24c
diff --git a/include/log4cpp/TriggeringEventEvaluatorFactory.hh b/include/log4cpp/TriggeringEventEvaluatorFactory.hh
index fae4b98..aff4371 100644
--- a/include/log4cpp/TriggeringEventEvaluatorFactory.hh
+++ b/include/log4cpp/TriggeringEventEvaluatorFactory.hh
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#if !defined(h_dd233b8b_5c59_4956_9393_6581c95f9779)
#define h_dd233b8b_5c59_4956_9393_6581c95f9779
diff --git a/include/log4cpp/config-MinGW32.h b/include/log4cpp/config-MinGW32.h
index 381ca64..42a5350 100644
--- a/include/log4cpp/config-MinGW32.h
+++ b/include/log4cpp/config-MinGW32.h
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef _INCLUDE_LOG4CPP_CONFIG_MINGW32_H
#define _INCLUDE_LOG4CPP_CONFIG_MINGW32_H 1
diff --git a/include/log4cpp/config-openvms.h b/include/log4cpp/config-openvms.h
index 792c7b0..f0c17cf 100644
--- a/include/log4cpp/config-openvms.h
+++ b/include/log4cpp/config-openvms.h
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef _INCLUDE_LOG4CPP_CONFIG_OPENVMS_H
#define _INCLUDE_LOG4CPP_CONFIG_OPENVMS_H 1
diff --git a/include/log4cpp/config-win32-stlport-boost.h b/include/log4cpp/config-win32-stlport-boost.h
index 47f7bc9..8905b93 100644
--- a/include/log4cpp/config-win32-stlport-boost.h
+++ b/include/log4cpp/config-win32-stlport-boost.h
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef _INCLUDE_LOG4CPP_CONFIG_WIN32_H
#define _INCLUDE_LOG4CPP_CONFIG_WIN32_H 1
diff --git a/include/log4cpp/config-win32.h b/include/log4cpp/config-win32.h
index 1038dda..5ebcbc9 100644
--- a/include/log4cpp/config-win32.h
+++ b/include/log4cpp/config-win32.h
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef _INCLUDE_LOG4CPP_CONFIG_WIN32_H
#define _INCLUDE_LOG4CPP_CONFIG_WIN32_H 1
diff --git a/include/log4cpp/convenience.h b/include/log4cpp/convenience.h
index 275de4b..04cac8d 100644
--- a/include/log4cpp/convenience.h
+++ b/include/log4cpp/convenience.h
@@ -1,3 +1,10 @@
+/*
+ * Copyright 2002, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
+ * Copyright 2002, Bastiaan Bakker. All rights reserved.
+ *
+ * See the COPYING file for the terms of usage and distribution.
+ */
+
#ifndef LOG4CPP_CONVENIENCE_H
#define LOG4CPP_CONVENIENCE_H
-----------------------------------------------------------------------
Summary of changes:
.gitignore | 13 +++++++++++++
include/log4cpp/AppendersFactory.hh | 8 ++++++++
include/log4cpp/BufferingAppender.hh | 7 +++++++
include/log4cpp/Export.hh | 7 +++++++
include/log4cpp/FactoryParams.hh | 7 +++++++
include/log4cpp/LayoutsFactory.hh | 7 +++++++
include/log4cpp/LevelEvaluator.hh | 7 +++++++
include/log4cpp/PassThroughLayout.hh | 7 +++++++
include/log4cpp/SmtpAppender.hh | 7 +++++++
include/log4cpp/TriggeringEventEvaluator.hh | 7 +++++++
include/log4cpp/TriggeringEventEvaluatorFactory.hh | 7 +++++++
include/log4cpp/config-MinGW32.h | 7 +++++++
include/log4cpp/config-openvms.h | 7 +++++++
include/log4cpp/config-win32-stlport-boost.h | 7 +++++++
include/log4cpp/config-win32.h | 7 +++++++
include/log4cpp/convenience.h | 7 +++++++
16 files changed, 119 insertions(+), 0 deletions(-)
create mode 100644 .gitignore
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <no...@so...> - 2013-12-05 13:55:27
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via 8064124511a4752458f4bb0fe3fe42b4a4d372fd (commit)
from 8137f57ba1e88d1e08955de68634561024b1566e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit 8064124511a4752458f4bb0fe3fe42b4a4d372fd
Author: Alexander Perepelkin <san...@us...>
Date: Thu Dec 5 17:54:51 2013 +0400
Bug #136 - CRLF for *.dsp
diff --git a/ChangeLog b/ChangeLog
index 11a5797..821acc7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,8 @@
-2012-10-15 18:48 sanchouss_
+2013-12-05 18:48 sanchouss_
+
+ * Fixed bug#137. Adjusted git attributes for *.dsp files (bug #136)
+
+2013-11-27 18:48 sanchouss_
* Migrated from cvs to git scm. Url is ssh://USERNAME@git.code.sf.net/p/log4cpp/codegit
diff --git a/msvc6/.gitattributes b/msvc6/.gitattributes
new file mode 100644
index 0000000..da7f692
--- /dev/null
+++ b/msvc6/.gitattributes
@@ -0,0 +1,2 @@
+#Decl are files that will always have CRLF line endings on checkout.
+*.dsp text eol=crlf
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 +++++-
msvc6/.gitattributes | 2 ++
2 files changed, 7 insertions(+), 1 deletions(-)
create mode 100644 msvc6/.gitattributes
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <no...@so...> - 2013-12-05 13:17:17
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
via 8137f57ba1e88d1e08955de68634561024b1566e (commit)
from 7a0444dfc5927464ec2e788122310da356f35754 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit 8137f57ba1e88d1e08955de68634561024b1566e
Author: Alexander Perepelkin <san...@us...>
Date: Thu Dec 5 17:14:59 2013 +0400
fix for bug#137, for strings longer than 256 chars, and test for this case
diff --git a/src/Properties.cpp b/src/Properties.cpp
index e27c2cb..795411c 100644
--- a/src/Properties.cpp
+++ b/src/Properties.cpp
@@ -25,10 +25,23 @@ namespace log4cpp {
std::string leftSide, rightSide;
char line[256];
std::string::size_type length;
-
- while (in.getline(line, 256)) {
- fullLine = line;
-
+ bool partiallyRead(false); // fix for bug#137, for strings longer than 256 chars
+
+ while (in) {
+ if (in.getline(line, 256) || !in.bad()) {
+ // either string is read fully or only partially (logical but not read/write error)
+ if (partiallyRead)
+ fullLine.append(line);
+ else
+ fullLine = line;
+ partiallyRead = (in.fail() && !in.bad());
+ if (partiallyRead && !in.eof()) {
+ in.clear(in.rdstate() & ~std::ios::failbit);
+ continue; // to get full line
+ }
+ } else {
+ break;
+ }
/* if the line contains a # then it is a comment
if we find it anywhere other than the beginning, then we assume
there is a command on that line, and it we don't find it at all
diff --git a/tests/testConfig.log4cpp.properties b/tests/testConfig.log4cpp.properties
index 65719f7..3e43e74 100644
--- a/tests/testConfig.log4cpp.properties
+++ b/tests/testConfig.log4cpp.properties
@@ -4,8 +4,10 @@ log4j.rootCategory=DEBUG, rootAppender
log4j.category.sub1=,A1
log4j.category.sub2=INFO
log4j.category.sub1.sub2=ERROR, A2
+log4j.category.sub1.sub2.sub3=INFO, A4, A5, A6, A7, A8
log4j.additivity.sub1.sub2=false
+log4j.additivity.sub1.sub2.sub3=false
log4j.appender.rootAppender=org.apache.log4j.ConsoleAppender
log4j.appender.rootAppender.layout=org.apache.log4j.BasicLayout
@@ -16,4 +18,40 @@ log4j.appender.A1.layout=org.apache.log4j.SimpleLayout
log4j.appender.A2=org.apache.log4j.ConsoleAppender
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
-log4j.appender.A2.layout.ConversionPattern=The message '%m' at time %d%n
+log4j.appender.A2.layout.ConversionPattern=The message '%m' at time %d%n
+
+# tests for looong strings within the config file
+log4cpp.appender.A4=RollingFileAppender
+log4cpp.appender.A4.fileName=A4.log
+log4cpp.appender.A4.maxFileSize=10240
+log4cpp.appender.A4.maxBackupIndex=1
+log4cpp.appender.A4.layout=PatternLayout
+log4cpp.appender.A4.layout.ConversionPattern=The message %m at time %d{%H:%M}%n is going to be very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong%n
+
+log4cpp.appender.A5=RollingFileAppender
+log4cpp.appender.A5.fileName=A4.log
+log4cpp.appender.A5.maxFileSize=10240
+log4cpp.appender.A5.maxBackupIndex=1
+log4cpp.appender.A5.layout=PatternLayout
+log4cpp.appender.A5.layout.ConversionPattern=The message %m at time %d{%H:%M}%n is going to be very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongg%n
+
+log4cpp.appender.A6=RollingFileAppender
+log4cpp.appender.A6.fileName=A4.log
+log4cpp.appender.A6.maxFileSize=10240
+log4cpp.appender.A6.maxBackupIndex=1
+log4cpp.appender.A6.layout=PatternLayout
+log4cpp.appender.A6.layout.ConversionPattern=The message %m at time %d{%H:%M}%n is going to be very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooonggg%n
+
+log4cpp.appender.A7=RollingFileAppender
+log4cpp.appender.A7.fileName=A4.log
+log4cpp.appender.A7.maxFileSize=10240
+log4cpp.appender.A7.maxBackupIndex=1
+log4cpp.appender.A7.layout=PatternLayout
+log4cpp.appender.A7.layout.ConversionPattern=The message %m at time %d{%H:%M}%n is going to be very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongggeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeer%n
+
+log4cpp.appender.A8=RollingFileAppender
+log4cpp.appender.A8.fileName=A4.log
+log4cpp.appender.A8.maxFileSize=10240
+log4cpp.appender.A8.maxBackupIndex=1
+log4cpp.appender.A8.layout=PatternLayout
+log4cpp.appender.A8.layout.ConversionPattern=The message %m at time %d{%H:%M}%n is going to be very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongggeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeer%n
diff --git a/tests/testPropertyConfig.cpp b/tests/testPropertyConfig.cpp
index 52c6a25..d633391 100644
--- a/tests/testPropertyConfig.cpp
+++ b/tests/testPropertyConfig.cpp
@@ -67,6 +67,9 @@ int main(int argc, char* argv[])
log4cpp::Category& sub2 =
log4cpp::Category::getInstance(std::string("sub1.sub2"));
+ log4cpp::Category& sub3 =
+ log4cpp::Category::getInstance(std::string("sub1.sub2.sub3"));
+
root.error("root error");
root.warn("root warn");
sub1.error("sub1 error");
@@ -96,6 +99,8 @@ int main(int argc, char* argv[])
sub2 << log4cpp::Priority::WARN << "warn2.." << "..warn3..value=" << 0
<< log4cpp::eol << "..warn4";
+ sub3 << log4cpp::Priority::INFO << "Very long config string follows";
+
log4cpp::Category::shutdown();
return 0;
-----------------------------------------------------------------------
Summary of changes:
src/Properties.cpp | 19 ++++++++++++++--
tests/testConfig.log4cpp.properties | 40 ++++++++++++++++++++++++++++++++++-
tests/testPropertyConfig.cpp | 5 ++++
3 files changed, 60 insertions(+), 4 deletions(-)
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <san...@sh...> - 2013-11-27 15:31:00
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
from 7a0444dfc5927464ec2e788122310da356f35754 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <san...@sh...> - 2013-11-27 15:28:23
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Log4cpp Git repository.".
The branch, master has been updated
from 7a0444dfc5927464ec2e788122310da356f35754 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
Log4cpp Git repository.
|
|
From: Alexander P. <no...@so...> - 2013-11-27 14:39:26
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "UNNAMED PROJECT".
The branch, master has been updated
via 7a0444dfc5927464ec2e788122310da356f35754 (commit)
from bdaf79f494ee0e2b413eaab75b3b80b1cf40c362 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceforge.net/p/log4cpp/codegit/ci/
commit 7a0444dfc5927464ec2e788122310da356f35754
Author: sanchouss_ <san...@us...>
Date: Wed Nov 27 18:37:34 2013 +0400
First git commit
diff --git a/ChangeLog b/ChangeLog
index 1321dde..11a5797 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2012-10-15 18:48 sanchouss_
+ * Migrated from cvs to git scm. Url is ssh://USERNAME@git.code.sf.net/p/log4cpp/codegit
+
+ 2012-10-15 18:48 sanchouss_
+
* msvc10/ Converted solution for building from MSVC 2010 with small adjustments. Output is targeted
into building directory instead of system32 dir (due to windows UAC restrictions)
* src/RollingFileAppender.cpp - resolved ambiguity of log10
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
hooks/post-receive
--
UNNAMED PROJECT
|