From cd2eededa8e87b40d754dfd3009a05c2387bbe4e Mon Sep 17 00:00:00 2001 From: mephi42 Date: Sat, 17 Aug 2024 23:51:22 +0200 Subject: [PATCH] Allow interrupting `memtrace report` with Ctrl+C MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Performance impact: Before: 948.1 ms ± 9.8 ms After: 960.0 ms ± 41.7 ms Closes #103 --- memtrace_ext/memtrace_ext.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/memtrace_ext/memtrace_ext.cc b/memtrace_ext/memtrace_ext.cc index 5809126a5..fa5dc44f5 100644 --- a/memtrace_ext/memtrace_ext.cc +++ b/memtrace_ext/memtrace_ext.cc @@ -757,6 +757,9 @@ class Trace : public TraceBase { template int VisitOne(V* visitor, const F& filter) { + if (PyErr_CheckSignals()) { + boost::python::throw_error_already_set(); + } if (!Have(Tlv::kFixedLength)) return -EINVAL; Tlv tlv(cur_); if (!Have(tlv.GetAlignedLength())) return -EINVAL;