… | … | ||
---|---|---|---|
137 | if (self) | 137 | if (self) |
138 | { | 138 | { |
139 | if (refcnt + SvREFCNT (self) > 0) | 139 | if (refcnt + SvREFCNT (self) > 0) |
140 | return; | 140 | return; |
141 | 141 | ||
142 | assert (flags & F_BORROWED); | 142 | if (flags & F_BORROWED) |
143 | 143 | { | |
144 | flags &= ~F_BORROWED; | 144 | flags &= ~F_BORROWED; |
145 | refcnt_inc (); | 145 | refcnt_inc (); |
146 | SvREFCNT_dec (self); | 146 | SvREFCNT_dec (self); |
147 | self = 0; | 147 | } |
148 | |||
149 | if (self) | ||
150 | if (refcnt + SvREFCNT (self) > 0) | ||
151 | return; | ||
148 | } | 152 | } |
149 | 153 | ||
150 | if (refcnt > 0) | 154 | if (refcnt > 0) |
151 | return; | 155 | return; |
152 | 156 |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |