diff --git a/lldb/scripts/Python/modify-python-lldb.py b/lldb/scripts/Python/modify-python-lldb.py
index 8a0edd7..a6e86c2 100644
--- a/lldb/scripts/Python/modify-python-lldb.py
+++ b/lldb/scripts/Python/modify-python-lldb.py
@@ -95,7 +95,7 @@
         Return True if val is invalid or it corresponds to a null pointer.
         Otherwise, return False.
         """
-        if not val or int(val.GetValue(), 0) == 0:
+        if not val or val.GetValueAsUnsigned() == 0:
             return True
         else:
             return False
@@ -127,8 +127,10 @@
         for t in task_head.linked_list_iter('next'):
             print t
         """
+        if end_of_list_test(self):
+            return
+        item = self
         try:
-            item = self.GetChildMemberWithName(next_item_name)
             while not end_of_list_test(item):
                 yield item
                 # Prepare for the next iteration.
