@@ -7,7 +7,7 @@ use crate::handler::Handler;
77use crate :: task:: {
88 gen_task_id, Action , CallSearchArg , CalltraceLoadArgs , CollapseCallsArgs , LoadHistoryArg , LocalStepJump , Location ,
99 ProgramEvent , RunTracepointsArg , SourceCallJumpTarget , SourceLocation , StepArg , Task , TaskKind , TracepointId ,
10- UpdateTableArgs ,
10+ UpdateTableArgs , FunctionLocation ,
1111} ;
1212use crate :: trace_processor:: { load_trace_data, load_trace_metadata, TraceProcessor } ;
1313use log:: { error, info, warn} ;
@@ -18,7 +18,6 @@ use std::fmt;
1818use std:: io:: { BufRead , BufReader , Write } ;
1919use std:: os:: unix:: net:: UnixListener ;
2020use std:: path:: { Path , PathBuf } ;
21- use std:: sync:: mpsc;
2221use std:: time:: Instant ;
2322
2423// fn forward_raw_events<W: Write>(
@@ -67,7 +66,6 @@ fn launch(
6766 trace_folder : & Path ,
6867 trace_file : & Path ,
6968 seq : i64 ,
70- tx : mpsc:: Sender < crate :: response:: Response > ,
7169) -> Result < Handler , Box < dyn Error > > {
7270 info ! ( "run launch() for {:?}" , trace_folder) ;
7371 let trace_file_format = if trace_file. extension ( ) == Some ( std:: ffi:: OsStr :: new ( "json" ) ) {
@@ -96,7 +94,7 @@ fn launch(
9694 info ! ( "postprocessing trace: duration: {:?}" , duration2) ;
9795
9896 // eprintln!("TRACE METADATA: {:?}", meta);
99- let mut handler = Handler :: new ( Box :: new ( db) , tx . clone ( ) ) ;
97+ let mut handler = Handler :: new ( Box :: new ( db) ) ;
10098 handler. dap_client . seq = seq;
10199 handler. run_to_entry ( dap:: Request :: default ( ) ) ?;
102100 Ok ( handler)
@@ -188,6 +186,7 @@ fn handle_request<W: Write>(
188186 info ! ( "load_calltrace_section" ) ;
189187 handler. load_calltrace_section ( req. clone ( ) , req. load_args :: < CalltraceLoadArgs > ( ) ?) ?
190188 }
189+ "ct/load-asm-function" => handler. load_asm_function ( req. clone ( ) , req. load_args :: < FunctionLocation > ( ) ?) ?,
191190 _ => {
192191 match dap_command_to_step_action ( & req. command ) {
193192 Ok ( ( action, is_reverse) ) => {
@@ -212,7 +211,7 @@ fn handle_request<W: Write>(
212211fn handle_client < R : BufRead , W : Write > ( reader : & mut R , writer : & mut W ) -> Result < ( ) , Box < dyn Error > > {
213212 let mut seq = 1i64 ;
214213 let mut breakpoints: HashMap < String , HashSet < i64 > > = HashMap :: new ( ) ;
215- let ( tx, _rx) = mpsc:: channel ( ) ;
214+ // let (tx, _rx) = mpsc::channel();
216215 let mut handler: Option < Handler > = None ;
217216 let mut received_launch = false ;
218217 let mut launch_trace_folder = PathBuf :: from ( "" ) ;
@@ -337,7 +336,7 @@ fn handle_client<R: BufRead, W: Write>(reader: &mut R, writer: &mut W) -> Result
337336 }
338337 info ! ( "stored launch trace folder: {launch_trace_folder:?}" ) ;
339338 if received_configuration_done {
340- handler = Some ( launch ( & launch_trace_folder, & launch_trace_file, seq, tx . clone ( ) ) ?) ;
339+ handler = Some ( launch ( & launch_trace_folder, & launch_trace_file, seq) ?) ;
341340 if let Some ( h) = handler. as_mut ( ) {
342341 write_dap_messages ( writer, h, & mut seq) ?;
343342 }
@@ -380,7 +379,7 @@ fn handle_client<R: BufRead, W: Write>(reader: &mut R, writer: &mut W) -> Result
380379
381380 info ! ( "configuration done sent response; received_launch: {received_launch}" ) ;
382381 if received_launch {
383- handler = Some ( launch ( & launch_trace_folder, & launch_trace_file, seq, tx . clone ( ) ) ?) ;
382+ handler = Some ( launch ( & launch_trace_folder, & launch_trace_file, seq) ?) ;
384383 if let Some ( h) = handler. as_mut ( ) {
385384 write_dap_messages ( writer, h, & mut seq) ?;
386385 }
0 commit comments