Merge commit '0430ea5e493ed6ddcc97246b5a35c3ea630fecf4' into macos-9.4-1-release

This commit is contained in:
Mike Renoir 2023-02-24 11:43:41 +04:00
commit 6b723db80c
7 changed files with 89 additions and 27 deletions

View File

@ -1 +1 @@
44eed22b384449bcec8962f2fddbfebd
3a64b94cc76109006731756f85403c85

View File

@ -172,7 +172,7 @@ public final class MultilineTextWithEntitiesComponent: Component {
self.textNode.longTapAttributeAction = component.longTapAction
if case let .curve(duration, _) = transition.animation, let previousText = previousText, previousText != attributedString.string {
if let snapshotView = self.snapshotView(afterScreenUpdates: false) {
if let snapshotView = self.snapshotContentTree() {
snapshotView.center = self.center
self.superview?.addSubview(snapshotView)

View File

@ -205,7 +205,7 @@
return;
[strongController dismissAnimated:true];
if (strongSelf != nil) {
if (strongSelf != nil && strongSelf.requestAvatarEditor) {
strongSelf.requestAvatarEditor(^(UIImage *image, void (^commit)(void)) {
__strong TGMediaAvatarMenuMixin *strongSelf = weakSelf;
if (strongSelf == nil)

View File

@ -61,8 +61,10 @@ public final class ManagedFile {
if let queue = self.queue {
assert(queue.isCurrent())
}
close(self.fd)
self.isClosed = true
if !self.isClosed {
close(self.fd)
self.isClosed = true
}
}
public func write(_ data: UnsafeRawPointer, count: Int) -> Int {

View File

@ -727,27 +727,57 @@ public final class PostboxDecoder {
case .Double:
offset += 8
case .String:
var length: Int32 = 0
memcpy(&length, bytes + offset, 4)
offset += 4 + Int(length)
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + offset, 4)
offset += 4 + Int(valueLength)
case .Object:
var length: Int32 = 0
memcpy(&length, bytes + (offset + 4), 4)
offset += 8 + Int(length)
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + (offset + 4), 4)
offset += 8 + Int(valueLength)
case .Int32Array:
var length: Int32 = 0
memcpy(&length, bytes + offset, 4)
offset += 4 + Int(length) * 4
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + offset, 4)
offset += 4 + Int(valueLength) * 4
case .Int64Array:
var length: Int32 = 0
memcpy(&length, bytes + offset, 4)
offset += 4 + Int(length) * 8
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + offset, 4)
offset += 4 + Int(valueLength) * 8
case .ObjectArray:
if offset + 4 > length {
offset = 0
return false
}
var subLength: Int32 = 0
memcpy(&subLength, bytes + offset, 4)
offset += 4
var i: Int32 = 0
while i < subLength {
if offset + 4 + 4 > length {
offset = 0
return false
}
var objectLength: Int32 = 0
memcpy(&objectLength, bytes + (offset + 4), 4)
offset += 8 + Int(objectLength)
@ -759,32 +789,62 @@ public final class PostboxDecoder {
}
return true
case .ObjectDictionary:
var length: Int32 = 0
memcpy(&length, bytes + offset, 4)
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + offset, 4)
offset += 4
var i: Int32 = 0
while i < length {
while i < valueLength {
if offset + 4 + 4 > length {
offset = 0
return false
}
var keyLength: Int32 = 0
memcpy(&keyLength, bytes + (offset + 4), 4)
offset += 8 + Int(keyLength)
if offset + 4 + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + (offset + 4), 4)
offset += 8 + Int(valueLength)
i += 1
}
case .Bytes:
var length: Int32 = 0
memcpy(&length, bytes + offset, 4)
offset += 4 + Int(length)
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + offset, 4)
offset += 4 + Int(valueLength)
case .Nil:
break
case .StringArray, .BytesArray:
var length: Int32 = 0
memcpy(&length, bytes + offset, 4)
if offset + 4 > length {
offset = 0
return false
}
var valueLength: Int32 = 0
memcpy(&valueLength, bytes + offset, 4)
offset += 4
var i: Int32 = 0
while i < length {
if offset + 4 > length {
offset = 0
return false
}
var stringLength: Int32 = 0
memcpy(&stringLength, bytes + offset, 4)
offset += 4 + Int(stringLength)

View File

@ -628,7 +628,7 @@ public final class RollingText: Component {
self.containerView.layer.removeAnimation(forKey: "opacity")
}
if let snapshotView = self.containerView.snapshotView(afterScreenUpdates: true) {
if let snapshotView = self.containerView.snapshotContentTree() {
let horizontalOffset = boundingRect.width - snapshotView.frame.width
let verticalOffset: CGFloat = 12.0

View File

@ -1,5 +1,5 @@
{
"app": "9.4.3",
"app": "9.5",
"bazel": "5.3.1",
"xcode": "14.2"
}