Bug 22858 - Freecad crashes, selecting Create a pocket tool
Summary: Freecad crashes, selecting Create a pocket tool
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 6
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA6-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2018-04-01 17:10 CEST by papoteur
Modified: 2018-04-22 21:59 CEST (History)
6 users (show)

See Also:
Source RPM: freecad-0.16
CVE:
Status comment:


Attachments
Tuto model (6.92 KB, application/x-extension-fcstd)
2018-04-01 17:11 CEST, papoteur
Details

Description papoteur 2018-04-01 17:10:09 CEST
Description of problem:
After quitting Sketch edition, selecting the tool "Create a pocket..." ends with a crash:

*** Abort *** an exception was raised, but no catch was found.
        ... The exception is:SIGSEGV 'segmentation violation' detected. Address 0

Version-Release number of selected component (if applicable): 
freecad-0.16-2.mga6

My video card is Intel one.

How reproducible:
Open the attached file
Select Sketch001
Alter a value like Constraint10 (width of the rectangle shape) from 5 to 6.
Select mode "Part Design"
Select the icon for "Create a pocket". 
Get the crash.
Comment 1 papoteur 2018-04-01 17:11:43 CEST
Created attachment 10073 [details]
Tuto model

The model used as test case
Comment 2 Marja Van Waes 2018-04-03 12:23:59 CEST
Assigning to the registered maintainer.

@ Yann

I'm not sure I've seen you recently. I hope you're fine!
Please assign back to BugSquad if you don't have time to fix bugs.

CC: (none) => marja11
Assignee: bugsquad => yann.cantin

Comment 3 Marja Van Waes 2018-04-03 22:31:34 CEST
Reassigning to all packagers collectively, because ycantin is no longer available.

CC'ing two committers.

CC: (none) => geiger.david68210, zen25000
Assignee: yann.cantin => pkg-bugs

Barry Jackson 2018-04-03 22:52:00 CEST

CC: zen25000 => (none)

Stig-Ørjan Smelror 2018-04-13 18:18:39 CEST

CC: (none) => smelror
Assignee: pkg-bugs => smelror

Comment 4 Stig-Ørjan Smelror 2018-04-13 18:21:19 CEST
Advisory
========

FreeCAD has been updated to fix a crash during certain operations.

References
==========
https://bugs.mageia.org/show_bug.cgi?id=22858

Files
=====

Uploaded to core/updates_testing

freecad-0.16.6712-1.mga6
freecad-data-0.16.6712-1.mga6

from freecad-0.16.6712-1.mga6.src.rpm

Assignee: smelror => qa-bugs

