File tree Expand file tree Collapse file tree 31 files changed +34
-89
lines changed Expand file tree Collapse file tree 31 files changed +34
-89
lines changed Original file line number Diff line number Diff line change @@ -1532,9 +1532,7 @@ deque_dealloc(PyObject *self)
1532
1532
Py_ssize_t i ;
1533
1533
1534
1534
PyObject_GC_UnTrack (deque );
1535
- if (deque -> weakreflist != NULL ) {
1536
- PyObject_ClearWeakRefs (self );
1537
- }
1535
+ PyObject_ClearWeakRefs (self );
1538
1536
if (deque -> leftblock != NULL ) {
1539
1537
(void )deque_clear (self );
1540
1538
assert (deque -> leftblock != NULL );
Original file line number Diff line number Diff line change @@ -690,8 +690,7 @@ element_dealloc(PyObject *op)
690
690
/* bpo-31095: UnTrack is needed before calling any callbacks */
691
691
PyObject_GC_UnTrack (self );
692
692
693
- if (self -> weakreflist != NULL )
694
- PyObject_ClearWeakRefs (op );
693
+ PyObject_ClearWeakRefs (op );
695
694
696
695
/* element_gc_clear clears all references and deallocates extra
697
696
*/
Original file line number Diff line number Diff line change @@ -351,9 +351,7 @@ partial_dealloc(PyObject *self)
351
351
PyTypeObject * tp = Py_TYPE (self );
352
352
/* bpo-31095: UnTrack is needed before calling any callbacks */
353
353
PyObject_GC_UnTrack (self );
354
- if (partialobject_CAST (self )-> weakreflist != NULL ) {
355
- PyObject_ClearWeakRefs (self );
356
- }
354
+ PyObject_ClearWeakRefs (self );
357
355
(void )partial_clear (self );
358
356
tp -> tp_free (self );
359
357
Py_DECREF (tp );
@@ -1621,9 +1619,7 @@ lru_cache_dealloc(PyObject *op)
1621
1619
PyTypeObject * tp = Py_TYPE (obj );
1622
1620
/* bpo-31095: UnTrack is needed before calling any callbacks */
1623
1621
PyObject_GC_UnTrack (obj );
1624
- if (obj -> weakreflist != NULL ) {
1625
- PyObject_ClearWeakRefs (op );
1626
- }
1622
+ PyObject_ClearWeakRefs (op );
1627
1623
1628
1624
(void )lru_cache_tp_clear (op );
1629
1625
tp -> tp_free (obj );
Original file line number Diff line number Diff line change @@ -421,8 +421,7 @@ buffered_dealloc(PyObject *op)
421
421
return ;
422
422
_PyObject_GC_UNTRACK (self );
423
423
self -> ok = 0 ;
424
- if (self -> weakreflist != NULL )
425
- PyObject_ClearWeakRefs (op );
424
+ PyObject_ClearWeakRefs (op );
426
425
if (self -> buffer ) {
427
426
PyMem_Free (self -> buffer );
428
427
self -> buffer = NULL ;
@@ -2312,8 +2311,7 @@ bufferedrwpair_dealloc(PyObject *op)
2312
2311
rwpair * self = rwpair_CAST (op );
2313
2312
PyTypeObject * tp = Py_TYPE (self );
2314
2313
_PyObject_GC_UNTRACK (self );
2315
- if (self -> weakreflist != NULL )
2316
- PyObject_ClearWeakRefs (op );
2314
+ PyObject_ClearWeakRefs (op );
2317
2315
(void )bufferedrwpair_clear (op );
2318
2316
tp -> tp_free (self );
2319
2317
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -979,8 +979,7 @@ bytesio_dealloc(PyObject *op)
979
979
}
980
980
Py_CLEAR (self -> buf );
981
981
Py_CLEAR (self -> dict );
982
- if (self -> weakreflist != NULL )
983
- PyObject_ClearWeakRefs (op );
982
+ PyObject_ClearWeakRefs (op );
984
983
tp -> tp_free (self );
985
984
Py_DECREF (tp );
986
985
}
Original file line number Diff line number Diff line change @@ -570,9 +570,7 @@ fileio_dealloc(PyObject *op)
570
570
PyMem_Free (self -> stat_atopen );
571
571
self -> stat_atopen = NULL ;
572
572
}
573
- if (self -> weakreflist != NULL ) {
574
- PyObject_ClearWeakRefs (op );
575
- }
573
+ PyObject_ClearWeakRefs (op );
576
574
(void )fileio_clear (op );
577
575
578
576
PyTypeObject * tp = Py_TYPE (op );
Original file line number Diff line number Diff line change @@ -383,8 +383,7 @@ iobase_dealloc(PyObject *op)
383
383
}
384
384
PyTypeObject * tp = Py_TYPE (self );
385
385
_PyObject_GC_UNTRACK (self );
386
- if (self -> weakreflist != NULL )
387
- PyObject_ClearWeakRefs (op );
386
+ PyObject_ClearWeakRefs (op );
388
387
Py_CLEAR (self -> dict );
389
388
tp -> tp_free (self );
390
389
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -638,9 +638,7 @@ stringio_dealloc(PyObject *op)
638
638
}
639
639
PyUnicodeWriter_Discard (self -> writer );
640
640
(void )stringio_clear (op );
641
- if (self -> weakreflist != NULL ) {
642
- PyObject_ClearWeakRefs (op );
643
- }
641
+ PyObject_ClearWeakRefs (op );
644
642
tp -> tp_free (self );
645
643
Py_DECREF (tp );
646
644
}
Original file line number Diff line number Diff line change @@ -1469,8 +1469,7 @@ textiowrapper_dealloc(PyObject *op)
1469
1469
return ;
1470
1470
self -> ok = 0 ;
1471
1471
_PyObject_GC_UNTRACK (self );
1472
- if (self -> weakreflist != NULL )
1473
- PyObject_ClearWeakRefs (op );
1472
+ PyObject_ClearWeakRefs (op );
1474
1473
(void )textiowrapper_clear (op );
1475
1474
tp -> tp_free (self );
1476
1475
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -518,8 +518,7 @@ winconsoleio_dealloc(PyObject *op)
518
518
if (_PyIOBase_finalize (op ) < 0 )
519
519
return ;
520
520
_PyObject_GC_UNTRACK (self );
521
- if (self -> weakreflist != NULL )
522
- PyObject_ClearWeakRefs (op );
521
+ PyObject_ClearWeakRefs (op );
523
522
Py_CLEAR (self -> dict );
524
523
tp -> tp_free (self );
525
524
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -221,9 +221,7 @@ simplequeue_dealloc(PyObject *op)
221
221
222
222
PyObject_GC_UnTrack (self );
223
223
(void )simplequeue_clear (op );
224
- if (self -> weakreflist != NULL ) {
225
- PyObject_ClearWeakRefs (op );
226
- }
224
+ PyObject_ClearWeakRefs (op );
227
225
tp -> tp_free (self );
228
226
Py_DECREF (tp );
229
227
}
Original file line number Diff line number Diff line change @@ -56,9 +56,7 @@ blob_dealloc(PyObject *op)
56
56
57
57
close_blob (self );
58
58
59
- if (self -> in_weakreflist != NULL ) {
60
- PyObject_ClearWeakRefs (op );
61
- }
59
+ PyObject_ClearWeakRefs (op );
62
60
(void )tp -> tp_clear (op );
63
61
tp -> tp_free (self );
64
62
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -185,9 +185,7 @@ cursor_dealloc(PyObject *op)
185
185
pysqlite_Cursor * self = _pysqlite_Cursor_CAST (op );
186
186
PyTypeObject * tp = Py_TYPE (self );
187
187
PyObject_GC_UnTrack (self );
188
- if (self -> in_weakreflist != NULL ) {
189
- PyObject_ClearWeakRefs (op );
190
- }
188
+ PyObject_ClearWeakRefs (op );
191
189
(void )tp -> tp_clear (op );
192
190
tp -> tp_free (self );
193
191
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -736,10 +736,7 @@ pattern_dealloc(PyObject *self)
736
736
{
737
737
PyTypeObject * tp = Py_TYPE (self );
738
738
PyObject_GC_UnTrack (self );
739
- PatternObject * obj = _PatternObject_CAST (self );
740
- if (obj -> weakreflist != NULL ) {
741
- PyObject_ClearWeakRefs (self );
742
- }
739
+ PyObject_ClearWeakRefs (self );
743
740
(void )pattern_clear (self );
744
741
tp -> tp_free (self );
745
742
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -1794,9 +1794,7 @@ s_dealloc(PyObject *op)
1794
1794
PyStructObject * s = PyStructObject_CAST (op );
1795
1795
PyTypeObject * tp = Py_TYPE (s );
1796
1796
PyObject_GC_UnTrack (s );
1797
- if (s -> weakreflist != NULL ) {
1798
- PyObject_ClearWeakRefs (op );
1799
- }
1797
+ PyObject_ClearWeakRefs (op );
1800
1798
if (s -> s_codes != NULL ) {
1801
1799
PyMem_Free (s -> s_codes );
1802
1800
}
Original file line number Diff line number Diff line change @@ -1034,8 +1034,7 @@ heapctypewithweakref_dealloc(PyObject *op)
1034
1034
{
1035
1035
HeapCTypeWithWeakrefObject * self = (HeapCTypeWithWeakrefObject * )op ;
1036
1036
PyTypeObject * tp = Py_TYPE (self );
1037
- if (self -> weakreflist != NULL )
1038
- PyObject_ClearWeakRefs ((PyObject * ) self );
1037
+ PyObject_ClearWeakRefs ((PyObject * ) self );
1039
1038
Py_XDECREF (self -> weakreflist );
1040
1039
PyObject_Free (self );
1041
1040
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -297,9 +297,7 @@ heapctypewithrelativeweakref_dealloc(PyObject* self)
297
297
{
298
298
PyTypeObject * tp = Py_TYPE (self );
299
299
HeapCTypeWithWeakrefStruct * data = PyObject_GetTypeData (self , tp );
300
- if (data -> weakreflist != NULL ) {
301
- PyObject_ClearWeakRefs (self );
302
- }
300
+ PyObject_ClearWeakRefs (self );
303
301
Py_XDECREF (data -> weakreflist );
304
302
PyObject_Free (self );
305
303
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -1365,9 +1365,7 @@ static void
1365
1365
localdummy_dealloc (PyObject * op )
1366
1366
{
1367
1367
localdummyobject * self = localdummyobject_CAST (op );
1368
- if (self -> weakreflist != NULL ) {
1369
- PyObject_ClearWeakRefs (op );
1370
- }
1368
+ PyObject_ClearWeakRefs (op );
1371
1369
PyTypeObject * tp = Py_TYPE (self );
1372
1370
tp -> tp_free (self );
1373
1371
Py_DECREF (tp );
@@ -1537,9 +1535,7 @@ local_dealloc(PyObject *op)
1537
1535
localobject * self = localobject_CAST (op );
1538
1536
/* Weakrefs must be invalidated right now, otherwise they can be used
1539
1537
from code called below, which is very dangerous since Py_REFCNT(self) == 0 */
1540
- if (self -> weakreflist != NULL ) {
1541
- PyObject_ClearWeakRefs (op );
1542
- }
1538
+ PyObject_ClearWeakRefs (op );
1543
1539
PyObject_GC_UnTrack (self );
1544
1540
(void )local_clear (op );
1545
1541
PyTypeObject * tp = Py_TYPE (self );
Original file line number Diff line number Diff line change @@ -375,9 +375,7 @@ zoneinfo_dealloc(PyObject *obj_self)
375
375
PyTypeObject * tp = Py_TYPE (self );
376
376
PyObject_GC_UnTrack (self );
377
377
378
- if (self -> weakreflist != NULL ) {
379
- PyObject_ClearWeakRefs (obj_self );
380
- }
378
+ PyObject_ClearWeakRefs (obj_self );
381
379
382
380
if (self -> trans_list_utc != NULL ) {
383
381
PyMem_Free (self -> trans_list_utc );
Original file line number Diff line number Diff line change @@ -728,9 +728,7 @@ array_dealloc(PyObject *op)
728
728
PyObject_GC_UnTrack (op );
729
729
730
730
arrayobject * self = arrayobject_CAST (op );
731
- if (self -> weakreflist != NULL ) {
732
- PyObject_ClearWeakRefs (op );
733
- }
731
+ PyObject_ClearWeakRefs (op );
734
732
if (self -> ob_item != NULL ) {
735
733
PyMem_Free (self -> ob_item );
736
734
}
Original file line number Diff line number Diff line change @@ -163,8 +163,7 @@ mmap_object_dealloc(PyObject *op)
163
163
Py_END_ALLOW_THREADS
164
164
#endif /* UNIX */
165
165
166
- if (m_obj -> weakreflist != NULL )
167
- PyObject_ClearWeakRefs (op );
166
+ PyObject_ClearWeakRefs (op );
168
167
169
168
tp -> tp_free (m_obj );
170
169
Py_DECREF (tp );
Original file line number Diff line number Diff line change @@ -245,8 +245,7 @@ method_dealloc(PyObject *self)
245
245
{
246
246
PyMethodObject * im = _PyMethodObject_CAST (self );
247
247
_PyObject_GC_UNTRACK (im );
248
- if (im -> im_weakreflist != NULL )
249
- PyObject_ClearWeakRefs ((PyObject * )im );
248
+ PyObject_ClearWeakRefs ((PyObject * )im );
250
249
Py_DECREF (im -> im_func );
251
250
Py_XDECREF (im -> im_self );
252
251
assert (Py_IS_TYPE (self , & PyMethod_Type ));
Original file line number Diff line number Diff line change @@ -2436,9 +2436,7 @@ code_dealloc(PyObject *self)
2436
2436
Py_XDECREF (co -> _co_cached -> _co_varnames );
2437
2437
PyMem_Free (co -> _co_cached );
2438
2438
}
2439
- if (co -> co_weakreflist != NULL ) {
2440
- PyObject_ClearWeakRefs (self );
2441
- }
2439
+ PyObject_ClearWeakRefs (self );
2442
2440
free_monitoring_data (co -> _co_monitoring );
2443
2441
#ifdef Py_GIL_DISABLED
2444
2442
// The first element always points to the mutable bytecode at the end of
Original file line number Diff line number Diff line change @@ -1148,9 +1148,7 @@ func_dealloc(PyObject *self)
1148
1148
return ;
1149
1149
}
1150
1150
_PyObject_GC_UNTRACK (op );
1151
- if (op -> func_weakreflist != NULL ) {
1152
- PyObject_ClearWeakRefs ((PyObject * ) op );
1153
- }
1151
+ PyObject_ClearWeakRefs ((PyObject * ) op );
1154
1152
(void )func_clear ((PyObject * )op );
1155
1153
// These aren't cleared by func_clear().
1156
1154
_Py_DECREF_CODE ((PyCodeObject * )op -> func_code );
Original file line number Diff line number Diff line change @@ -33,9 +33,7 @@ ga_dealloc(PyObject *self)
33
33
gaobject * alias = (gaobject * )self ;
34
34
35
35
_PyObject_GC_UNTRACK (self );
36
- if (alias -> weakreflist != NULL ) {
37
- PyObject_ClearWeakRefs ((PyObject * )alias );
38
- }
36
+ PyObject_ClearWeakRefs ((PyObject * )alias );
39
37
Py_XDECREF (alias -> origin );
40
38
Py_XDECREF (alias -> args );
41
39
Py_XDECREF (alias -> parameters );
Original file line number Diff line number Diff line change @@ -161,8 +161,7 @@ gen_dealloc(PyObject *self)
161
161
162
162
_PyObject_GC_UNTRACK (gen );
163
163
164
- if (gen -> gi_weakreflist != NULL )
165
- PyObject_ClearWeakRefs (self );
164
+ PyObject_ClearWeakRefs (self );
166
165
167
166
_PyObject_GC_TRACK (self );
168
167
Original file line number Diff line number Diff line change @@ -167,9 +167,7 @@ meth_dealloc(PyObject *self)
167
167
{
168
168
PyCFunctionObject * m = _PyCFunctionObject_CAST (self );
169
169
PyObject_GC_UnTrack (m );
170
- if (m -> m_weakreflist != NULL ) {
171
- PyObject_ClearWeakRefs ((PyObject * ) m );
172
- }
170
+ PyObject_ClearWeakRefs ((PyObject * ) m );
173
171
// We need to access ml_flags here rather than later.
174
172
// `m->m_ml` might have the same lifetime
175
173
// as `m_self` when it's dynamically allocated.
Original file line number Diff line number Diff line change @@ -1391,8 +1391,7 @@ odict_dealloc(PyObject *op)
1391
1391
PyObject_GC_UnTrack (self );
1392
1392
1393
1393
Py_XDECREF (self -> od_inst_dict );
1394
- if (self -> od_weakreflist != NULL )
1395
- PyObject_ClearWeakRefs ((PyObject * )self );
1394
+ PyObject_ClearWeakRefs ((PyObject * )self );
1396
1395
1397
1396
_odict_clear_nodes (self );
1398
1397
PyDict_Type .tp_dealloc ((PyObject * )self );
Original file line number Diff line number Diff line change @@ -111,8 +111,7 @@ picklebuf_dealloc(PyObject *op)
111
111
{
112
112
PyPickleBufferObject * self = (PyPickleBufferObject * )op ;
113
113
PyObject_GC_UnTrack (self );
114
- if (self -> weakreflist != NULL )
115
- PyObject_ClearWeakRefs ((PyObject * ) self );
114
+ PyObject_ClearWeakRefs ((PyObject * ) self );
116
115
PyBuffer_Release (& self -> view );
117
116
Py_TYPE (self )-> tp_free ((PyObject * ) self );
118
117
}
Original file line number Diff line number Diff line change @@ -536,8 +536,7 @@ set_dealloc(PyObject *self)
536
536
537
537
/* bpo-31095: UnTrack is needed before calling any callbacks */
538
538
PyObject_GC_UnTrack (so );
539
- if (so -> weakreflist != NULL )
540
- PyObject_ClearWeakRefs ((PyObject * ) so );
539
+ PyObject_ClearWeakRefs ((PyObject * ) so );
541
540
542
541
for (entry = so -> table ; used > 0 ; entry ++ ) {
543
542
if (entry -> key && entry -> key != dummy ) {
Original file line number Diff line number Diff line change @@ -21,9 +21,7 @@ unionobject_dealloc(PyObject *self)
21
21
unionobject * alias = (unionobject * )self ;
22
22
23
23
_PyObject_GC_UNTRACK (self );
24
- if (alias -> weakreflist != NULL ) {
25
- PyObject_ClearWeakRefs ((PyObject * )alias );
26
- }
24
+ PyObject_ClearWeakRefs ((PyObject * )alias );
27
25
28
26
Py_XDECREF (alias -> args );
29
27
Py_XDECREF (alias -> hashable_args );
You can’t perform that action at this time.
0 commit comments