Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a6fb0e372e | ||
|
|
7948fc509e | ||
|
|
2d6155fc85 |
@@ -9,7 +9,7 @@
|
||||
<Identity Name="TelegramMessengerLLP.TelegramDesktop"
|
||||
ProcessorArchitecture="ARCHITECTURE"
|
||||
Publisher="CN=536BC709-8EE1-4478-AF22-F0F0F26FF64A"
|
||||
Version="2.9.10.0" />
|
||||
Version="2.9.11.0" />
|
||||
<Properties>
|
||||
<DisplayName>Telegram Desktop</DisplayName>
|
||||
<PublisherDisplayName>Telegram Messenger LLP</PublisherDisplayName>
|
||||
|
||||
@@ -44,8 +44,8 @@ IDI_ICON1 ICON "..\\art\\icon256.ico"
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 2,9,10,0
|
||||
PRODUCTVERSION 2,9,10,0
|
||||
FILEVERSION 2,9,11,0
|
||||
PRODUCTVERSION 2,9,11,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@@ -62,10 +62,10 @@ BEGIN
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Telegram FZ-LLC"
|
||||
VALUE "FileDescription", "Telegram Desktop"
|
||||
VALUE "FileVersion", "2.9.10.0"
|
||||
VALUE "FileVersion", "2.9.11.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2014-2021"
|
||||
VALUE "ProductName", "Telegram Desktop"
|
||||
VALUE "ProductVersion", "2.9.10.0"
|
||||
VALUE "ProductVersion", "2.9.11.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -35,8 +35,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 2,9,10,0
|
||||
PRODUCTVERSION 2,9,10,0
|
||||
FILEVERSION 2,9,11,0
|
||||
PRODUCTVERSION 2,9,11,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@@ -53,10 +53,10 @@ BEGIN
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Telegram FZ-LLC"
|
||||
VALUE "FileDescription", "Telegram Desktop Updater"
|
||||
VALUE "FileVersion", "2.9.10.0"
|
||||
VALUE "FileVersion", "2.9.11.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2014-2021"
|
||||
VALUE "ProductName", "Telegram Desktop"
|
||||
VALUE "ProductVersion", "2.9.10.0"
|
||||
VALUE "ProductVersion", "2.9.11.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -270,12 +270,12 @@ std::unique_ptr<Launcher> Launcher::Create(int argc, char *argv[]) {
|
||||
return std::make_unique<Platform::Launcher>(argc, argv);
|
||||
}
|
||||
|
||||
Launcher::Launcher(
|
||||
int argc,
|
||||
char *argv[])
|
||||
Launcher::Launcher(int argc, char *argv[])
|
||||
: _argc(argc)
|
||||
, _argv(argv)
|
||||
, _baseIntegration(_argc, _argv) {
|
||||
crl::toggle_fp_exceptions(true);
|
||||
|
||||
base::Integration::Set(&_baseIntegration);
|
||||
}
|
||||
|
||||
|
||||
@@ -13,9 +13,7 @@ namespace Core {
|
||||
|
||||
class Launcher {
|
||||
public:
|
||||
Launcher(
|
||||
int argc,
|
||||
char *argv[]);
|
||||
Launcher(int argc, char *argv[]);
|
||||
|
||||
static std::unique_ptr<Launcher> Create(int argc, char *argv[]);
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ constexpr auto AppId = "{53F49750-6209-4FBF-9CA8-7A333C87D1ED}"_cs;
|
||||
constexpr auto AppNameOld = "Telegram Win (Unofficial)"_cs;
|
||||
constexpr auto AppName = "Telegram Desktop"_cs;
|
||||
constexpr auto AppFile = "Telegram"_cs;
|
||||
constexpr auto AppVersion = 2009010;
|
||||
constexpr auto AppVersionStr = "2.9.10";
|
||||
constexpr auto AppVersion = 2009011;
|
||||
constexpr auto AppVersionStr = "2.9.11";
|
||||
constexpr auto AppBetaVersion = true;
|
||||
constexpr auto AppAlphaVersion = TDESKTOP_ALPHA_VERSION;
|
||||
|
||||
@@ -412,7 +412,9 @@ void File::start(not_null<FileDelegate*> delegate, crl::time position) {
|
||||
|
||||
_reader->startStreaming();
|
||||
_context.emplace(delegate, _reader.get());
|
||||
|
||||
_thread = std::thread([=, context = &*_context] {
|
||||
crl::toggle_fp_exceptions(true);
|
||||
context->start(position);
|
||||
while (!context->finished()) {
|
||||
context->readNextPacket();
|
||||
|
||||
@@ -880,86 +880,7 @@ TimePoint VideoTrackObject::trackTime() const {
|
||||
const auto adjust = (result.worldTime - _syncTimePoint.worldTime);
|
||||
const auto adjustSpeed = adjust * _options.speed;
|
||||
const auto roundAdjustSpeed = SafeRound(adjustSpeed);
|
||||
auto timeRoundAdjustSpeed = crl::time(roundAdjustSpeed);
|
||||
const auto fpuErrorHappened = [](crl::time value) {
|
||||
return uint64(value) == 0x8000'0000'0000'0000ULL
|
||||
|| uint64(value) == 0x8000'0000ULL
|
||||
|| uint64(value) == 0xFFFF'FFFF'FFFF'FFFFULL
|
||||
|| uint64(value) == 0xFFFF'FFFFULL;
|
||||
};
|
||||
if (roundAdjustSpeed > -1000'000'000.
|
||||
&& roundAdjustSpeed < 1000'000'000.
|
||||
&& fpuErrorHappened(timeRoundAdjustSpeed)) {
|
||||
TO_LOG(("BAD1,round:%1").arg(roundAdjustSpeed));
|
||||
timeRoundAdjustSpeed = crl::time(roundAdjustSpeed);
|
||||
if (!fpuErrorHappened(timeRoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD2,round:%1,result:%2").arg(roundAdjustSpeed).arg(timeRoundAdjustSpeed));
|
||||
debugAssertKnownTime(-1, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD2,round:%1").arg(roundAdjustSpeed));
|
||||
}
|
||||
const auto floatRoundAdjustSpeed = float(roundAdjustSpeed);
|
||||
timeRoundAdjustSpeed = crl::time(floatRoundAdjustSpeed);
|
||||
if (!fpuErrorHappened(timeRoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD3,round:%1,result:%2").arg(floatRoundAdjustSpeed).arg(timeRoundAdjustSpeed));
|
||||
debugAssertKnownTime(-2, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD3,round:%1").arg(floatRoundAdjustSpeed));
|
||||
}
|
||||
const auto intRoundAdjustSpeet = int(roundAdjustSpeed);
|
||||
timeRoundAdjustSpeed = crl::time(intRoundAdjustSpeet);
|
||||
if (!fpuErrorHappened(timeRoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD4,int:%1,result:%2").arg(intRoundAdjustSpeet).arg(timeRoundAdjustSpeed));
|
||||
debugAssertKnownTime(-3, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD4,int:%1").arg(intRoundAdjustSpeet));
|
||||
}
|
||||
const auto intFloatRoundAdjustSpeed = int(floatRoundAdjustSpeed);
|
||||
timeRoundAdjustSpeed = crl::time(intFloatRoundAdjustSpeed);
|
||||
if (!fpuErrorHappened(timeRoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD5,int:%1,result:%2").arg(intFloatRoundAdjustSpeed).arg(timeRoundAdjustSpeed));
|
||||
debugAssertKnownTime(-4, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD5,int:%1").arg(intFloatRoundAdjustSpeed));
|
||||
}
|
||||
const auto uint64RoundAdjustSpeed = uint64((roundAdjustSpeed >= 0.)
|
||||
? roundAdjustSpeed
|
||||
: -roundAdjustSpeed);
|
||||
if (!fpuErrorHappened(uint64RoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD6,round:%1,uint:%2").arg(roundAdjustSpeed).arg(uint64RoundAdjustSpeed));
|
||||
debugAssertKnownTime(-5, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD6,uint:%1").arg(uint64RoundAdjustSpeed));
|
||||
}
|
||||
const auto uint64FloatRoundAdjustSpeed = uint64((floatRoundAdjustSpeed >= 0.)
|
||||
? floatRoundAdjustSpeed
|
||||
: -floatRoundAdjustSpeed);
|
||||
if (!fpuErrorHappened(uint64FloatRoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD7,round:%1,uint:%2").arg(floatRoundAdjustSpeed).arg(uint64FloatRoundAdjustSpeed));
|
||||
debugAssertKnownTime(-6, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD7,uint:%1").arg(uint64FloatRoundAdjustSpeed));
|
||||
}
|
||||
const auto uint32RoundAdjustSpeed = uint32((roundAdjustSpeed >= 0.)
|
||||
? roundAdjustSpeed
|
||||
: -roundAdjustSpeed);
|
||||
if (!fpuErrorHappened(uint32RoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD8,round:%1,uint:%2").arg(roundAdjustSpeed).arg(uint32RoundAdjustSpeed));
|
||||
debugAssertKnownTime(-7, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD8,uint:%1").arg(uint32RoundAdjustSpeed));
|
||||
}
|
||||
const auto uint32FloatRoundAdjustSpeed = uint32((floatRoundAdjustSpeed >= 0.)
|
||||
? floatRoundAdjustSpeed
|
||||
: -floatRoundAdjustSpeed);
|
||||
if (!fpuErrorHappened(uint32FloatRoundAdjustSpeed)) {
|
||||
TO_LOG(("GOOD9,round:%1,uint:%2").arg(floatRoundAdjustSpeed).arg(uint32FloatRoundAdjustSpeed));
|
||||
debugAssertKnownTime(-8, kTimeUnknown);
|
||||
} else {
|
||||
TO_LOG(("BAD9,uint:%1").arg(uint32FloatRoundAdjustSpeed));
|
||||
}
|
||||
debugAssertKnownTime(-9, kTimeUnknown);
|
||||
}
|
||||
const auto timeRoundAdjustSpeed = crl::time(roundAdjustSpeed);
|
||||
const auto trackTime = _syncTimePoint.trackTime + timeRoundAdjustSpeed;
|
||||
TO_LOG(("track_time_adjusted,world:%1,adjust:%2,speed:%3,delta:%4,rounded:%5,casted:%6,final:%7"
|
||||
).arg(result.worldTime
|
||||
@@ -968,7 +889,7 @@ TimePoint VideoTrackObject::trackTime() const {
|
||||
).arg(adjustSpeed
|
||||
).arg(roundAdjustSpeed
|
||||
).arg(timeRoundAdjustSpeed
|
||||
).arg(result.trackTime));
|
||||
).arg(trackTime));
|
||||
result.trackTime = trackTime;
|
||||
debugAssertKnownTime(11, result.trackTime);
|
||||
return result;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
AppVersion 2009010
|
||||
AppVersion 2009011
|
||||
AppVersionStrMajor 2.9
|
||||
AppVersionStrSmall 2.9.10
|
||||
AppVersionStr 2.9.10
|
||||
AppVersionStrSmall 2.9.11
|
||||
AppVersionStr 2.9.11
|
||||
BetaChannel 1
|
||||
AlphaVersion 0
|
||||
AppVersionOriginal 2.9.10.beta
|
||||
AppVersionOriginal 2.9.11.beta
|
||||
|
||||
Submodule Telegram/lib_crl updated: 3ccf2ed509...9d2242617c
@@ -1,3 +1,7 @@
|
||||
2.9.11 beta (24.08.21)
|
||||
|
||||
- Resolve (again) a video playback crash in 32 bit Windows version.
|
||||
|
||||
2.9.10 beta (24.08.21)
|
||||
|
||||
- Resolve (hopefully) a video playback crash in 32 bit Windows version.
|
||||
|
||||
2
cmake
2
cmake
Submodule cmake updated: 7260711ec5...76ece84e77
Reference in New Issue
Block a user