Skip to content

Commit 8c03506

Browse files
committed
[FIX] server: ensure that base classes are evaluated before odoo step
1 parent 0a6abe0 commit 8c03506

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

server/src/core/python_arch_eval.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -672,6 +672,18 @@ impl PythonArchEval {
672672
}
673673
}
674674
} else {
675+
//Even if this is a valid class, we have to be sure that its own bases should have been loaded already
676+
let sym_file = symbol.borrow().get_file().clone();
677+
if let Some(file) = sym_file {
678+
if let Some(file) = file.upgrade() {
679+
if file.borrow().build_status(BuildSteps::ARCH_EVAL) != BuildStatus::DONE {
680+
SyncOdoo::build_now(session, &file, BuildSteps::ARCH_EVAL);
681+
}
682+
if !Rc::ptr_eq(&self.file, &file) {
683+
self.file.borrow_mut().add_dependency(&mut file.borrow_mut(), self.current_step, BuildSteps::ARCH_EVAL);
684+
}
685+
}
686+
}
675687
loc_sym.borrow_mut().as_class_sym_mut().bases.push(Rc::downgrade(&symbol));
676688
}
677689
}

0 commit comments

Comments
 (0)