Index: pkg/scheduled_test/lib/src/schedule_error.dart |
diff --git a/pkg/scheduled_test/lib/src/schedule_error.dart b/pkg/scheduled_test/lib/src/schedule_error.dart |
index 3df208a01d353dc8821feb4976f70087f6c7bddc..48ed00210c7bec26a6f9a9aefd5456b933f56588 100644 |
--- a/pkg/scheduled_test/lib/src/schedule_error.dart |
+++ b/pkg/scheduled_test/lib/src/schedule_error.dart |
@@ -8,6 +8,7 @@ import 'dart:async'; |
import 'package:stack_trace/stack_trace.dart'; |
+import '../scheduled_test.dart' show captureStackTraces; |
import 'schedule.dart'; |
import 'task.dart'; |
import 'utils.dart'; |
@@ -50,7 +51,7 @@ class ScheduleError extends AsyncError { |
error = error.error; |
} |
- if (stackTrace == null) { |
+ if (captureStackTraces && stackTrace == null) { |
try { |
throw ''; |
} catch (_, thrownStackTrace) { |
@@ -88,9 +89,11 @@ class ScheduleError extends AsyncError { |
result.write('ScheduleError: "$errorString"\n'); |
} |
- result.write('Stack trace:\n'); |
- result.write(prefixLines(terseTraceString(stackTrace))); |
- result.write("\n\n"); |
+ if (stackTrace != null) { |
+ result.write('Stack trace:\n'); |
+ result.write(prefixLines(terseTraceString(stackTrace))); |
+ result.write("\n\n"); |
+ } |
if (task != null) { |
result.write('Error detected during task in queue "$queue":\n'); |