Skip to content

Commit b399f76

Browse files
author
Christopher Doris
committed
preserve in incref/decref (use-after-free)
1 parent 04a9507 commit b399f76

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/Core/Py.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ pyconvert(::Type{Py}, x::Py) = x
5151

5252
setptr!(x::Py, ptr::C.PyPtr) = (setfield!(x, :ptr, ptr); x)
5353

54-
incref(x::Py) = (incref(getptr(x)); x)
55-
decref(x::Py) = (decref(getptr(x)); x)
54+
incref(x::Py) = Base.GC.@preserve x (incref(getptr(x)); x)
55+
decref(x::Py) = Base.GC.@preserve x (decref(getptr(x)); x)
5656

5757
Base.unsafe_convert(::Type{C.PyPtr}, x::Py) = getptr(x)
5858

0 commit comments

Comments
 (0)