Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def __init__(self, name):
if name is None:
self.libname = self.package_libname()
if not os.path.exists(self.libname):
# not found, try system library
self.libname = find_library("geodiff")
else:
self.libname = name
if self.libname is None:
raise GeoDiffLibVersionError("Unable to locate GeoDiff library, tried " + self.package_libname() + " and geodiff on system.")
self.lib = ctypes.CDLL(self.libname, use_errno=True)
self.init()
self.check_version()
def _parse_return_code(rc, msg):
if rc == SUCCESS:
return
elif rc == ERROR:
raise GeoDiffLibError(msg)
elif rc == CONFLICT:
raise GeoDiffLibConflictError(msg)
elif rc == UNSUPPORTED_CHANGE:
raise GeoDiffLibUnsupportedChangeError(msg)
else:
raise GeoDiffLibVersionError("Internal error (enum " + str(rc) + " not handled)")
def check_version(self):
cversion = self.version()
pyversion = __version__
if cversion != pyversion:
raise GeoDiffLibVersionError("version mismatch (%s C vs %s PY)".format(cversion, pyversion))