@@ -362,7 +362,6 @@ set_bp_in_method (MonoDomain *domain, MonoMethod *method, MonoSeqPointInfo *seq_
362
362
typedef struct {
363
363
MonoBreakpoint * bp ;
364
364
GPtrArray * methods ;
365
- GPtrArray * method_domains ;
366
365
GPtrArray * method_seq_points ;
367
366
368
367
MonoDomain * domain ;
@@ -380,7 +379,6 @@ collect_domain_bp_inner (gpointer key, gpointer value, gpointer user_data)
380
379
381
380
/* Save the info locally to simplify the code inside the domain lock */
382
381
g_ptr_array_add (ud -> methods , m );
383
- g_ptr_array_add (ud -> method_domains , ud -> domain );
384
382
g_ptr_array_add (ud -> method_seq_points , seq_points );
385
383
}
386
384
@@ -389,11 +387,8 @@ void
389
387
mono_jit_memory_manager_foreach_seq_point (dn_simdhash_ght_t * seq_points , dn_simdhash_ght_foreach_func func , gpointer user_data );
390
388
391
389
static void
392
- collect_domain_bp (gpointer key , gpointer value , gpointer user_data )
390
+ collect_domain_bp (CollectDomainData * ud )
393
391
{
394
- CollectDomainData * ud = (CollectDomainData * )user_data ;
395
- ud -> domain = (MonoDomain * )key ;
396
-
397
392
// FIXME:
398
393
MonoJitMemoryManager * jit_mm = get_default_jit_mm ();
399
394
jit_mm_lock (jit_mm );
@@ -421,7 +416,6 @@ mono_de_set_breakpoint (MonoMethod *method, long il_offset, EventRequest *req, M
421
416
MonoMethod * m ;
422
417
MonoSeqPointInfo * seq_points ;
423
418
GPtrArray * methods ;
424
- GPtrArray * method_domains ;
425
419
GPtrArray * method_seq_points ;
426
420
427
421
if (error )
@@ -442,7 +436,6 @@ mono_de_set_breakpoint (MonoMethod *method, long il_offset, EventRequest *req, M
442
436
PRINT_DEBUG_MSG (1 , "[dbg] Setting %sbreakpoint at %s:0x%x.\n" , (req -> event_kind == EVENT_KIND_STEP ) ? "single step " : "" , method ? mono_method_full_name (method , TRUE) : "<all>" , (int )il_offset );
443
437
444
438
methods = g_ptr_array_new ();
445
- method_domains = g_ptr_array_new ();
446
439
method_seq_points = g_ptr_array_new ();
447
440
448
441
mono_loader_lock ();
@@ -451,20 +444,20 @@ mono_de_set_breakpoint (MonoMethod *method, long il_offset, EventRequest *req, M
451
444
memset (& user_data , 0 , sizeof (user_data ));
452
445
user_data .bp = bp ;
453
446
user_data .methods = methods ;
454
- user_data .method_domains = method_domains ;
455
447
user_data .method_seq_points = method_seq_points ;
456
- mono_de_foreach_domain (collect_domain_bp , & user_data );
448
+ user_data .domain = mono_get_root_domain ();
449
+ collect_domain_bp (& user_data );
457
450
458
451
for (guint i = 0 ; i < methods -> len ; ++ i ) {
459
452
m = (MonoMethod * )g_ptr_array_index (methods , i );
460
- domain = ( MonoDomain * ) g_ptr_array_index ( method_domains , i ) ;
453
+ domain = user_data . domain ;
461
454
seq_points = (MonoSeqPointInfo * )g_ptr_array_index (method_seq_points , i );
462
455
set_bp_in_method (domain , m , seq_points , bp , error );
463
456
}
464
457
465
458
// trying to get the seqpoints directly from the jit info of the method
466
459
// the seqpoints in get_default_jit_mm may not be found for AOTed methods in arm64
467
- if (methods -> len == 0 )
460
+ if (methods -> len == 0 )
468
461
{
469
462
MonoJitInfo * ji ;
470
463
(void )mono_jit_search_all_backends_for_jit_info (method , & ji );
@@ -477,7 +470,6 @@ mono_de_set_breakpoint (MonoMethod *method, long il_offset, EventRequest *req, M
477
470
mono_loader_unlock ();
478
471
479
472
g_ptr_array_free (methods , TRUE);
480
- g_ptr_array_free (method_domains , TRUE);
481
473
g_ptr_array_free (method_seq_points , TRUE);
482
474
483
475
if (error && !is_ok (error )) {
0 commit comments