Skip to content

Commit

Permalink
Disable model version check on Windows
Browse files Browse the repository at this point in the history
See #1307
  • Loading branch information
hannobraun committed Nov 4, 2022
1 parent e40fa13 commit c68dd96
Showing 1 changed file with 30 additions and 23 deletions.
53 changes: 30 additions & 23 deletions crates/fj-host/src/model.rs
Original file line number Diff line number Diff line change
Expand Up @@ -105,32 +105,39 @@ impl Model {
let lib = libloading::Library::new(&self.lib_path)
.map_err(Error::LoadingLibrary)?;

let version_pkg: libloading::Symbol<fn() -> RawVersion> =
lib.get(b"version_pkg").map_err(Error::LoadingVersion)?;

let version_pkg = version_pkg().to_string();
if fj::version::VERSION_PKG != version_pkg {
let host = String::from_utf8_lossy(
fj::version::VERSION_PKG.as_bytes(),
)
.into_owned();
let model = version_pkg;

return Err(Error::VersionMismatch { host, model });
}
if cfg!(target_os = "windows") {
warn!(
"Version check is disabled on Windows (see \
https://github.com/hannobraun/Fornjot/issues/1307)"
);
} else {
let version_pkg: libloading::Symbol<fn() -> RawVersion> =
lib.get(b"version_pkg").map_err(Error::LoadingVersion)?;

let version_pkg = version_pkg().to_string();
if fj::version::VERSION_PKG != version_pkg {
let host = String::from_utf8_lossy(
fj::version::VERSION_PKG.as_bytes(),
)
.into_owned();
let model = version_pkg;

return Err(Error::VersionMismatch { host, model });
}

let version_full: libloading::Symbol<fn() -> RawVersion> =
lib.get(b"version_full").map_err(Error::LoadingVersion)?;
let version_full: libloading::Symbol<fn() -> RawVersion> =
lib.get(b"version_full").map_err(Error::LoadingVersion)?;

let version_full = version_full().to_string();
if fj::version::VERSION_FULL != version_full {
let host = String::from_utf8_lossy(
fj::version::VERSION_FULL.as_bytes(),
)
.into_owned();
let model = version_full;
let version_full = version_full().to_string();
if fj::version::VERSION_FULL != version_full {
let host = String::from_utf8_lossy(
fj::version::VERSION_FULL.as_bytes(),
)
.into_owned();
let model = version_full;

warn!("{}", Error::VersionMismatch { host, model });
warn!("{}", Error::VersionMismatch { host, model });
}
}

let init: libloading::Symbol<abi::InitFunction> = lib
Expand Down

0 comments on commit c68dd96

Please sign in to comment.