diff -r abdc0f6214c8 -r 9f6461b1c9cc src/Pure/ML-Systems/multithreading_polyml.ML --- a/src/Pure/ML-Systems/multithreading_polyml.ML Mon Jul 27 17:12:19 2009 +0200 +++ b/src/Pure/ML-Systems/multithreading_polyml.ML Mon Jul 27 17:36:30 2009 +0200 @@ -110,8 +110,8 @@ val _ = Thread.setAttributes orig_atts; in Exn.release result end; -fun interruptible f = - with_attributes regular_interrupts (fn _ => fn x => f x); +fun interruptible f x = + (Thread.testInterrupt (); with_attributes regular_interrupts (fn _ => fn x => f x) x); fun uninterruptible f = with_attributes no_interrupts (fn atts => fn x =>