diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2014-04-28 01:24:35 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2014-04-28 01:24:35 +0000 |
commit | d1536b30886c8cd3cf8938622498bef11c50d8be (patch) | |
tree | 71e014b3d2535e8e2caf18acefa6d57b6f405447 | |
parent | 7a36912a9def6a24cc974d2887057df0ccc9b2b9 (diff) | |
download | llvm-d1536b30886c8cd3cf8938622498bef11c50d8be.tar.gz llvm-d1536b30886c8cd3cf8938622498bef11c50d8be.tar.bz2 llvm-d1536b30886c8cd3cf8938622498bef11c50d8be.tar.xz |
Update the Windows TimeValue formatting to match the new formatting on
Unix-like OSes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207388 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Support/Windows/TimeValue.inc | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/lib/Support/Windows/TimeValue.inc b/lib/Support/Windows/TimeValue.inc index 6c59024d9c..166d0d59c1 100644 --- a/lib/Support/Windows/TimeValue.inc +++ b/lib/Support/Windows/TimeValue.inc @@ -47,13 +47,9 @@ std::string TimeValue::str() const { LT = &Storage; #endif - char Buffer[25]; - // FIXME: the windows version of strftime doesn't support %e - strftime(Buffer, 25, "%b %d %H:%M %Y", LT); - assert((Buffer[3] == ' ' && isdigit(Buffer[5]) && Buffer[6] == ' ') && - "Unexpected format in strftime()!"); - // Emulate %e on %d to mute '0'. - if (Buffer[4] == '0') - Buffer[4] = ' '; - return std::string(Buffer); + char Buffer1[sizeof("YYYY-MM-DD HH:MM:SS")]; + strftime(Buffer1, sizeof(Buffer1), "%Y-%m-%d %H:%M:%S", LT); + char Buffer2[sizeof("YYYY-MM-DD HH:MM:SS.MMMUUUNNN")]; + snprintf(Buffer2, sizeof(Buffer2), "%s.%.9u", Buffer1, this->nanoseconds()); + return std::string(Buffer2); } |