@@ -569,16 +569,23 @@ def _preprocess_add_items(self, items):
569569 """ Split the items into two lists of path strings and BaseEntries. """
570570 paths = []
571571 entries = []
572-
573- for item in items :
574- if isinstance (item , string_types ):
575- paths .append (self ._to_relative_path (item ))
576- elif isinstance (item , (Blob , Submodule )):
577- entries .append (BaseIndexEntry .from_blob (item ))
578- elif isinstance (item , BaseIndexEntry ):
579- entries .append (item )
580- else :
581- raise TypeError ("Invalid Type: %r" % item )
572+
573+ if isinstance (items , string_types ):
574+ paths .append (self ._to_relative_path (items ))
575+ elif isinstance (items , (Blob , Submodule )):
576+ entries .append (BaseIndexEntry .from_blob (items ))
577+ elif isinstance (items , BaseIndexEntry ):
578+ entries .append (items )
579+ else :
580+ for item in items :
581+ if isinstance (item , string_types ):
582+ paths .append (self ._to_relative_path (item ))
583+ elif isinstance (item , (Blob , Submodule )):
584+ entries .append (BaseIndexEntry .from_blob (item ))
585+ elif isinstance (item , BaseIndexEntry ):
586+ entries .append (item )
587+ else :
588+ raise TypeError ("Invalid Type: %r" % item )
582589 # END for each item
583590 return (paths , entries )
584591
@@ -801,13 +808,18 @@ def _items_to_rela_paths(self, items):
801808 """Returns a list of repo-relative paths from the given items which
802809 may be absolute or relative paths, entries or blobs"""
803810 paths = []
804- for item in items :
805- if isinstance (item , (BaseIndexEntry , (Blob , Submodule ))):
806- paths .append (self ._to_relative_path (item .path ))
807- elif isinstance (item , string_types ):
808- paths .append (self ._to_relative_path (item ))
809- else :
810- raise TypeError ("Invalid item type: %r" % item )
811+ if isinstance (items , (BaseIndexEntry , (Blob , Submodule ))):
812+ paths .append (self ._to_relative_path (items .path ))
813+ elif isinstance (items , string_types ):
814+ paths .append (self ._to_relative_path (items ))
815+ else :
816+ for item in items :
817+ if isinstance (item , (BaseIndexEntry , (Blob , Submodule ))):
818+ paths .append (self ._to_relative_path (item .path ))
819+ elif isinstance (item , string_types ):
820+ paths .append (self ._to_relative_path (item ))
821+ else :
822+ raise TypeError ("Invalid item type: %r" % item )
811823 # END for each item
812824 return paths
813825
0 commit comments