View Issue Details

IDProjectCategoryView StatusLast Update
0005336DarkRadiantMap Editingpublic27.09.2020 16:20
ReporterDragofer Assigned Togreebo  
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionfixed 
Product Version2.8.0 
Target Version2.9.0Fixed in Version2.9.0 
Summary0005336: Crash when using CSG Merge on brushes that are entities
DescriptionIf I attempt to merge 2 mergeable brushes with CSG Merge, but at least one of them is in a func_static, DR crashes.

The crash doesn't happen if the brushes aren't mergeable, i.e. they're not adjacent or their shapes aren't compatible.
Steps To Reproduce1) Draw a brush.
2) Duplicate the brush and move it next to the first brush, such that they can be merged.
3) Convert one of the brushes to func_static.
4) Select both brushes and click "CSG Merge". DR crashes.
TagsNo tags attached.

Activities

greebo

greebo

20.09.2020 08:47

administrator   ~0012783

Confirmed. But I had to select the non-entity brush first, and the func_static brush second to make it crash. Selecting the func_static first will not crash DR.

Related Changesets

DarkRadiant: camera_refactor 74258e75

2020-09-20 09:13:24

greebo

Details Diff
0005336: Mark a string in the CSG merge function as localisable Affected Issues
0005336
mod - radiantcore/brush/csg/CSG.cpp Diff File

DarkRadiant: camera_refactor 59ff5478

2020-09-20 10:40:26

greebo

Details Diff
0005336: Start setting up a unit test covering the CSG merge crash Affected Issues
0005336
add - test/CSG.cpp Diff File
mod - test/RadiantTest.h Diff File
mod - test/TestContext.h Diff File
add - test/resources/tdm/maps/csg_merge_with_func_static.map Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File

DarkRadiant: camera_refactor 8bbf3400

2020-09-20 14:40:49

greebo

Details Diff
0005336: Add HeadlessOpenGLContext module (Windows-only at the moment being).
This relies on new GLEW dependencies present in the windeps repository.
Affected Issues
0005336
mod - include/igl.h Diff File
add - test/HeadlessOpenGLContext.cpp Diff File
add - test/HeadlessOpenGLContext.h Diff File
mod - test/RadiantTest.h Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
mod - tools/msvc/post_build_event_x64.cmd Diff File

DarkRadiant: camera_refactor 8e63c9dd

2020-09-20 15:48:46

greebo

Details Diff
0005336: Move shader programs availability methods from OpenGLBinding interface to RenderSystem Affected Issues
0005336
mod - include/igl.h Diff File
mod - include/irender.h Diff File
mod - libs/wxutil/preview/RenderPreview.cpp Diff File
mod - radiant/camera/CamWnd.cpp Diff File
mod - radiant/render/OpenGLModule.cpp Diff File
mod - radiant/render/OpenGLModule.h Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.h Diff File
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp Diff File

DarkRadiant: camera_refactor da70add4

2020-09-20 17:48:53

greebo

Details Diff
0005336: Move ColourSchemeManager to core module. Define and extend colour interfaces in icolourscheme.h Affected Issues
0005336
add - include/icolourscheme.h Diff File
mod - include/iuimanager.h Diff File
mod - radiant/Makefile.am Diff File
mod - radiant/camera/CamWnd.cpp Diff File
mod - radiant/selection/SelectionMouseTools.cpp Diff File
mod - radiant/ui/EntityClassColourManager.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/layers/LayerControl.cpp Diff File
mod - radiant/ui/texturebrowser/TextureBrowser.cpp Diff File
mod - radiant/uimanager/UIManager.cpp Diff File
mod - radiant/uimanager/UIManager.h Diff File
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp Diff File
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.h Diff File
rm - radiant/uimanager/colourscheme/ColourSchemeManager.cpp Diff File
rm - radiant/uimanager/colourscheme/ColourSchemeManager.h Diff File
mod - radiant/xyview/XYWnd.cpp Diff File
mod - radiant/xyview/tools/MeasurementTool.cpp Diff File
mod - radiantcore/Makefile.am Diff File
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp Diff File
add - radiantcore/settings/ColourSchemeManager.cpp Diff File
add - radiantcore/settings/ColourSchemeManager.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj.filters Diff File
mod - tools/msvc/include.vcxproj Diff File

DarkRadiant: camera_refactor a88a9c9b

2020-09-20 18:31:36

greebo

