diff --git a/labsuite/protocol/protocol.py b/labsuite/protocol/protocol.py
index <HASH>..<HASH> 100644
--- a/labsuite/protocol/protocol.py
+++ b/labsuite/protocol/protocol.py
@@ -201,7 +201,10 @@ class Protocol():
 
     def run_next(self):
         i = self._command_index
-        next_command = self._commands[self._command_index]
+        try:
+            next_command = self._commands[self._command_index]
+        except IndexError:
+            return False
         cur = self._commands[i]
         command = list(cur)[0]
         args = cur[command]
Protocol: Return false from run_next when done.

I know, I know, I'll make this an iterator eventually.  But that
day is not today.