summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-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