LUMIERA.clone/tests
Ichthyostega ccb10f3c65 Invocation: chase down insidious use-after-free problem
Just wanted to use a helper function to build a source-data node.
However, the resulting node had a corrupted Node-ID spec.
Investigation with the debugger showed that the ID was still valid
while in construction and shows up corrupted after returning from the
helper function.

As it turned out, the reason is related to the de-duplication of ProcID data.
While the de-duplicated strings themselves are ''not'' affected, the corruption
happened by an intermediate instance of ProcID, which was inadvertently created
and bound by-value to the builder-λ. The created Port then picks up a reference
to this temporary, leading to the use-after-free of the string_view obejcts.

Obviously, `ProcID` must not be instantiated other than through the static
front-end `ProcID::describe`. Due to the private constructor, I can not make this
object non-copyable (because then the hash-set would not be allowed to emplace it).
But making it at least move-only will provoke a compiler error whenever binding
to a lambda capture by value, which hopefully helps to pinpoint this
insidious problem in the future...
2025-02-10 03:15:28 +01:00
..
basics Invocation: Analysis pertaining to storage for param data 2024-12-07 18:15:44 +01:00
core Invocation: chase down insidious use-after-free problem 2025-02-10 03:15:28 +01:00
include
library Invocation: Argument-spec evaluation sufficiently complete for now 2025-02-02 17:22:16 +01:00
operation Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
plugin Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
stage Library: handle chaining of iterator-pipelines 2024-11-24 23:53:38 +01:00
tool Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
vault Library: need remapping of variadic sequence 2025-01-01 22:02:08 +01:00
00helloworld.tests
00support.tests Library: option to provide an explicit random seed for tests 2024-11-12 15:49:15 +01:00
00test.tests
10errorhandling.tests
10exception.tests Library: discontinue setting error flag from Exceptions (see #1341) 2023-10-01 20:11:45 +02:00
11concurrency.tests LibraryApplication: tie DispatcherLoop to thread lifecycle 2023-10-12 20:23:59 +02:00
11list.tests
11locking.tests Library/Application: complete technology switch (closes #1279) 2023-10-16 01:44:04 +02:00
11luid.tests
11safeclib.tests
11time.tests
11vault-memory.tests Block-Flow: completed implementation of low-level cyclic extent storage 2023-07-12 21:55:50 +02:00
12metaprogramming.tests Invocation: pave a way for more generic processing via ''type-sequence'' 2024-12-18 05:55:00 +01:00
15library.tests Library: try out building a variant-model on top 2025-01-21 01:02:07 +01:00
16calculation.tests Library: now using controlled seed and replaced rand (closes #1378) 2024-11-17 19:45:41 +01:00
20config_lowlevel.tests
20threads.tests
22config_highlevel.tests
25fundamental.tests Library: prepare switch of Thread-wrapper to C++17 2023-09-21 23:23:55 +02:00
30backend-file.tests
30interfaces.tests
31plugin.tests
32scheduler.tests Library: Testsuite maintenance 2024-11-16 00:38:57 +01:00
40core.tests
41asset.tests
42query.tests
43session.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
44controller.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
45builder.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
46fixture.tests Dispatcher-Pipeline: create hook for self-validation 2023-06-12 01:18:59 +02:00
46node.tests Invocation: build a DSL to verify connectivity (see #1377) 2025-02-05 00:25:02 +01:00
47engine.tests Invocation: investigate forwarding an output data block 2024-12-23 02:31:29 +01:00
48playout.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
49core-integration.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
51-gui-model.tests Segmentation: structure analysis for splitSplice operation 2023-05-02 04:29:34 +02:00
52-gui-control.tests
80-regression.tests
DIR_INFO
SConscript
test.conf Testsuite: increase virtual memory limit 2023-10-04 22:42:37 +02:00
test.sh Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
testrunner.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00