Comment 5 papoteur 2018-04-14 11:24:18 CEST
Thanks kekePower.
However I get he same crash with this release. :(
I presume that some library is implied.
Comment 6 David GEIGER 2018-04-14 11:47:07 CEST
And what about report this issue upstream?
Comment 7 Len Lawrence 2018-04-14 20:46:13 CEST
Mageia 6, x86_64

Unfamiliar with this application.

Before the updates the tutorial file was opened in freecad and the instructions followed as far as "Create a pocket".  Clicking on that had no effect on anything.  Tried saving file.

A directory listing with the application open yielded this:
-rw-r--r--   1 lcl lcl       7506 Apr 14 19:28 Tuto.fcstd
-rw-r--r--   1 lcl lcl       7090 Apr 14 19:09 Tuto.fcstd1

It appears that Tuto.fcstd1 is a backup of the original file.
freecad closed down without incident.
$ unzip Tuto.fcstd
Archive:  Tuto.fcstd
FreeCAD Document
  inflating: Document.xml            
  inflating: PartShape.brp           
  inflating: PartShape1.brp          
  inflating: PartShape2.brp          
  inflating: PartShape3.brp          
  inflating: GuiDocument.xml         
  inflating: DiffuseColor            
  inflating: DiffuseColor1           
  inflating: DiffuseColor2           

All except the color files are ASCII text.

CC: (none) => tarazed25

Comment 8 Len Lawrence 2018-04-14 21:06:00 CEST
Re comment 7, for information only.
Running diff against pairs of corresponding brp files shows major changes in PartShape3.  The others differ in measurements around the 17th decimal place, which could be ascribed to precision differences between this and the original machine, so are effectively identical.  It looks like PartShape3 is the one affected by the Constraint10 change.
Comment 9 papoteur 2018-04-15 09:20:10 CEST
I tried to get a trace of the crash:
[New Thread 0x7fffd69e8700 (LWP 10587)]
[New Thread 0x7fff960e5700 (LWP 10588)]
[New Thread 0x7fff9521a700 (LWP 10589)]
[New Thread 0x7fff8ffff700 (LWP 10590)]
[New Thread 0x7fff8f7fe700 (LWP 10591)]
[New Thread 0x7fff8effd700 (LWP 10592)]
[Thread 0x7fff8f7fe700 (LWP 10591) exited]
[Thread 0x7fff8effd700 (LWP 10592) exited]
[New Thread 0x7fff8effd700 (LWP 10724)]
[New Thread 0x7fff8f7fe700 (LWP 10725)]
[Thread 0x7fff8effd700 (LWP 10724) exited]
[Thread 0x7fff8f7fe700 (LWP 10725) exited]

Thread 1 "FreeCAD" received signal SIGSEGV, Segmentation fault.
BOPAlgo_PaveFiller::MakeSplitEdges (this=this@entry=0x283dd00)
    at /usr/src/debug/oce-OCE-0.15/src/BOPAlgo/BOPAlgo_PaveFiller_7.cxx:112
112           bCB=!aCB.IsNull();

(gdb) bt
#0  0x00007fff785aacc4 in BOPAlgo_PaveFiller::MakeSplitEdges() (this=this@entry=0x283dd00)
    at /usr/src/debug/oce-OCE-0.15/src/BOPAlgo/BOPAlgo_PaveFiller_7.cxx:112
#1  0x00007fff7854e525 in BOPAlgo_PaveFiller::Perform() (this=0x283dd00)
    at /usr/src/debug/oce-OCE-0.15/src/BOPAlgo/BOPAlgo_PaveFiller.cxx:191
#2  0x00007fff785099b1 in BRepAlgoAPI_BooleanOperation::Build() (this=this@entry=0x7fffffffb230)
    at /usr/src/debug/oce-OCE-0.15/src/BRepAlgoAPI/BRepAlgoAPI_BooleanOperation.cxx:254
#3  0x00007fff78503c89 in BRepAlgoAPI_Cut::BRepAlgoAPI_Cut(TopoDS_Shape const&, TopoDS_Shape const&) (this=0x7fffffffb230, S1=..., S2=...)
    at /usr/src/debug/oce-OCE-0.15/src/BRepAlgoAPI/BRepAlgoAPI_Cut.cxx:31
#4  0x00007fff753509c7 in PartDesign::Pocket::execute() (this=0x27154c0)
    at /usr/src/debug/FreeCAD-0.16/src/Mod/PartDesign/App/FeaturePocket.cpp:174
#5  0x00007ffff6e3e6ca in App::DocumentObject::recompute() (this=0x27154c0)
    at /usr/src/debug/FreeCAD-0.16/src/App/DocumentObject.cpp:90
#6  0x00007fff8ceec53f in Part::Feature::recompute() (this=<optimized out>)
    at /usr/src/debug/FreeCAD-0.16/src/Mod/Part/App/PartFeature.cpp:82
#7  0x00007ffff6e10f3c in App::Document::_recomputeFeature(App::DocumentObject*) (this=this@entry=0x1664a10, Feat=Feat@entry=0x27154c0)
    at /usr/src/debug/FreeCAD-0.16/src/App/Document.cpp:1855
#8  0x00007ffff6e176a8 in App::Document::recompute() (this=0x1664a10)
    at /usr/src/debug/FreeCAD-0.16/src/App/Document.cpp:1809

Thus the crash occurs in OpenCascade.

Assignee: qa-bugs => smelror

Comment 10 David GEIGER 2018-04-15 09:48:00 CEST
We have opencascade package in Mageia but I see that others distro uses OCE instead, I don't know if it comes from.

Can someone test freecad in Cauldron? there is a new version of opencascade
Comment 11 papoteur 2018-04-15 12:26:49 CEST
It works in Cauldron.
Comment 12 Len Lawrence 2018-04-15 16:45:56 CEST
Continuing from comment 7.
Ran the test again and discovered that the set of icons including 'create a pocket' were actually greyed out which explained why nothing happened.  Selecting 'leave a sketch' activated that set of icons and clicking on 'create a pocket' caused an immediate crash.

After updating freecad the same procedure also caused a crash.
Comment 13 Morgan Leijström 2018-04-16 14:01:06 CEST
WORKAROUND to get your work done: users can install FreeCAD as Appimage, so you can have 0.17 version - do that work for you?
https://forums.mageia.org/en/viewtopic.php?f=7&t=12200
https://wiki.mageia.org/en/Ways_to_install_programs#Appimage

CC: (none) => fri

Comment 14 papoteur 2018-04-16 15:36:49 CEST
@Morgan
I know that freecad is working as Appimage. However, the goal is to have a working application in Mageia repos.
I hope this is on the good way by updating opencascade.
Comment 15 Morgan Leijström 2018-04-16 15:49:07 CEST
Absolutely, it should work in Mageia :)
I just wanted to help any user reading this having the same problem, as they might not be able to wait.
Comment 16 papoteur 2018-04-16 21:36:34 CEST
Installing from updates_testing:
freecad-0.16.6712-1.1.mga6
opencascade-6.9.1.0.18.3-1.mga6
smesh-6.7.5-1.mga6

