Files @ 0ed42ca7ff9e
Branch filter:

Location: kallithea/rhodecode/lib/dbmigrate/migrate/versioning/util/importpath.py - annotation

Marcin Kuzminski
Fixed issue with inproper handling of diff parsing that could lead to infinit loops.
This was an edge case when diff contained diff data inside. Regresion test was
added
import os
import sys

def import_path(fullpath):
    """ Import a file with full path specification. Allows one to
        import from anywhere, something __import__ does not do.
    """
    # http://zephyrfalcon.org/weblog/arch_d7_2002_08_31.html
    path, filename = os.path.split(fullpath)
    filename, ext = os.path.splitext(filename)
    sys.path.append(path)
    module = __import__(filename)
    reload(module) # Might be out of date during tests
    del sys.path[-1]
    return module