summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-08-13 00:38:33 +0100
committerCarl Hetherington <cth@carlh.net>2016-08-13 21:22:37 +0100
commite7cd5e4ee467386ff579a76c5f6a6fee03a78fc4 (patch)
tree2d5e0d36b89bbfdc4503102ba89eb6ce902eaeb4
parente1255543b0c280b71db51b47f50e5a3573e45970 (diff)
Windows build fixes.
-rw-r--r--src/lib/compose.hpp37
-rw-r--r--src/lib/environment_info.cc4
2 files changed, 32 insertions, 9 deletions
diff --git a/src/lib/compose.hpp b/src/lib/compose.hpp
index 8ccd12b50..477000e5d 100644
--- a/src/lib/compose.hpp
+++ b/src/lib/compose.hpp
@@ -121,6 +121,30 @@ namespace StringPrivate
}
template <>
+ inline void write(std::string& s, const int16_t& obj)
+ {
+ char buffer[64];
+#ifdef DCPOMATIC_WINDOWS
+ __mingw_snprintf(buffer, 64, "%" PRId16, obj);
+#else
+ snprintf(buffer, 64, "%" PRId16, obj);
+#endif
+ s += buffer;
+ }
+
+ template <>
+ inline void write(std::string& s, const uint16_t& obj)
+ {
+ char buffer[64];
+#ifdef DCPOMATIC_WINDOWS
+ __mingw_snprintf(buffer, 64, "%" PRIu16, obj);
+#else
+ snprintf(buffer, 64, "%" PRIu16, obj);
+#endif
+ s += buffer;
+ }
+
+ template <>
inline void write(std::string& s, const int32_t& obj)
{
char buffer[64];
@@ -203,17 +227,16 @@ namespace StringPrivate
}
template <>
- inline void write(std::string& s, wchar_t const & obj)
+ inline void write(std::string& s, const std::string& obj)
{
- std::wstring ws (&obj);
- std::string w (ws.begin(), ws.end());
- s += w;
+ s += obj;
}
- template <>
- inline void write(std::string& s, const std::string& obj)
+ inline void write(std::string& s, wchar_t const * const & obj)
{
- s += obj;
+ std::wstring ws (obj);
+ std::string w (ws.begin(), ws.end());
+ s += w;
}
template <>
diff --git a/src/lib/environment_info.cc b/src/lib/environment_info.cc
index b5093e4d6..4cdadafb6 100644
--- a/src/lib/environment_info.cc
+++ b/src/lib/environment_info.cc
@@ -113,8 +113,8 @@ environment_info ()
GetVersionEx (&os_info);
info.push_back (
String::compose (
- "Windows version %1.%2.%3 SP %4",
- os_info.dwMajorVersion, os_info.dwMinorVersion, os_info.dwBuildNumber, os_info.szCSDVersion
+ "Windows version %1.%2.%3",
+ (int) os_info.dwMajorVersion, (int) os_info.dwMinorVersion, (int) os_info.dwBuildNumber
)
);
#endif