Sketcher: Text object and Pocket THROUGH ALL sometimes cause crash
- Dominant language
- C++
- Stars
- 33.6k
- Forks
- 6k
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 196
Description
### Problem description
When trying to pocket THROUGH ALL , sometimes FreeCAD abruptly dies.
It seems to be tied to the actual text. For instance if I put WF5W in the text and pocket through all, everything is fine. But if I just leave it as Text, the same pocket causes FC to die.
I suspect it has to do with characters that would create a hole.
FreeCAD coming with an actual stencil font would handle this, but FC should not just die.
There should be an error. but FC should keep going.
Great product so far. Keep up the great work!
### Workbench affected?
Sketcher
### Steps to reproduce
Steps to reproduce:
1. open FC
2. create a sketch with center rectangle
3. pad the sketch
4. create sketch on face
5. create text - with WF5W
6. pocket Through All of the sketch.
7. No problem
Same scenario but
Change the text to "Text"
FreeCAD dies.
### Expected behavior
FreeCAD should produce an error, and the feature should be an error, that cannot be fixed.
FreeCAD should not just abruptly abort.
### Actual behavior
FreeCAD just dies.
### Development version About Info (in Safe Mode)
```shell
OS: Linux Mint 22.3 (X-Cinnamon/cinnamon/xcb)
Architecture: x86_64
Version: 1.2.0dev.20260318 (Git shallow) AppImage
Build date: 2026/03/18 23:42:42
Build type: Release
Branch: grafted,grafted
Hash: 7886ebae105b99f176cddbfc62a106ab06a6d021
Python 3.11.14, Qt 6.8.3, Coin 4.0.3, Vtk 9.3.1, boost 1_86, Eigen3 3.4.0, PySide 6.8.3
shiboken 6.8.3, xerces-c 3.3.0, IfcOpenShell 0.8.2, OCC 7.8.1
Locale: English/United States (en_US)
Navigation Style/Orbit Style/Rotation Mode: Gesture/Trackball/Drag at cursor
Stylesheet/Theme/QtStyle: FreeCAD.qss/FreeCAD Light/
Logical DPI/Physical DPI/Pixel Ratio: 96/175.564/1.19792
```
### Last known good version (optional)
```shell
```
Contributor guide
Research direction
Reproduce the crash in the Sketcher workbench by creating the described pad, text sketch, and THROUGH ALL pocket, comparing "Text" with "WF5W". Start by tracing the pocket operation's handling of text geometry and invalid hole-producing characters; done means the case reports an error and leaves FreeCAD running instead of aborting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- design
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100