Opening freecad and applying the procedure of comment 0.
Don't get the crash !

Thanks David
Comment 17 David GEIGER 2018-04-18 07:51:06 CEST
Assigning to QA,


Advisory:
=============================

Some users reported that our current freecad package doesn't work correctly, after quitting Sketch edition, selecting the tool "Create a pocket..." ends with a crash: 

*** Abort *** an exception was raised, but no catch was found.
       ... The exception is:SIGSEGV 'segmentation violation' detected. Address 0

This crash come from our opencascade package who is not compatible with freecad.
So this update fixes this issue.

=============================


Packages in 6/core/updates_testing:
========================
opencascade-6.9.1.0.18.3-1.mga6.i586.rpm
libopencascade11-6.9.1.0.18.3-1.mga6.i586.rpm
libopencascade-devel-6.9.1.0.18.3-1.mga6.i586.rpm
opencascade-6.9.1.0.18.3-1.mga6.x86_64.rpm
lib64opencascade11-6.9.1.0.18.3-1.mga6.x86_64.rpm
lib64opencascade-devel-6.9.1.0.18.3-1.mga6.x86_64.rpm

libsmesh3-6.7.5-1.mga6.i586.rpm
libsmesh-devel-6.7.5-1.mga6.i586.rpm
lib64smesh3-6.7.5-1.mga6.x86_64.rpm
lib64smesh-devel-6.7.5-1.mga6.x86_64.rpm

freecad-0.16.6712-1.1.mga6.i586.rpm
freecad-data-0.16.6712-1.1.mga6.noarch.rpm

freecad-0.16.6712-1.1.mga6.x86_64.rpm

Source RPM: 
========================
opencascade-6.9.1.0.18.3-1.mga6.src.rpm
smesh-6.7.5-1.mga6.src.rpm
freecad-0.16.6712-1.1.mga6.src.rpm

Assignee: smelror => qa-bugs

Comment 18 Len Lawrence 2018-04-18 18:23:01 CEST
Mageia 6, x86_64

Confirmed the crash in the core release version and updated the packages.

- freecad-0.16.6712-1.1.mga6.x86_64
- freecad-data-0.16.6712-1.1.mga6.noarch
- lib64opencascade-devel-6.9.1.0.18.3-1.mga6.x86_64
- lib64opencascade11-6.9.1.0.18.3-1.mga6.x86_64
- lib64smesh-devel-6.7.5-1.mga6.x86_64
- lib64smesh3-6.7.5-1.mga6.x86_64
- opencascade-6.9.1.0.18.3-1.mga6.x86_64

Launched freecad from the Graphics menu and opened Tuto.fscd.  Followed the instructions no crash after leaving the sketch and creating a pocket.

Blundered about the interface and failed to do any damage.

This looks OK as far as this simple test goes.

Whiteboard: (none) => MGA6-64-OK

Len Lawrence 2018-04-22 00:45:35 CEST

Keywords: (none) => validated_update
CC: (none) => sysadmin-bugs

Lewis Smith 2018-04-22 20:54:49 CEST

Keywords: (none) => advisory

Comment 19 Mageia Robot 2018-04-22 21:59:54 CEST
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGAA-2018-0063.html

Resolution: (none) => FIXED
Status: NEW => RESOLVED


Note You need to log in before you can comment on or make changes to this bug.