View | Details | Raw Unified | Return to bug 605295
Collapse All | Expand All

(-)metadata/mono-debug.c (+3 lines)
Lines 291-296 Link Here
291
		data_table_hash = NULL;
291
		data_table_hash = NULL;
292
	}
292
	}
293
293
294
	if (mono_symbol_table->global_data_table)
295
		free_data_table (mono_symbol_table->global_data_table);
296
294
	g_free (mono_symbol_table);
297
	g_free (mono_symbol_table);
295
	mono_symbol_table = NULL;
298
	mono_symbol_table = NULL;
296
}
299
}
(-)mini/xdebug.c (-2 / +9 lines)
Lines 263-268 Link Here
263
void
263
void
264
mono_save_xdebug_info (MonoCompile *cfg)
264
mono_save_xdebug_info (MonoCompile *cfg)
265
{
265
{
266
	MonoDebugMethodJitInfo *dmji;
267
266
	if (use_gdb_interface) {
268
	if (use_gdb_interface) {
267
		mono_loader_lock ();
269
		mono_loader_lock ();
268
270
Lines 278-284 Link Here
278
280
279
		xdebug_method_count ++;
281
		xdebug_method_count ++;
280
282
281
		mono_dwarf_writer_emit_method (xdebug_writer, cfg, cfg->jit_info->method, NULL, NULL, cfg->jit_info->code_start, cfg->jit_info->code_size, cfg->args, cfg->locals, cfg->unwind_ops, mono_debug_find_method (cfg->jit_info->method, mono_domain_get ()));
283
		dmji = mono_debug_find_method (cfg->jit_info->method, mono_domain_get ());;
284
		mono_dwarf_writer_emit_method (xdebug_writer, cfg, cfg->jit_info->method, NULL, NULL, cfg->jit_info->code_start, cfg->jit_info->code_size, cfg->args, cfg->locals, cfg->unwind_ops, dmji);
285
		mono_debug_free_method_jit_info (dmji);
282
286
283
#if 0
287
#if 0
284
		/* 
288
		/* 
Lines 305-314 Link Here
305
			return;
309
			return;
306
310
307
		mono_loader_lock ();
311
		mono_loader_lock ();
308
		mono_dwarf_writer_emit_method (xdebug_writer, cfg, cfg->jit_info->method, NULL, NULL, cfg->jit_info->code_start, cfg->jit_info->code_size, cfg->args, cfg->locals, cfg->unwind_ops, mono_debug_find_method (cfg->jit_info->method, mono_domain_get ()));
312
		dmji = mono_debug_find_method (cfg->jit_info->method, mono_domain_get ());;
313
		mono_dwarf_writer_emit_method (xdebug_writer, cfg, cfg->jit_info->method, NULL, NULL, cfg->jit_info->code_start, cfg->jit_info->code_size, cfg->args, cfg->locals, cfg->unwind_ops, dmji);
314
		mono_debug_free_method_jit_info (dmji);
309
		fflush (xdebug_fp);
315
		fflush (xdebug_fp);
310
		mono_loader_unlock ();
316
		mono_loader_unlock ();
311
	}
317
	}
318
312
}
319
}
313
320
314
/*
321
/*
(-)mini/dwarfwriter.c (-3 / +3 lines)
Lines 1459-1468 Link Here
1459
			}
1459
			}
1460
1460
1461
			first = FALSE;
1461
			first = FALSE;
1462
			g_free (loc->source_file);
1462
			g_free (loc);
1463
			g_free (loc);
1463
		}
1464
		}
1464
	}
1465
	}
1465
1466
1467
	g_free (native_to_il_offset);
1466
	g_free (prev_file_name);
1468
	g_free (prev_file_name);
1467
1469
1468
	if (!first) {
1470
	if (!first) {
Lines 1582-1588 Link Here
1582
	char *name;
1584
	char *name;
1583
	MonoMethodSignature *sig;
1585
	MonoMethodSignature *sig;
1584
	MonoMethodHeader *header;
1586
	MonoMethodHeader *header;
1585
	char **names, **tdies, **local_tdies;
1587
	char **names;
1586
	char **local_names;
1588
	char **local_names;
1587
	int *local_indexes;
1589
	int *local_indexes;
1588
	int i, num_locals;
1590
	int i, num_locals;
Lines 1595-1601 Link Here
1595
	header = mono_method_get_header (method);
1597
	header = mono_method_get_header (method);
1596
1598
1597
	/* Parameter types */
1599
	/* Parameter types */
1598
	tdies = g_new0 (char *, sig->param_count + sig->hasthis);
1599
	for (i = 0; i < sig->param_count + sig->hasthis; ++i) {
1600
	for (i = 0; i < sig->param_count + sig->hasthis; ++i) {
1600
		MonoType *t;
1601
		MonoType *t;
1601
1602
Lines 1612-1618 Link Here
1612
	}
1613
	}
1613
1614
1614
	/* Local types */
1615
	/* Local types */
1615
	local_tdies = g_new0 (char *, header->num_locals);
1616
	for (i = 0; i < header->num_locals; ++i) {
1616
	for (i = 0; i < header->num_locals; ++i) {
1617
		emit_type (w, header->locals [i]);
1617
		emit_type (w, header->locals [i]);
1618
	}
1618
	}

Return to bug 605295