Update with latest from head
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1d041c6..2561637 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,9 +1,8 @@
 ## 0.9.13
 
+* fix grind check-links and check-sdk-links (#1360)
 * fix multiple issues in annotation/feature list handling (#1268, #1162, #1081)
-
 * Added `pretty-index-json` command line flag.
-
 * `index.json` file entries are now sorted.
 
 ## 0.9.12
diff --git a/tool/grind.dart b/tool/grind.dart
index ec93fd3..3d64de9 100644
--- a/tool/grind.dart
+++ b/tool/grind.dart
@@ -79,7 +79,7 @@
 checkLinks() {
   bool foundError = false;
   Set<String> visited = new Set();
-  final origin = 'testing/test_package/doc/api/';
+  final origin = 'testing/test_package_docs/';
   var start = 'index.html';
 
   _doCheck(origin, visited, start, foundError);
@@ -267,8 +267,11 @@
 
   File file = new File("$fullPath");
   if (!file.existsSync()) {
-    error = true;
-    log('  * Not found: $fullPath from $source');
+    // There is a deliberately broken link in one place.
+    if (!fullPath.endsWith("ftp:/ftp.myfakepackage.com/donthidemyschema")) {
+      error = true;
+      log('  * Not found: $fullPath from $source');
+    }
     return;
   }
   Document doc = parse(file.readAsStringSync());
@@ -283,7 +286,12 @@
       .where((href) => href != null)
       .forEach((href) {
     if (!href.startsWith('http') && !href.contains('#')) {
-      var full = '${path.dirname(pathToCheck)}/$baseHref/$href';
+      var full;
+      if (baseHref != null) {
+        full = '${path.dirname(pathToCheck)}/$baseHref/$href';
+      } else {
+        full = '${path.dirname(pathToCheck)}/$href';
+      }
       var normalized = path.normalize(full);
       _doCheck(origin, visited, normalized, error, pathToCheck);
     }