Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit c38272b

Browse files
authored
Make fml/... compatible with .clang-tidy. (#48150)
1 parent a0aecf8 commit c38272b

File tree

4 files changed

+14
-7
lines changed

4 files changed

+14
-7
lines changed

fml/memory/ref_ptr.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ class RefPtr final {
108108
// Destructor.
109109
~RefPtr() {
110110
if (ptr_) {
111+
// NOLINTNEXTLINE(clang-analyzer-cplusplus.NewDelete)
111112
ptr_->Release();
112113
}
113114
}

fml/memory/weak_ptr.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ class WeakPtr {
117117

118118
explicit WeakPtr(T* ptr,
119119
fml::RefPtr<fml::internal::WeakPtrFlag>&& flag,
120-
DebugThreadChecker checker)
120+
const DebugThreadChecker& checker)
121121
: ptr_(ptr), flag_(std::move(flag)), checker_(checker) {}
122122
T* ptr_;
123123
fml::RefPtr<fml::internal::WeakPtrFlag> flag_;
@@ -203,7 +203,7 @@ class TaskRunnerAffineWeakPtr {
203203
explicit TaskRunnerAffineWeakPtr(
204204
T* ptr,
205205
fml::RefPtr<fml::internal::WeakPtrFlag>&& flag,
206-
DebugTaskRunnerChecker checker)
206+
const DebugTaskRunnerChecker& checker)
207207
: ptr_(ptr), flag_(std::move(flag)), checker_(checker) {}
208208

209209
T* ptr_;

fml/platform/darwin/weak_nsobject.h

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
#import <objc/runtime.h>
1010

1111
#include <stdlib.h>
12+
13+
#include <utility>
1214
#include "flutter/fml/compiler_specific.h"
1315
#include "flutter/fml/logging.h"
1416
#include "flutter/fml/memory/ref_counted.h"
@@ -73,7 +75,7 @@ class WeakNSObjectFactory;
7375
// receives nullify() from the object's sentinel.
7476
class WeakContainer : public fml::RefCountedThreadSafe<WeakContainer> {
7577
public:
76-
explicit WeakContainer(id object, debug::DebugThreadChecker checker);
78+
explicit WeakContainer(id object, const debug::DebugThreadChecker& checker);
7779

7880
id object() {
7981
CheckThreadSafety();
@@ -154,6 +156,8 @@ class WeakNSProtocol {
154156
return get() != that;
155157
}
156158

159+
// This appears to be intentional to allow truthiness?
160+
// NOLINTNEXTLINE(google-explicit-constructor)
157161
operator NST() const {
158162
CheckThreadSafety();
159163
return get();
@@ -162,8 +166,9 @@ class WeakNSProtocol {
162166
protected:
163167
friend class WeakNSObjectFactory<NST>;
164168

165-
explicit WeakNSProtocol(RefPtr<fml::WeakContainer> container, debug::DebugThreadChecker checker)
166-
: container_(container), checker_(checker) {}
169+
explicit WeakNSProtocol(RefPtr<fml::WeakContainer> container,
170+
const debug::DebugThreadChecker& checker)
171+
: container_(std::move(container)), checker_(checker) {}
167172

168173
// Refecounted reference to the container tracking the ObjectiveC object this
169174
// class encapsulates.
@@ -217,7 +222,8 @@ class WeakNSObject<id> : public WeakNSProtocol<id> {
217222
private:
218223
friend class WeakNSObjectFactory<id>;
219224

220-
explicit WeakNSObject(RefPtr<fml::WeakContainer> container, debug::DebugThreadChecker checker)
225+
explicit WeakNSObject(const RefPtr<fml::WeakContainer>& container,
226+
const debug::DebugThreadChecker& checker)
221227
: WeakNSProtocol<id>(container, checker) {}
222228
};
223229

fml/platform/darwin/weak_nsobject.mm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
namespace fml {
1515

16-
WeakContainer::WeakContainer(id object, debug::DebugThreadChecker checker)
16+
WeakContainer::WeakContainer(id object, const debug::DebugThreadChecker& checker)
1717
: object_(object), checker_(checker) {}
1818

1919
WeakContainer::~WeakContainer() {}

0 commit comments

Comments
 (0)