From b2cdde047f8e9c9ce8201d701785fe2d28fa743c Mon Sep 17 00:00:00 2001 From: Paul Young Date: Sun, 30 Jun 2013 19:29:48 -0400 Subject: Renamed mailcore::logEnabled and mailcore::logInternal to MCLogEnabled and MCLogInternal as discussed in MailCore/mailcore2#118. * Followed the diff in MailCore/mailcore2#124. * Renamed the implementation file from .cc to .c * Added `extern "C" {}` around header declaration. --- build-mac/mailcore2.xcodeproj/project.pbxproj | 12 ++-- src/core/basetypes/MCLog.c | 79 +++++++++++++++++++++++++++ src/core/basetypes/MCLog.cc | 79 --------------------------- src/core/basetypes/MCLog.h | 22 +++++--- 4 files changed, 99 insertions(+), 93 deletions(-) create mode 100644 src/core/basetypes/MCLog.c delete mode 100644 src/core/basetypes/MCLog.cc diff --git a/build-mac/mailcore2.xcodeproj/project.pbxproj b/build-mac/mailcore2.xcodeproj/project.pbxproj index c1b46c92..cedef738 100644 --- a/build-mac/mailcore2.xcodeproj/project.pbxproj +++ b/build-mac/mailcore2.xcodeproj/project.pbxproj @@ -125,7 +125,7 @@ C64EA708169E847800778456 /* MCData.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6A9169E847800778456 /* MCData.cc */; }; C64EA70A169E847800778456 /* MCHash.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AB169E847800778456 /* MCHash.cc */; }; C64EA70C169E847800778456 /* MCHashMap.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AD169E847800778456 /* MCHashMap.cc */; }; - C64EA70E169E847800778456 /* MCLog.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AF169E847800778456 /* MCLog.cc */; }; + C64EA70E169E847800778456 /* MCLog.c in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AF169E847800778456 /* MCLog.c */; }; C64EA710169E847800778456 /* MCObject.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6B1169E847800778456 /* MCObject.cc */; }; C64EA712169E847800778456 /* MCRange.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6B3169E847800778456 /* MCRange.cc */; }; C64EA714169E847800778456 /* MCSet.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6B5169E847800778456 /* MCSet.cc */; }; @@ -449,7 +449,7 @@ C6BA2BA21705F4E6003F0E9E /* MCData.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6A9169E847800778456 /* MCData.cc */; }; C6BA2BA31705F4E6003F0E9E /* MCHash.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AB169E847800778456 /* MCHash.cc */; }; C6BA2BA41705F4E6003F0E9E /* MCHashMap.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AD169E847800778456 /* MCHashMap.cc */; }; - C6BA2BA51705F4E6003F0E9E /* MCLog.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AF169E847800778456 /* MCLog.cc */; }; + C6BA2BA51705F4E6003F0E9E /* MCLog.c in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6AF169E847800778456 /* MCLog.c */; }; C6BA2BA61705F4E6003F0E9E /* MCObject.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6B1169E847800778456 /* MCObject.cc */; }; C6BA2BA71705F4E6003F0E9E /* MCRange.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6B3169E847800778456 /* MCRange.cc */; }; C6BA2BA81705F4E6003F0E9E /* MCSet.cc in Sources */ = {isa = PBXBuildFile; fileRef = C64EA6B5169E847800778456 /* MCSet.cc */; }; @@ -1206,7 +1206,7 @@ C64EA6AC169E847800778456 /* MCHash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCHash.h; sourceTree = ""; }; C64EA6AD169E847800778456 /* MCHashMap.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MCHashMap.cc; sourceTree = ""; }; C64EA6AE169E847800778456 /* MCHashMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCHashMap.h; sourceTree = ""; }; - C64EA6AF169E847800778456 /* MCLog.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MCLog.cc; sourceTree = ""; }; + C64EA6AF169E847800778456 /* MCLog.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MCLog.c; sourceTree = ""; }; C64EA6B0169E847800778456 /* MCLog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCLog.h; sourceTree = ""; }; C64EA6B1169E847800778456 /* MCObject.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MCObject.cc; sourceTree = ""; }; C64EA6B2169E847800778456 /* MCObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MCObject.h; sourceTree = ""; }; @@ -1802,7 +1802,7 @@ C6D6F966171FCF9F006F5B28 /* MCJSONParser.h */, C6D6F950171E5CB8006F5B28 /* MCMD5.cc */, C6D6F951171E5CB8006F5B28 /* MCMD5.h */, - C64EA6AF169E847800778456 /* MCLog.cc */, + C64EA6AF169E847800778456 /* MCLog.c */, C64EA6B0169E847800778456 /* MCLog.h */, C6D6F952171E5CB8006F5B28 /* MCNull.cc */, C6D6F953171E5CB8006F5B28 /* MCNull.h */, @@ -2345,7 +2345,7 @@ C64EA708169E847800778456 /* MCData.cc in Sources */, C64EA70A169E847800778456 /* MCHash.cc in Sources */, C64EA70C169E847800778456 /* MCHashMap.cc in Sources */, - C64EA70E169E847800778456 /* MCLog.cc in Sources */, + C64EA70E169E847800778456 /* MCLog.c in Sources */, C64EA710169E847800778456 /* MCObject.cc in Sources */, C64EA712169E847800778456 /* MCRange.cc in Sources */, C64EA714169E847800778456 /* MCSet.cc in Sources */, @@ -2527,7 +2527,7 @@ C6BA2BA21705F4E6003F0E9E /* MCData.cc in Sources */, C6BA2BA31705F4E6003F0E9E /* MCHash.cc in Sources */, C6BA2BA41705F4E6003F0E9E /* MCHashMap.cc in Sources */, - C6BA2BA51705F4E6003F0E9E /* MCLog.cc in Sources */, + C6BA2BA51705F4E6003F0E9E /* MCLog.c in Sources */, C6BA2BA61705F4E6003F0E9E /* MCObject.cc in Sources */, C6BA2BA71705F4E6003F0E9E /* MCRange.cc in Sources */, C6BA2BA81705F4E6003F0E9E /* MCSet.cc in Sources */, diff --git a/src/core/basetypes/MCLog.c b/src/core/basetypes/MCLog.c new file mode 100644 index 00000000..f361c258 --- /dev/null +++ b/src/core/basetypes/MCLog.c @@ -0,0 +1,79 @@ +#include "MCLog.h" + +#include +#include +#include +#include +#include +#include +#include + +static pid_t sPid = -1; +bool MCLogEnabled = false; + +__attribute__((constructor)) +static void initialize() { + sPid = getpid(); +} + +static void logInternalv(FILE * file, + const char * user, const char * filename, unsigned int line, + int dumpStack, const char * format, va_list argp); + +void MCLogInternal(const char * user, + const char * filename, + unsigned int line, + int dumpStack, + const char * format, ...) +{ + va_list argp; + + va_start(argp, format); + logInternalv(stderr, user, filename, line, dumpStack, format, argp); + va_end(argp); +} + +static void logInternalv(FILE * file, + const char * user, const char * filename, unsigned int line, + int dumpStack, const char * format, va_list argp) +{ + if (!mailcore::logEnabled) + return; + + while (1) { + const char * p = filename; + + p = strchr(filename, '/'); + if (p == NULL) { + break; + } + filename = p + 1; + } + + struct timeval tv; + struct tm tm_value; + pthread_t thread_id = pthread_self(); + + gettimeofday(&tv, NULL); + localtime_r(&tv.tv_sec, &tm_value); + fprintf(file, "%04u-%02u-%02u %02u:%02u:%02u.%03u ", tm_value.tm_year + 1900, tm_value.tm_mon + 1, tm_value.tm_mday, tm_value.tm_hour, tm_value.tm_min, tm_value.tm_sec, (int) (tv.tv_usec / 1000)); + +#ifdef __MACH__ + if (pthread_main_np()) { +#else + if (0) { +#endif + fprintf(file, "[%i:main] %s:%i: ", sPid, filename, line); + } + else { + unsigned long threadValue; +#ifdef _MACH_PORT_T + threadValue = pthread_mach_thread_np(thread_id); +#else + threadValue = (unsigned long) thread_id; +#endif + fprintf(file, "[%i:%lx] %s:%i: ", sPid, threadValue, filename, line); + } + vfprintf(file, format, argp); + fprintf(file, "\n"); +} diff --git a/src/core/basetypes/MCLog.cc b/src/core/basetypes/MCLog.cc deleted file mode 100644 index 7db01b41..00000000 --- a/src/core/basetypes/MCLog.cc +++ /dev/null @@ -1,79 +0,0 @@ -#include "MCLog.h" - -#include -#include -#include -#include -#include -#include -#include - -static pid_t sPid = -1; -bool mailcore::logEnabled = false; - -__attribute__((constructor)) -static void initialize() { - sPid = getpid(); -} - -static void logInternalv(FILE * file, - const char * user, const char * filename, unsigned int line, - int dumpStack, const char * format, va_list argp); - -void mailcore::logInternal(const char * user, - const char * filename, - unsigned int line, - int dumpStack, - const char * format, ...) -{ - va_list argp; - - va_start(argp, format); - logInternalv(stderr, user, filename, line, dumpStack, format, argp); - va_end(argp); -} - -static void logInternalv(FILE * file, - const char * user, const char * filename, unsigned int line, - int dumpStack, const char * format, va_list argp) -{ - if (!mailcore::logEnabled) - return; - - while (1) { - const char * p = filename; - - p = strchr(filename, '/'); - if (p == NULL) { - break; - } - filename = p + 1; - } - - struct timeval tv; - struct tm tm_value; - pthread_t thread_id = pthread_self(); - - gettimeofday(&tv, NULL); - localtime_r(&tv.tv_sec, &tm_value); - fprintf(file, "%04u-%02u-%02u %02u:%02u:%02u.%03u ", tm_value.tm_year + 1900, tm_value.tm_mon + 1, tm_value.tm_mday, tm_value.tm_hour, tm_value.tm_min, tm_value.tm_sec, (int) (tv.tv_usec / 1000)); - -#ifdef __MACH__ - if (pthread_main_np()) { -#else - if (0) { -#endif - fprintf(file, "[%i:main] %s:%i: ", sPid, filename, line); - } - else { - unsigned long threadValue; -#ifdef _MACH_PORT_T - threadValue = pthread_mach_thread_np(thread_id); -#else - threadValue = (unsigned long) thread_id; -#endif - fprintf(file, "[%i:%lx] %s:%i: ", sPid, threadValue, filename, line); - } - vfprintf(file, format, argp); - fprintf(file, "\n"); -} diff --git a/src/core/basetypes/MCLog.h b/src/core/basetypes/MCLog.h index b84a2182..f4e940e2 100644 --- a/src/core/basetypes/MCLog.h +++ b/src/core/basetypes/MCLog.h @@ -6,22 +6,28 @@ #ifdef __cplusplus -#define MCLog(...) mailcore::logInternal(NULL, __FILE__, __LINE__, 0, __VA_ARGS__) +#define MCLog(...) MCLogInternal(NULL, __FILE__, __LINE__, 0, __VA_ARGS__) namespace mailcore { - extern bool logEnabled; + extern bool MCLogEnabled; #ifndef __printflike #define __printflike(a,b) #endif - void logInternal(const char * user, - const char * filename, - unsigned int line, - int dumpStack, - const char * format, ...) __printflike(5, 6); - +#ifdef __cplusplus +extern "C" { +#endif + void MCLogInternal(const char * user, + const char * filename, + unsigned int line, + int dumpStack, + const char * format, ...) __printflike(5, 6); +#ifdef __cplusplus +} +#endif + } #endif -- cgit v1.2.3 From cd1277b20cc085d9de2c8b0d3588ea37377501ca Mon Sep 17 00:00:00 2001 From: Paul Young Date: Tue, 2 Jul 2013 22:35:17 -0400 Subject: Updated mailcore::logEnabled to MCLogEnabled in logInternalv. --- src/core/basetypes/MCLog.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/basetypes/MCLog.c b/src/core/basetypes/MCLog.c index f361c258..60278d27 100644 --- a/src/core/basetypes/MCLog.c +++ b/src/core/basetypes/MCLog.c @@ -37,7 +37,7 @@ static void logInternalv(FILE * file, const char * user, const char * filename, unsigned int line, int dumpStack, const char * format, va_list argp) { - if (!mailcore::logEnabled) + if (!MCLogEnabled) return; while (1) { -- cgit v1.2.3 From f261cc72bd96ca65bc7b8f02c8cb1fce11561479 Mon Sep 17 00:00:00 2001 From: Paul Young Date: Tue, 2 Jul 2013 22:41:33 -0400 Subject: Updated remaining references to mailcore::logEnabled. --- example/ios/iOS UI Test/iOS UI Test/main.mm | 2 +- tests/test-all.mm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/example/ios/iOS UI Test/iOS UI Test/main.mm b/example/ios/iOS UI Test/iOS UI Test/main.mm index 7793820a..0089973b 100644 --- a/example/ios/iOS UI Test/iOS UI Test/main.mm +++ b/example/ios/iOS UI Test/iOS UI Test/main.mm @@ -12,6 +12,6 @@ #import int main(int argc, char *argv[]) { - mailcore::logEnabled = true; + MCLogEnabled = true; return UIApplicationMain(argc, argv, nil, @"AppDelegate"); } diff --git a/tests/test-all.mm b/tests/test-all.mm index 2201d6d5..4155bbb2 100644 --- a/tests/test-all.mm +++ b/tests/test-all.mm @@ -351,7 +351,7 @@ void testAll() displayName = MCSTR("My Email"); mailcore::AutoreleasePool * pool = new mailcore::AutoreleasePool(); - mailcore::logEnabled = true; + MCLogEnabled = true; mailstream_debug = 1; //mailcore::Data * data = testMessageBuilder(); -- cgit v1.2.3 From e50fcbb5dc3603c0138a3844aaf514373bb52938 Mon Sep 17 00:00:00 2001 From: Paul Young Date: Tue, 2 Jul 2013 22:43:37 -0400 Subject: Including the stdbool header. * As per http://stackoverflow.com/a/1921557/339925 --- src/core/basetypes/MCLog.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/core/basetypes/MCLog.c b/src/core/basetypes/MCLog.c index 60278d27..f3ce2318 100644 --- a/src/core/basetypes/MCLog.c +++ b/src/core/basetypes/MCLog.c @@ -7,6 +7,7 @@ #include #include #include +#include static pid_t sPid = -1; bool MCLogEnabled = false; -- cgit v1.2.3 From 7f6923f520745ff9f1dd4df142de96ecbe64e045 Mon Sep 17 00:00:00 2001 From: Paul Young Date: Wed, 3 Jul 2013 00:04:57 -0400 Subject: Updated type of MCLogEnabled to int instead of bool. --- example/ios/iOS UI Test/iOS UI Test/main.mm | 2 +- src/core/basetypes/MCLog.c | 3 +-- src/core/basetypes/MCLog.h | 2 +- tests/test-all.mm | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/example/ios/iOS UI Test/iOS UI Test/main.mm b/example/ios/iOS UI Test/iOS UI Test/main.mm index 0089973b..e6253102 100644 --- a/example/ios/iOS UI Test/iOS UI Test/main.mm +++ b/example/ios/iOS UI Test/iOS UI Test/main.mm @@ -12,6 +12,6 @@ #import int main(int argc, char *argv[]) { - MCLogEnabled = true; + MCLogEnabled = 1; return UIApplicationMain(argc, argv, nil, @"AppDelegate"); } diff --git a/src/core/basetypes/MCLog.c b/src/core/basetypes/MCLog.c index f3ce2318..8744f2dd 100644 --- a/src/core/basetypes/MCLog.c +++ b/src/core/basetypes/MCLog.c @@ -7,10 +7,9 @@ #include #include #include -#include static pid_t sPid = -1; -bool MCLogEnabled = false; +int MCLogEnabled = 0; __attribute__((constructor)) static void initialize() { diff --git a/src/core/basetypes/MCLog.h b/src/core/basetypes/MCLog.h index f4e940e2..de75314f 100644 --- a/src/core/basetypes/MCLog.h +++ b/src/core/basetypes/MCLog.h @@ -10,7 +10,7 @@ namespace mailcore { - extern bool MCLogEnabled; + extern int MCLogEnabled; #ifndef __printflike #define __printflike(a,b) diff --git a/tests/test-all.mm b/tests/test-all.mm index 4155bbb2..fdb0888c 100644 --- a/tests/test-all.mm +++ b/tests/test-all.mm @@ -351,7 +351,7 @@ void testAll() displayName = MCSTR("My Email"); mailcore::AutoreleasePool * pool = new mailcore::AutoreleasePool(); - MCLogEnabled = true; + MCLogEnabled = 1; mailstream_debug = 1; //mailcore::Data * data = testMessageBuilder(); -- cgit v1.2.3