Details Diff
0005336: Move assertNoGlErrors() method to debugging/gl.h header. On failure, the global error handler is invoked instead of directly opening an wxutil::Messagebox. Affected Issues
0005336
mod - include/igl.h Diff File
mod - libs/RGBAImage.h Diff File
add - libs/debugging/gl.h Diff File
mod - libs/wxutil/preview/GuiView.cpp Diff File
mod - plugins/dm.gui/gui/RenderableCharacterBatch.cpp Diff File
mod - radiant/camera/CamWnd.cpp Diff File
mod - radiant/render/OpenGLModule.cpp Diff File
mod - radiant/render/OpenGLModule.h Diff File
mod - radiant/ui/texturebrowser/TextureBrowser.cpp Diff File
mod - radiant/xyview/XYWnd.cpp Diff File
mod - radiantcore/imagefile/DDSImage.cpp Diff File
mod - radiantcore/rendersystem/backend/GLProgramFactory.cpp Diff File
mod - radiantcore/rendersystem/backend/OpenGLShaderPass.cpp Diff File
mod - radiantcore/rendersystem/backend/glprogram/ARBBumpProgram.cpp Diff File
mod - radiantcore/rendersystem/backend/glprogram/ARBDepthFillProgram.cpp Diff File
mod - radiantcore/rendersystem/backend/glprogram/GLSLBumpProgram.cpp Diff File
mod - radiantcore/rendersystem/backend/glprogram/GLSLDepthFillProgram.cpp Diff File
mod - radiantcore/shaders/CameraCubeMapDecl.cpp Diff File
mod - test/TestContext.h Diff File
mod - tools/msvc/libs.vcxproj Diff File
mod - tools/msvc/libs.vcxproj.filters Diff File

DarkRadiant: master 4e06dd6a

2020-09-27 08:33:28

greebo

Details Diff
0005336: Construct a unit test scenario to check whether the CSG merge algorithm joins brushes of different entities Affected Issues
0005336
mod - test/CSG.cpp Diff File
add - test/algorithm/Scene.h Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
add - tools/msvc/Tests/Tests.vcxproj.filters Diff File

DarkRadiant: master 62303e92

2020-09-27 12:39:07

greebo

Details Diff
0005336: Add two more unit tests covering CSG merge Affected Issues
0005336
mod - test/CSG.cpp Diff File
mod - test/algorithm/Scene.h Diff File
add - test/resources/tdm/maps/csg_merge.map Diff File
rm - test/test.cpp Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
mod - tools/msvc/Tests/Tests.vcxproj.filters Diff File

DarkRadiant: master dc1df259

2020-09-27 16:19:30

greebo

Details Diff
0005344 & 0005336: CSG Merge now only handles brushes sharing the same parent entity.
This also fixes the crash in 0005336.
Affected Issues
0005336, 0005344
mod - radiantcore/brush/csg/CSG.cpp Diff File

Issue History

Date Modified Username Field Change
10.09.2020 12:52 Dragofer New Issue
20.09.2020 08:47 greebo Status new => confirmed
20.09.2020 08:47 greebo Note Added: 0012783
20.09.2020 08:47 greebo Target Version => 2.9.0
21.09.2020 03:56 greebo Relationship added related to 0005338
21.09.2020 03:57 greebo Relationship deleted related to 0005338
25.09.2020 18:27 greebo Changeset attached => DarkRadiant camera_refactor 74258e75
25.09.2020 18:27 greebo Changeset attached => DarkRadiant camera_refactor 59ff5478
25.09.2020 18:27 greebo Changeset attached => DarkRadiant camera_refactor 8bbf3400
25.09.2020 18:27 greebo Changeset attached => DarkRadiant camera_refactor 8e63c9dd
25.09.2020 18:27 greebo Changeset attached => DarkRadiant camera_refactor da70add4
25.09.2020 18:27 greebo Changeset attached => DarkRadiant camera_refactor a88a9c9b
27.09.2020 16:19 greebo Changeset attached => DarkRadiant master 4e06dd6a
27.09.2020 16:19 greebo Changeset attached => DarkRadiant master 62303e92
27.09.2020 16:19 greebo Changeset attached => DarkRadiant master dc1df259
27.09.2020 16:20 greebo Assigned To => greebo
27.09.2020 16:20 greebo Status confirmed => assigned
27.09.2020 16:20 greebo Status assigned => resolved
27.09.2020 16:20 greebo Resolution open => fixed
27.09.2020 16:20 greebo Fixed in Version => 2.9.0