[m-dev.] diff: fix bug with mdb retry command

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Oct 15 18:27:45 AEST 1999


Estimated hours taken: 0.5

trace/mercury_trace.c:
	Fix a bug: the retry command was crashing if you tried to do a retry
	in a predicate compiled without execution tracing information.

Workspace: /d-drive/home/hg/fjh/mercury
Index: trace/mercury_trace.c
===================================================================
RCS file: /home/mercury1/repository/mercury/trace/mercury_trace.c,v
retrieving revision 1.14
diff -u -r1.14 mercury_trace.c
--- trace/mercury_trace.c	1999/10/08 02:56:24	1.14
+++ trace/mercury_trace.c	1999/10/15 08:17:46
@@ -331,9 +331,14 @@
 
 	saved_regs = event_info->MR_saved_regs;
 	entry = event_info->MR_event_sll->MR_sll_entry;
+	if (!MR_ENTRY_LAYOUT_HAS_EXEC_TRACE(entry)) {
+		message = "Cannot perform retry, because this procedure "
+			"was not compiled with\nexecution tracing enabled.";
+		return message;
+	}
+
 	call_label = entry->MR_sle_call_label;
 	input_args = &call_label->MR_sll_var_info;
-
 	if (input_args->MR_slvs_var_count < 0) {
 		message = "Cannot perform retry because information about "
 		          "the input arguments is not available.";

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>  |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3        |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list