Check whether there are any URLs before iterating over them.
authorMike Taylor <mike@indexdata.com>
Tue, 30 Jun 2015 12:56:27 +0000 (13:56 +0100)
committerMike Taylor <mike@indexdata.com>
Tue, 30 Jun 2015 12:56:27 +0000 (13:56 +0100)
MAY fix a problem in the test-suite.
Thanks for Wolfram for spotting this.

src/mkws-widget-main.js

index f1b13e0..b218a95 100644 (file)
@@ -140,20 +140,22 @@ mkws.registerWidgetType('records', function() {
         }
 
         var urls = hit['md-electronic-url'];
-        var bestLink = null;
-        var otherLinks = [];
-        for (var j = 0; j < urls.length; j++) {
-          var url = urls[j];
-          if (!url.match(/^(https?:)?\/\//)) {
-            that.warn("link '" + url + "' is not a valid URL");
-          } else if (!bestLink) {
-            bestLink = url;
-          } else {
-            otherLinks.push(url);
+        if (urls) {
+          var bestLink = null;
+          var otherLinks = [];
+          for (var j = 0; j < urls.length; j++) {
+            var url = urls[j];
+            if (!url.match(/^(https?:)?\/\//)) {
+              that.warn("link '" + url + "' is not a valid URL");
+            } else if (!bestLink) {
+              bestLink = url;
+            } else {
+              otherLinks.push(url);
+            }
           }
+          hit.bestLink = bestLink;
+          hit.otherLinks = otherLinks;
         }
-        hit.bestLink = bestLink;
-        hit.otherLinks = otherLinks;
       }
 
       var template = team.loadTemplate(that.config.template || "records");