From 2428638194e9144ead83ecaff0bfc3bbcee3af9b Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@uliege.be>
Date: Fri, 6 May 2022 10:05:53 +0200
Subject: [PATCH] add missing OCC sync in getAllPhysicalTags()

---
 src/parser/Gmsh.tab.cpp | 3 +++
 src/parser/Gmsh.y       | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/src/parser/Gmsh.tab.cpp b/src/parser/Gmsh.tab.cpp
index c14240e95c..f0c08d20aa 100644
--- a/src/parser/Gmsh.tab.cpp
+++ b/src/parser/Gmsh.tab.cpp
@@ -15697,6 +15697,9 @@ void getAllElementaryTags(int dim, List_T *out)
 
 void getAllPhysicalTags(int dim, List_T *out)
 {
+  if(GModel::current()->getOCCInternals() &&
+     GModel::current()->getOCCInternals()->getChanged())
+    GModel::current()->getOCCInternals()->synchronize(GModel::current());
   if(GModel::current()->getGEOInternals()->getChanged())
     GModel::current()->getGEOInternals()->synchronize(GModel::current());
 
diff --git a/src/parser/Gmsh.y b/src/parser/Gmsh.y
index 69c62648bb..70909b73cf 100644
--- a/src/parser/Gmsh.y
+++ b/src/parser/Gmsh.y
@@ -7282,6 +7282,9 @@ void getAllElementaryTags(int dim, List_T *out)
 
 void getAllPhysicalTags(int dim, List_T *out)
 {
+  if(GModel::current()->getOCCInternals() &&
+     GModel::current()->getOCCInternals()->getChanged())
+    GModel::current()->getOCCInternals()->synchronize(GModel::current());
   if(GModel::current()->getGEOInternals()->getChanged())
     GModel::current()->getGEOInternals()->synchronize(GModel::current());
 
-- 
GitLab