abort assembly/source loading if no marker is selected in explorer
This commit is contained in:
@ -30,8 +30,10 @@ my $selected_experiment = $selected_experiments[0];
|
|||||||
|
|
||||||
my $cui = TUI::init_cui();
|
my $cui = TUI::init_cui();
|
||||||
|
|
||||||
|
# TODO: Add a TextEditor panel beside the experiment selection for notes.
|
||||||
|
# Store notes in experiment/notes/description.txt
|
||||||
# TODO: Add a TextEditor panel below the markers for notes.
|
# TODO: Add a TextEditor panel below the markers for notes.
|
||||||
# Store notes in ./notes/benchmark-type-address.txt
|
# Store notes in experiment/notes/benchmark-type-address.txt
|
||||||
# TODO: Add a more exhaustive faults query that also retrieves
|
# TODO: Add a more exhaustive faults query that also retrieves
|
||||||
# what fault has been injected. Then add an info popup or
|
# what fault has been injected. Then add an info popup or
|
||||||
# display it in the markers panel
|
# display it in the markers panel
|
||||||
@ -171,6 +173,8 @@ sub align_region {
|
|||||||
sub load_assembly_elf {
|
sub load_assembly_elf {
|
||||||
my ($marker) = @_;
|
my ($marker) = @_;
|
||||||
|
|
||||||
|
return unless defined $marker;
|
||||||
|
|
||||||
my $address = hex( $marker->{fault_address} );
|
my $address = hex( $marker->{fault_address} );
|
||||||
|
|
||||||
if ( !exists $assembly_cache{$address} ) {
|
if ( !exists $assembly_cache{$address} ) {
|
||||||
@ -248,6 +252,8 @@ my %source_line_cache;
|
|||||||
sub load_source_c {
|
sub load_source_c {
|
||||||
my ($marker) = @_;
|
my ($marker) = @_;
|
||||||
|
|
||||||
|
return unless defined $marker;
|
||||||
|
|
||||||
my $address = $marker->{fault_address};
|
my $address = $marker->{fault_address};
|
||||||
|
|
||||||
if ( !exists $source_cache{$address} ) {
|
if ( !exists $source_cache{$address} ) {
|
||||||
|
|||||||
@ -13,6 +13,13 @@ use TUI;
|
|||||||
|
|
||||||
use feature 'say';
|
use feature 'say';
|
||||||
|
|
||||||
|
# TODO: Less navigation if the object is selected first, then the action
|
||||||
|
# - Differentiate between local/remote object
|
||||||
|
# - List all types in the same list?
|
||||||
|
# - Select actions afterwards and apply fitting ones all in one go
|
||||||
|
# - Hide unfeasible actions
|
||||||
|
# TODO: Much can be extracted into utility functions
|
||||||
|
|
||||||
my $local_obsidian = '/home/christoph/Notes/Obsidian/Chriphost';
|
my $local_obsidian = '/home/christoph/Notes/Obsidian/Chriphost';
|
||||||
my $local_obsidian_attach = "$local_obsidian/attach";
|
my $local_obsidian_attach = "$local_obsidian/attach";
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user