equal
deleted
inserted
replaced
2044 |
2044 |
2045 u = ui.ui() |
2045 u = ui.ui() |
2046 external = [] |
2046 external = [] |
2047 for x in u.extensions(): |
2047 for x in u.extensions(): |
2048 if x[1]: |
2048 if x[1]: |
2049 mod = imp.load_source(x[0], x[1]) |
2049 try: |
|
2050 mod = imp.load_source(x[0], x[1]) |
|
2051 except: |
|
2052 u.warn("*** failed to import extension %s\n" % x[1]) |
|
2053 continue |
2050 else: |
2054 else: |
2051 def importh(name): |
2055 def importh(name): |
2052 mod = __import__(name) |
2056 mod = __import__(name) |
2053 components = name.split('.') |
2057 components = name.split('.') |
2054 for comp in components[1:]: |
2058 for comp in components[1:]: |
2055 mod = getattr(mod, comp) |
2059 mod = getattr(mod, comp) |
2056 return mod |
2060 return mod |
2057 mod = importh(x[0]) |
2061 try: |
|
2062 mod = importh(x[0]) |
|
2063 except: |
|
2064 u.warn("failed to import extension %s\n" % x[0]) |
|
2065 continue |
|
2066 |
2058 external.append(mod) |
2067 external.append(mod) |
2059 for x in external: |
2068 for x in external: |
2060 cmdtable = getattr(x, 'cmdtable', {}) |
2069 cmdtable = getattr(x, 'cmdtable', {}) |
2061 for t in cmdtable: |
2070 for t in cmdtable: |
2062 if t in table: |
2071 if t in table: |