- snprintf (buffer, sizeof(buffer), "%" PRIu64, x);
+ snprintf (buffer, sizeof(buffer), "%ld", x);
+ return buffer;
+}
+
+template<>
+string
+dcp::locale_convert (unsigned long int x, int, bool)
+{
+ char buffer[64];
+ snprintf (buffer, sizeof(buffer), "%lu", x);
+ return buffer;
+}
+
+template<>
+string
+dcp::locale_convert (long long int x, int, bool)
+{
+ char buffer[64];
+#ifdef LIBDCP_WINDOWS
+ __mingw_snprintf (buffer, sizeof(buffer), "%lld", x);
+#else
+ snprintf (buffer, sizeof(buffer), "%lld", x);
+#endif
+ return buffer;
+}
+
+template<>
+string
+dcp::locale_convert (unsigned long long int x, int, bool)
+{
+ char buffer[64];
+#ifdef LIBDCP_WINDOWS
+ __mingw_snprintf (buffer, sizeof(buffer), "%llu", x);
+#else
+ snprintf (buffer, sizeof(buffer), "%llu", x);
+#endif