View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0033187 | Open CASCADE | OCCT:Modeling Algorithms | public | 2022-10-31 14:19 | 2024-09-14 22:08 |
Reporter | Assigned To | ||||
Priority | normal | Severity | crash | ||
Status | verified | Resolution | fixed | ||
Product Version | 7.7.0 | ||||
Target Version | 7.7.1 | ||||
Summary | 0033187: Modeling Algorithms - Crash in postprocessing of imported shape | ||||
Description | File Office.x_t from issue 0030459 can't be imported with enabled shape healing, exception arrises. Problem is in GeomAdaptor_Curve::NbIntervals and GeomAdaptor_Curve::Intervals functions. First of them calculates number of intervals, then array is created and second of them fills the array. The number of intervals (array size) is less than need for filling. Desynchronization of function behavior. Small part of initial file were localized to "brep" for test purposes. | ||||
Steps To Reproduce | pload MODELING restore [locate_data bug33187.brep] s fixshape r s | ||||
Tags | No tags attached. | ||||
Test case number | |||||
|
|
|
Branch CR33187 has been created by atereshi. SHA-1: cd9a3877f2feadbf9d6cf7c28146548d2731462b Detailed log of new commits: Author: atereshi Date: Wed Oct 26 16:59:54 2022 +0300 0033187: Modeling Algorithms - Crash in postprocessing of imported shape Problem: Desynchronization of behaviors of GeomAdaptor_Curve::NbIntervals and GeomAdaptor_Curve::Intervals functions. First calculates number of intervals, then array is created and second fills the array. In some cases the size of array is less than need for filling. Change: 1. Added function BSplCLib::Intervals that calculates number of interval and fills the array with its (if needed). 2. Simplified the algorithm of intervals calculation. 3. GeomAdaptor_Curve::NbIntervals/Intervals and Geom2dAdaptor_Curve::NbIntervals/Intervals use BSplCLib::Intervals. 4. Test for problem shape was created: bugs modalg_8 bug33187. Result: The new approach eliminates the problem of writing outside the array bounds. |
|
|
|
bug33187.brep (702,632 bytes) |
|
Branch CR33187 has been updated forcibly by atereshi. SHA-1: c7348a817e4646bb144ff11e781b8b713aad8eb5 |
|
Results for offset curve, based on attached bspline curve bc seem to be wrong: OCC29745 bc 2 -1 9 NbIntervals: 5; -1 1 3.0943951023932001 5.1887902047863896 7.2831853071795898 9 offset obc bc 1 0 0 1 OCC29745 obc 1 -1 9 NbIntervals: 4; -1 1 3.0943951023932001 5.1887902047863896 9 Intervals C1 for offset curve and C2 for base curve must be the same. This problem exists for current master too. |
|
bc (238 bytes) |
|
Branch CR33187 has been updated by atereshi. SHA-1: 811b74e94367d7d44d1ea0224adda1fe0e79b902 Detailed log of new commits: Author: atereshi Date: Tue Nov 1 16:05:36 2022 +0300 # fix offset curve adaptor boundaries |
|
Issue with offset curve has been fixed.Draw[72]> pload QAcommands MODELING Draw[73]> restore [locate_data bc] bc bc Draw[74]> OCC29745 bc 2 -1 9 NbIntervals: 5; -1 1 3.0943951023932001 5.1887902047863896 7.2831853071795898 9 Draw[75]> offset obc bc 1 0 0 1 Draw[76]> OCC29745 obc 1 -1 9 NbIntervals: 5; -1 1 3.0943951023932001 5.1887902047863896 7.2831853071795898 9 All tests are passed. http://jenkins-test-occt.nnov.opencascade.com/view/CR33187-master-atereshi/view/COMPARE/ |
|
Dear |
|
Branch CR33187 has been updated forcibly by atereshi. SHA-1: fd4e12cfeae7d62531519f9315d40155656d938f |
|
Commits were squashed. Changes about offset curve were added to commit description. |
|
Branch CR33187 seems to be valid |
|
Branch CR33187 has been updated forcibly by atereshi. SHA-1: d625153e798b6041014ef42a410e05ef83324cdb |
|
Branch CR33187 has been updated forcibly by atereshi. SHA-1: 80ce7eeaa515834b3427e0bdad9191e01622047b |
|
Branch CR33187 has been deleted by dpasukhi. SHA-1: 80ce7eeaa515834b3427e0bdad9191e01622047b |
occt: master f9990707 2022-10-26 16:59:54
Committer: vglukhik Details Diff |
0033187: Modeling Algorithms - Crash in postprocessing of imported shape Problem: Desynchronization of behaviors of GeomAdaptor_Curve::NbIntervals and GeomAdaptor_Curve::Intervals functions. First calculates number of intervals, then array is created and second fills the array. In some cases the size of array is less than need for filling. Change: 1. Added function BSplCLib::Intervals that calculates number of interval and fills the array with its (if needed). 2. Simplified the algorithm of intervals calculation. 3. GeomAdaptor_Curve::NbIntervals/Intervals and Geom2dAdaptor_Curve::NbIntervals/Intervals use BSplCLib::Intervals. 4. When creating an adapter for the base curve, the boundaries of the adapter for the offset curve are applied. 5. Test for problem shape was created: bugs modalg_8 bug33187. Result: The new approach eliminates the problem of writing outside the array bounds. |
Affected Issues 0033187 |
|
mod - src/BSplCLib/BSplCLib.cxx | Diff File | ||
mod - src/BSplCLib/BSplCLib.hxx | Diff File | ||
mod - src/Geom2dAdaptor/Geom2dAdaptor_Curve.cxx | Diff File | ||
mod - src/GeomAdaptor/GeomAdaptor_Curve.cxx | Diff File | ||
add - tests/bugs/modalg_8/bug33187 | Diff File | ||
mod - tests/hlr/poly_hlr/A1 | Diff File | ||
mod - tests/hlr/poly_hlr/A2 | Diff File | ||
mod - tests/hlr/poly_hlr/A3 | Diff File | ||
mod - tests/hlr/poly_hlr/A4 | Diff File | ||
mod - tests/hlr/poly_hlr/A5 | Diff File | ||
mod - tests/hlr/poly_hlr/A6 | Diff File | ||
mod - tests/hlr/poly_hlr/A7 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2022-10-31 14:19 |
|
New Issue | |
2022-10-31 14:19 |
|
Assigned To | => atereshi |
2022-10-31 14:20 |
|
Note Added: 0111802 | |
2022-10-31 14:20 |
|
File Added: office_901.brep | |
2022-10-31 15:53 | git | Note Added: 0111804 | |
2022-10-31 15:54 |
|
File Deleted: office_901.brep | |
2022-10-31 15:55 |
|
Note Added: 0111805 | |
2022-10-31 15:55 |
|
File Added: 0033187.brep | |
2022-10-31 15:57 |
|
Description Updated | |
2022-10-31 15:57 |
|
Steps to Reproduce Updated | |
2022-10-31 15:59 |
|
Assigned To | atereshi => ifv |
2022-10-31 15:59 |
|
Status | new => resolved |
2022-10-31 16:08 |
|
File Deleted: 0033187.brep | |
2022-10-31 16:09 |
|
Note Added: 0111806 | |
2022-10-31 16:09 |
|
File Added: bug33187.brep | |
2022-10-31 16:10 | git | Note Added: 0111808 | |
2022-11-01 14:07 |
|
Assigned To | ifv => atereshi |
2022-11-01 14:07 |
|
Status | resolved => assigned |
2022-11-01 14:07 |
|
Note Added: 0111812 | |
2022-11-01 14:08 |
|
Note Added: 0111813 | |
2022-11-01 14:08 |
|
File Added: bc | |
2022-11-01 14:10 |
|
Note Edited: 0111812 | |
2022-11-01 14:14 |
|
Note Edited: 0111812 | |
2022-11-01 16:05 | git | Note Added: 0111817 | |
2022-11-02 10:21 |
|
Note Added: 0111830 | |
2022-11-02 10:24 |
|
Note Edited: 0111830 | |
2022-11-02 10:25 |
|
Assigned To | atereshi => ifv |
2022-11-02 10:25 |
|
Status | assigned => resolved |
2022-11-02 10:25 |
|
Steps to Reproduce Updated | |
2022-11-02 10:37 |
|
Assigned To | ifv => atereshi |
2022-11-02 10:37 |
|
Status | resolved => assigned |
2022-11-02 10:37 |
|
Note Added: 0111831 | |
2022-11-02 11:30 | git | Note Added: 0111836 | |
2022-11-02 11:36 |
|
Note Added: 0111837 | |
2022-11-02 11:36 |
|
Assigned To | atereshi => ifv |
2022-11-02 11:36 |
|
Status | assigned => resolved |
2022-11-02 12:21 |
|
Assigned To | ifv => bugmaster |
2022-11-02 12:21 |
|
Status | resolved => reviewed |
2022-11-02 12:21 |
|
Note Added: 0111839 | |
2022-11-02 16:46 | git | Note Added: 0111891 | |
2022-11-03 10:19 | git | Note Added: 0111897 | |
2022-12-04 13:29 |
|
Status | reviewed => tested |
2022-12-05 00:25 | vglukhik | Changeset attached | => occt master f9990707 |
2022-12-05 00:25 |
|
Assigned To | bugmaster => atereshi |
2022-12-05 00:25 |
|
Status | tested => verified |
2022-12-05 00:25 |
|
Resolution | open => fixed |
2023-03-02 13:31 | ebelouso | Target Version | 7.8.0 => 7.7.1 |
2023-03-07 14:19 | dpasukhi | Severity | minor => crash |
2024-09-14 22:08 | git | Note Added: 0116673 |