1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * TODO: insert short description here
5 * Authors: see git history
7 * Copyright (C) 2018 Authors
8 * Released under GNU GPL v2+, read the file 'COPYING' for more information.
15 static std::list
<void*> deleted_knots
;
17 void knot_deleted_callback(void* knot
) {
18 if (std::find(deleted_knots
.begin(), deleted_knots
.end(), knot
) == deleted_knots
.end()) {
19 deleted_knots
.push_back(knot
);
23 void knot_created_callback(void* knot
) {
24 std::list
<void*>::iterator it
= std::find(deleted_knots
.begin(), deleted_knots
.end(), knot
);
25 if (it
!= deleted_knots
.end()) {
26 deleted_knots
.erase(it
);
30 void check_if_knot_deleted(void* knot
) {
31 if (std::find(deleted_knots
.begin(), deleted_knots
.end(), knot
) != deleted_knots
.end()) {
32 g_warning("Accessed knot after it was freed at %p", knot
);