@@ -40,28 +40,27 @@ def test(self):
4040 target = self .dbg .CreateTarget (exe )
4141 self .assertTrue (target , VALID_TARGET )
4242
43- bp1_line = line_number ("main.c" , "// Set breakpoint 1 here" )
44- bp2_line = line_number ("main.c" , "// Set breakpoint 2 here" )
45-
46- lldbutil .run_break_set_by_file_and_line (
47- self , "main.c" , bp1_line , num_expected_locations = 1
48- )
49- lldbutil .run_break_set_by_file_and_line (
50- self , "main.c" , bp2_line , num_expected_locations = 1
51- )
43+ main_dot_c = lldb .SBFileSpec ("main.c" )
44+ bp1 = target .BreakpointCreateBySourceRegex ("// Set breakpoint 1 here" , main_dot_c )
45+ bp2 = target .BreakpointCreateBySourceRegex ("// Set breakpoint 2 here" , main_dot_c )
5246
5347 process = target .LaunchSimple (None , None , self .get_process_working_directory ())
5448 self .assertTrue (process , VALID_PROCESS )
5549
56- thread = process .GetThreadAtIndex (0 )
50+ # Get the thread executing a.out.
51+ threads = lldbutil .get_threads_stopped_at_breakpoint (process , bp1 )
52+ self .assertEqual (len (threads ), 1 )
53+ thread = threads [0 ]
54+
5755 if self .TraceOn ():
5856 print ("Backtrace at the first breakpoint:" )
5957 for f in thread .frames :
6058 print (f )
59+
6160 # Check that we have stopped at correct breakpoint.
6261 self .assertEqual (
63- process . GetThreadAtIndex ( 0 ) .frame [0 ].GetLineEntry ().GetLine (),
64- bp1_line ,
62+ thread .frame [0 ].GetLineEntry ().GetLine (),
63+ bp1 . GetLocationAtIndex ( 0 ). GetAddress (). GetLineEntry (). GetLine () ,
6564 "LLDB reported incorrect line number." ,
6665 )
6766
@@ -70,15 +69,14 @@ def test(self):
7069 # 'continue' command.
7170 process .Continue ()
7271
73- thread = process .GetThreadAtIndex (0 )
7472 if self .TraceOn ():
7573 print ("Backtrace at the second breakpoint:" )
7674 for f in thread .frames :
7775 print (f )
7876 # Check that we have stopped at the breakpoint
7977 self .assertEqual (
8078 thread .frame [0 ].GetLineEntry ().GetLine (),
81- bp2_line ,
79+ bp2 . GetLocationAtIndex ( 0 ). GetAddress (). GetLineEntry (). GetLine () ,
8280 "LLDB reported incorrect line number." ,
8381 )
8482 # Double-check with GetPCAddress()
0 commit comments