diff --git a/gdb-port/top-level-parse.py b/gdb-port/top-level-parse.py
index 0a33445435c3230a07b884df7253b30aba0bc14b..7db8519194ea02f574a233adce33b75b9d82f4d5 100644
--- a/gdb-port/top-level-parse.py
+++ b/gdb-port/top-level-parse.py
@@ -399,13 +399,13 @@ class TopLevelParse:
 	# TODO: remove first printing loop
 	def print_input_chunk(self, token, rows, start, end):
 		#print("print_input_chunk(): start: ", start, "end: ", end)
-		tokenmap_val_list = [dict(token, addr=hex(key)) for key, token in self.input_token_map.items() if (token['start'] >= start and token['start'] <= end)]
-		numrows = min(rows, len(tokenmap_val_list))
-		h = numrows
 		w = end-start
 		if w == 0:
 			print("all tokens passed to display are zero-width")
 			return
+		tokenmap_val_list = [dict(token, addr=hex(key)) for key, token in self.input_token_map.items() if (token['start'] >= start and token['start'] <= end)]
+		numrows = min(rows, len(tokenmap_val_list))
+		h = numrows
 
 		# Print by getting a token, and recursively walking its children if applicable
 		charbuf = [[' '] * w for i in range(0,h)]