Merge branch 'empty-stack-trace'
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 29b0527..665eb30 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 1.3.2
+
+* Don't crash when running `Trace.terse` on empty stack traces.
+
 ## 1.3.1
 
 * Support more types of JavaScriptCore stack frames.
diff --git a/lib/src/trace.dart b/lib/src/trace.dart
index 2fce0c7..84a19ef 100644
--- a/lib/src/trace.dart
+++ b/lib/src/trace.dart
@@ -263,7 +263,7 @@
         var library = frame.library.replaceAll(_terseRegExp, '');
         return new Frame(Uri.parse(library), null, null, frame.member);
       }).toList();
-      if (newFrames.first.isCore && newFrames.length > 1) newFrames.removeAt(0);
+      if (newFrames.length > 1 && newFrames.first.isCore) newFrames.removeAt(0);
     }
 
     return new Trace(newFrames.reversed);
diff --git a/pubspec.yaml b/pubspec.yaml
index 85dfe45..bc3bc8d 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -7,7 +7,7 @@
 #
 # When the major version is upgraded, you *must* update that version constraint
 # in pub to stay in sync with this.
-version: 1.3.1
+version: 1.3.2
 author: "Dart Team <misc@dartlang.org>"
 homepage: http://github.com/dart-lang/stack_trace
 description: >
diff --git a/test/trace_test.dart b/test/trace_test.dart
index 249e9f6..7fb9b5b 100644
--- a/test/trace_test.dart
+++ b/test/trace_test.dart
@@ -350,6 +350,14 @@
 '''));
   });
 
+  test(".terse won't panic on an empty trace", () {
+    var trace = new Trace.parse('''
+''');
+
+    expect(trace.terse.toString(), equals('''
+'''));
+  });
+
   test('.foldFrames folds frames together bottom-up', () {
     var trace = new Trace.parse('''
 #0 notFoo (foo.dart:42:21)