| 3975 | } |
| 3976 | |
| 3977 | void YEvents::destroy(unsigned dstrFlags) |
| 3978 | { |
| 3979 | YAttachment* att = attachment.release(); |
| 3980 | if (att) |
| 3981 | att->childEvents.remove(this); |
| 3982 | removeHandle(&events, handle); |
| 3983 | |
| 3984 | if (!(dstrFlags & DF_RELEASE)) |
| 3985 | { |
| 3986 | const bool allowCancel = destroyed.compareExchange(0, 1); |
| 3987 | if (!allowCancel) |
| 3988 | return; |
| 3989 | } |
| 3990 | |
| 3991 | destroy2(dstrFlags); |
| 3992 | } |
| 3993 | |
| 3994 | void YEvents::cancel(CheckStatusWrapper* status) |
| 3995 | { |
no test coverage detected