@realthunder, I'm testing your PR and I have some glitches:
1) Could you please try to export this demo file to STEP? Selecting the main Part container I get a crash with the following log
(no issues on FC daily)
Code: Select all
connect failed: No such file or directory
<Import> ImportOCAF2.cpp(1390): Local_CS_387 set default color
Program received signal SIGSEGV, Segmentation fault.
#0 /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20) [0x7f365a1cef20]
#1 0x7f3627ef8e50 in Transfer_TransientListBinder::NbTransients() const from /usr/lib/x86_64-linux-gnu/libTKXSBase.so.11+0
#2 /usr/lib/x86_64-linux-gnu/libTKXDESTEP.so.11(+0x2f4a0) [0x7f361bc274a0]
#3 /usr/lib/x86_64-linux-gnu/libTKXDESTEP.so.11(+0x2fe86) [0x7f361bc27e86]
#4 0x7f361bc28e3d in STEPCAFControl_Writer::WriteColors(Handle_XSControl_WorkSession const&, TDF_LabelSequence const&) from /usr/lib/x86_64-linux-gnu/libTKXDESTEP.so.11+0x88d
#5 0x7f361bc290be in STEPCAFControl_Writer::WriteColors(Handle_XSControl_WorkSession const&, TDF_LabelSequence const&) from /usr/lib/x86_64-linux-gnu/libTKXDESTEP.so.11+0xb0e
#6 0x7f361bc33d3f in STEPCAFControl_Writer::Transfer(STEPControl_Writer&, TDF_LabelSequence const&, STEPControl_StepModelType, char const*, bool) from /usr/lib/x86_64-linux-gnu/libTKXDESTEP.so.11+0x84f
#7 0x7f361bc3419b in STEPCAFControl_Writer::Transfer(Handle_TDocStd_Document const&, STEPControl_StepModelType, char const*) from /usr/lib/x86_64-linux-gnu/libTKXDESTEP.so.11+0x7b
#8 0x7f3608a11e5d in ImportGui::Module::exporter(Py::Tuple const&, Py::Dict const&) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/Mod/Import/ImportGui.so+0xa49
#9 0x7f3608a21445 in Py::ExtensionModule<ImportGui::Module>::invoke_method_keyword(void*, Py::Tuple const&, Py::Dict const&) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/Mod/Import/ImportGui.so+0x9d
#10 /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADBase.so(method_keyword_call_handler+0x15c) [0x7f365ca13e89]
#11 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyCFunction_FastCallDict+0x20a) [0x7f365c4307ca]
#12 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17c44c) [0x7f365c39944c]
#13 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4ec3) [0x7f365c39f563]
#14 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x17bc6f) [0x7f365c398c6f]
#15 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyEval_EvalCodeEx+0x3e) [0x7f365c39972e]
#16 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyEval_EvalCode+0x1b) [0x7f365c39a4ab]
#17 /usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyRun_StringFlags+0x8b) [0x7f365c36bb0b]
#18 0x7f365ca4f068 in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADBase.so+0xf0
#19 0x7f365ee73fcd in Gui::Command::_runCommand(char const*, int, Gui::Command::DoCmd_Type, char const*) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0xd9
#20 0x7f365ecfd605 in Gui::Application::exportTo(char const*, char const*, char const*) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0x48d
#21 0x7f365ee8bdc1 in StdCmdExport::activated(int) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0x5ad
#22 0x7f365ee72a52 in Gui::Command::invoke(int, Gui::Command::TriggerSource) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0x358
#23 0x7f365ee63cf8 in Gui::Action::onActivated() from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0x26
#24 /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so(+0x10112ab) [0x7f365ee692ab]
#25 0x7f365addb645 in QMetaObject::activate(QObject*, int, int, void**) from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x865
#26 0x7f365bb24122 in QAction::triggered(bool) from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x42
#27 0x7f365bb2680c in QAction::activate(QAction::ActionEvent) from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xcc
#28 0x7f365bb270d5 in QAction::event(QEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x35
#29 0x7f365bb2a83c in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x9c
#30 0x7f365bb32104 in QApplication::notify(QObject*, QEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2a4
#31 0x7f365ee3524e in Gui::GUIApplication::notify(QObject*, QEvent*) from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0x10e
#32 0x7f365adac9c8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x118
#33 0x7f365b39c417 in QShortcutMap::dispatchEvent(QKeyEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x117
#34 0x7f365b39c4ea in QShortcutMap::tryShortcut(QKeyEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x5a
#35 0x7f365b34ac63 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x173
#36 0x7f365b36aff7 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x87
#37 0x7f365b370035 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0x115
#38 0x7f365b3472eb in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xab
#39 /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5(+0x9f260) [0x7f364b655260]
#40 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x2e7) [0x7f36556f5417]
#41 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x4c650) [0x7f36556f5650]
#42 /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x2c) [0x7f36556f56dc]
#43 0x7f365ae0597f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x5f
#44 0x7f365adaa9fa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x13a
#45 0x7f365adb3aa4 in QCoreApplication::exec() from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x94
#46 0x7f365ed0605a in Gui::Application::runApplication() from /home/mau/Downloads/FreeCAD-rt-GroupMod/freecad-build/lib/libFreeCADGui.so+0x2530
#47 /home/mau/Downloads/FC-rt(main+0xb36) [0x564907bca9fd]
#48 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7f365a1b1b97]
#49 /home/mau/Downloads/FC-rt(_start+0x2a) [0x564907bc9cca]
2) If I try to export the attached STEP file (previously generated by FC daily) again to STEP, selecting the main Part container, I get the following error log
(no issues on FC daily)
- d.step
- (674.1 KiB) Downloaded 117 times
Code: Select all
connect failed: No such file or directory
<Import> ImportOCAF2.cpp(632): free shape count 17
<Import> ImportOCAF2.cpp(401): Local_CS_387 has empty shape
<Import> AppImportGuiPy.cpp(530): file read time: 1.56648s
<Import> AppImportGuiPy.cpp(531): import time: 0.651202s
<Import> AppImportGuiPy.cpp(532): total time: 2.21768s
Traceback (most recent call last):
File "<string>", line 4, in <module>
<class 'Base.FreeCADError'>: TCollection_Array1::Create
3) When I load the attached STEP file from a manufacturer, I don't have issues w FC daily, but I get a big sphere under the main switch using your branch
(no issues on FC daily)
WE_434331013822.step
-
- stp-settings.png (94.74 KiB) Viewed 4762 times
- step-comparison.png (154.56 KiB) Viewed 4754 times
-
I'm attaching my full FC info (FC built from your branch
https://github.com/realthunder/FreeCAD/tree/GroupMod)
Code: Select all
OS: Linux Mint 19.3 (X-Cinnamon/cinnamon)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.18920 (Git)
Build type: Unknown
Branch: GroupMod
Hash: 2d1b79892db5df4848e6bc611c9f37ddd92a046b
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 6.9.1.oce-0.18
Locale: English/UnitedStates (en_US)
Please feel free to ask if you need more details.