Surface illegal storage access

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
User avatar
mpetrasinovic
Posts: 106
Joined: Sat Feb 22, 2020 10:19 am
Location: Belgrade, Serbia
Contact:

Surface illegal storage access

Post by mpetrasinovic »

I often encounter a problem with the surface workbench if I use Std Part. In the attached file is a sketch placed inside Std Part. If I try to create a surface with the Filling tool from the Surface workbench I get an illegal storage access message in the report window and if I try to create that surface again FreeCAD just crashes without any new message.

Am I doing something the wrong way? How to configure the program so that the new surface is placed in the active Std Part?

OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23141 (Git)
Build type: Release
Branch: master
Hash: 0eba78d40096720f7a637a9a73c382a08b820bca
Python version: 3.6.8
Qt version: 5.12.1
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United States (en_US)
Attachments
fill.FCStd
(5.4 KiB) Downloaded 51 times
User avatar
mpetrasinovic
Posts: 106
Joined: Sat Feb 22, 2020 10:19 am
Location: Belgrade, Serbia
Contact:

Re: Surface illegal storage access

Post by mpetrasinovic »

Can anyone confirm the same behavior?
kisolre
Veteran
Posts: 4166
Joined: Wed Nov 21, 2018 1:13 pm

Re: Surface illegal storage access

Post by kisolre »

I can select the edges one by one. Just the first one triggers "illegal storage access". After selecting the four edges a surface is created. Deleting it and trying to recreate crashes FreeCAD at first edge selection. Recovering the file gives a proper recomputable file. I tried a simple rectangular sketch (no Std_Part, no body, ...) and still got illegal storage access on first edge selection.

OS: Windows 8.1 (6.3)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23231 (Git)
Build type: Release
Branch: master
Hash: dadac36234a03d06eeb0de134b15742693e7f2d8
Python version: 3.6.8
Qt version: 5.12.1
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: Bulgarian/Bulgaria (bg_BG)
User avatar
mpetrasinovic
Posts: 106
Joined: Sat Feb 22, 2020 10:19 am
Location: Belgrade, Serbia
Contact:

Re: Surface illegal storage access

Post by mpetrasinovic »

I also just tested without Std Part and can confirm that illegal storage access is reported on the first selection of edge. This bug makes the filling tool unusable because after that FreeCAD crashes every time.
wmayer
Founder
Posts: 20307
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Surface illegal storage access

Post by wmayer »

Works just fine for me with:

OS: Ubuntu 18.04.5 LTS (XFCE/xubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23448 (Git)
Build type: Debug
Branch: master
Hash: c276139f192a51bd9c57a911e1d70f1398e69d01
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: German/Germany (de_DE)


But I know that there are situations where the function crashes and AFAIR the access violation is caused deep inside OCCT code where a null handle is de-referenced.
kisolre
Veteran
Posts: 4166
Joined: Wed Nov 21, 2018 1:13 pm

Re: Surface illegal storage access

Post by kisolre »

Could this be just Windows thing? I just tried with a draft wire and again get Illegal storage access at first edge selected:

OS: Windows 8.1 Version 6.3 (Build 9600)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23414 (Git)
Build type: Release
Branch: master
Hash: 35c92ae0e315565b5e14c80adb7b04c853946c88
Python version: 3.8.6+
Qt version: 5.15.1
Coin version: 4.0.1
OCC version: 7.5.0
Locale: Bulgarian/Bulgaria (bg_BG)

I am compiling now and will test with latest when it is done.

Edit: Same with latest build

OS: Windows 8.1 Version 6.3 (Build 9600)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23453 (Git)
Build type: Release
Branch: master
Hash: fbb31b19009c2671b4751154a55670a673e58f07
Python version: 3.8.6+
Qt version: 5.15.1
Coin version: 4.0.1
OCC version: 7.5.0
Locale: Bulgarian/Bulgaria (bg_BG)
User avatar
mpetrasinovic
Posts: 106
Joined: Sat Feb 22, 2020 10:19 am
Location: Belgrade, Serbia
Contact:

Re: Surface illegal storage access

Post by mpetrasinovic »

wmayer wrote: Sat Dec 19, 2020 4:42 pm But I know that there are situations where the function crashes and AFAIR the access violation is caused deep inside OCCT code where a null handle is de-referenced.
Thank you for looking into this, it could be just in the case of Windows then. I also tried with the latest version but still get the same crash.
Syres
Veteran
Posts: 2899
Joined: Thu Aug 09, 2018 11:14 am

Re: Surface illegal storage access

Post by Syres »

While I can confirm this only fails to work correctly on Windows and I confirm @wmayer's working fine using Linux, I happen to have an older AppImage which does produce an error even though the Sketch Edge is added to the list anyway which may (or not) be of assistance:

Code: Select all

09:31:19  6.89e-07 <App> Document.cpp(3768): Failed to recompute fill#Surface: gp_Dir() - input vector has zero norm
OS: Linux Mint 19.3 (X-Cinnamon/cinnamon)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.22039 (Git) AppImage
Build type: Release
Branch: master
Hash: 2bfc6301bc80c0344cbf13dbfe041fbd78cac93d
Python version: 3.8.2
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/United Kingdom (en_GB)

If the build is too old and this feedback is just noise then please accept my apologies.
kisolre
Veteran
Posts: 4166
Joined: Wed Nov 21, 2018 1:13 pm

Re: Surface illegal storage access

Post by kisolre »

Maybe it was fixed somehow but this only got applied to Linux builds?
chrisb wrote: Ping
ChrisB, could you try under MacOS?
chrisb
Veteran
Posts: 54197
Joined: Tue Mar 17, 2015 9:14 am

Re: Surface illegal storage access

Post by chrisb »

No problems on MacOS. I select the edges one by one, on the fourth the face is shown which I can confirm without any messages in report view.

OS: macOS 10.15
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.23323 (Git)
Build type: Release
Branch: master
Hash: 512d5c6141aec52b6eecc67370336a28fde862a6
Python version: 3.8.6
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: C/Default (C)
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply