File tree Expand file tree Collapse file tree 2 files changed +7
-11
lines changed
numpy/_core/src/multiarray Expand file tree Collapse file tree 2 files changed +7
-11
lines changed Original file line number Diff line number Diff line change @@ -398,13 +398,6 @@ subarray_traverse_data_free(NpyAuxData *data)
398
398
}
399
399
400
400
401
- /*
402
- * We seem to be neither using nor exposing this right now, so leave it NULL.
403
- * (The implementation below should be functional.)
404
- */
405
- #define subarray_traverse_data_clone NULL
406
-
407
- #ifndef subarray_traverse_data_clone
408
401
/* traverse data copy function */
409
402
static NpyAuxData *
410
403
subarray_traverse_data_clone (NpyAuxData * data )
@@ -426,7 +419,6 @@ subarray_traverse_data_clone(NpyAuxData *data)
426
419
427
420
return (NpyAuxData * )newdata ;
428
421
}
429
- #endif
430
422
431
423
432
424
static int
@@ -469,7 +461,7 @@ get_subarray_traverse_func(
469
461
470
462
auxdata -> count = size ;
471
463
auxdata -> base .free = & subarray_traverse_data_free ;
472
- auxdata -> base .clone = subarray_traverse_data_clone ;
464
+ auxdata -> base .clone = & subarray_traverse_data_clone ;
473
465
474
466
if (get_traverse_func (
475
467
traverse_context , dtype , aligned ,
Original file line number Diff line number Diff line change @@ -69,18 +69,22 @@ static inline int
69
69
NPY_traverse_info_copy (
70
70
NPY_traverse_info * traverse_info , NPY_traverse_info * original )
71
71
{
72
- traverse_info -> func = NULL ;
72
+ /* Note that original may be identical to traverse_info! */
73
73
if (original -> func == NULL ) {
74
74
/* Allow copying also of unused clear info */
75
+ traverse_info -> func = NULL ;
75
76
return 0 ;
76
77
}
77
- traverse_info -> auxdata = NULL ;
78
78
if (original -> auxdata != NULL ) {
79
79
traverse_info -> auxdata = NPY_AUXDATA_CLONE (original -> auxdata );
80
80
if (traverse_info -> auxdata == NULL ) {
81
+ traverse_info -> func = NULL ;
81
82
return -1 ;
82
83
}
83
84
}
85
+ else {
86
+ traverse_info -> auxdata = NULL ;
87
+ }
84
88
Py_INCREF (original -> descr );
85
89
traverse_info -> descr = original -> descr ;
86
90
traverse_info -> func = original -> func ;
You can’t perform that action at this time.
0 commit comments