Fix locale-dependent float printing in GGUF metadata (#17331)

* Set C locale for consistent float formatting across all binaries.

* Add C locale setting to all tools binaries

Add std::setlocale(LC_NUMERIC, "C") to all 16 binaries in the tools/
directory to ensure consistent floating-point formatting.

* Apply suggestion from @JohannesGaessler

---------

Co-authored-by: Johannes Gäßler <johannesg@5d6.de>
This commit is contained in:
SamareshSingh
2026-03-04 02:30:40 -06:00
committed by GitHub
parent 54910bd4f3
commit cb8f4fa3f8
39 changed files with 140 additions and 19 deletions
+9 -4
View File
@@ -10,12 +10,15 @@
# include <unistd.h>
# include <sys/stat.h>
#endif
#include <string>
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <thread>
#include <clocale>
#include <codecvt>
#include <filesystem>
#include <regex>
#include <stdio.h>
#include <string>
#include <thread>
#include <vector>
#if defined(__linux__)
#include <sys/types.h>
@@ -285,6 +288,8 @@ static std::vector<ggml_backend_dev_t> get_devices(const rpc_server_params & par
}
int main(int argc, char * argv[]) {
std::setlocale(LC_NUMERIC, "C");
ggml_backend_load_all();
rpc_server_params params;