X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/24a59c62efafbdb8387b2d3c5616b04b9fd21306..5ac0f77c5575dc06bfc0db383da984c96ce284b9:/apt-pkg/contrib/strutl.cc diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc index e7cc1a759..cf8feb970 100644 --- a/apt-pkg/contrib/strutl.cc +++ b/apt-pkg/contrib/strutl.cc @@ -759,7 +759,7 @@ string TimeRFC1123(time_t Date, bool const NumericTimezone) if (gmtime_r(&Date, &Conv) == NULL) return ""; - auto const posix = std::locale("C.UTF-8"); + auto const posix = std::locale::classic(); std::ostringstream datestr; datestr.imbue(posix); APT::StringView const fmt("%a, %d %b %Y %H:%M:%S"); @@ -946,7 +946,7 @@ bool RFC1123StrToTime(const char* const str,time_t &time) signed int year = 0; // yes, Y23K problem – we gonna worry then… std::string weekday, month, datespec, timespec, zone; std::istringstream ss(str); - auto const &posix = std::locale("C.UTF-8"); + auto const &posix = std::locale::classic(); ss.imbue(posix); ss >> weekday; // we only superficially check weekday, mostly to avoid accepting localized @@ -1171,10 +1171,11 @@ bool Base256ToNum(const char *Str,unsigned long long &Res,unsigned int Len) tar files */ bool Base256ToNum(const char *Str,unsigned long &Res,unsigned int Len) { - unsigned long long Num; + unsigned long long Num = 0; bool rc; rc = Base256ToNum(Str, Num, Len); + // rudimentary check for overflow (Res = ulong, Num = ulonglong) Res = Num; if (Res != Num) return false;