mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-11 00:37:51 -06:00
Attempt to fix rambling crash on Mac Asan
This commit is contained in:
parent
2904ee6e1a
commit
96db6aaadb
2 changed files with 4 additions and 9 deletions
|
@ -771,16 +771,10 @@ void GCodeViewer::render_toolpaths() const
|
||||||
const std::array<int, 4>& viewport = camera.get_viewport();
|
const std::array<int, 4>& viewport = camera.get_viewport();
|
||||||
std::array<int, 2> viewport_sizes = { viewport[2], viewport[3] };
|
std::array<int, 2> viewport_sizes = { viewport[2], viewport[3] };
|
||||||
const std::pair<double, double>& camera_z_range = camera.get_z_range();
|
const std::pair<double, double>& camera_z_range = camera.get_z_range();
|
||||||
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
||||||
// std::array<float, 2> z_range = { static_cast<float>(camera_z_range.first), static_cast<float>(camera_z_range.second) };
|
|
||||||
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
||||||
|
|
||||||
Transform3d inv_proj = camera.get_projection_matrix().inverse();
|
Transform3d inv_proj = camera.get_projection_matrix().inverse();
|
||||||
|
|
||||||
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
||||||
auto render_options = [this, is_glsl_120, zoom, viewport, inv_proj, viewport_sizes, point_sizes](const IBuffer& buffer, EOptionsColors colors_id, GLShaderProgram& shader) {
|
auto render_options = [this, is_glsl_120, zoom, viewport, inv_proj, viewport_sizes, point_sizes](const IBuffer& buffer, EOptionsColors colors_id, GLShaderProgram& shader) {
|
||||||
// auto render_options = [this, is_glsl_120, zoom, viewport, inv_proj, viewport_sizes, z_range, point_sizes](const IBuffer& buffer, EOptionsColors colors_id, GLShaderProgram& shader) {
|
|
||||||
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
||||||
shader.set_uniform("uniform_color", Options_Colors[static_cast<unsigned int>(colors_id)]);
|
shader.set_uniform("uniform_color", Options_Colors[static_cast<unsigned int>(colors_id)]);
|
||||||
#if ENABLE_GCODE_VIEWER_SHADERS_EDITOR
|
#if ENABLE_GCODE_VIEWER_SHADERS_EDITOR
|
||||||
shader.set_uniform("zoom", m_shaders_editor.size_dependent_on_zoom ? zoom : 1.0f);
|
shader.set_uniform("zoom", m_shaders_editor.size_dependent_on_zoom ? zoom : 1.0f);
|
||||||
|
@ -793,9 +787,6 @@ void GCodeViewer::render_toolpaths() const
|
||||||
#endif // ENABLE_GCODE_VIEWER_SHADERS_EDITOR
|
#endif // ENABLE_GCODE_VIEWER_SHADERS_EDITOR
|
||||||
shader.set_uniform("viewport_sizes", viewport_sizes);
|
shader.set_uniform("viewport_sizes", viewport_sizes);
|
||||||
shader.set_uniform("inv_proj_matrix", inv_proj);
|
shader.set_uniform("inv_proj_matrix", inv_proj);
|
||||||
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
||||||
// shader.set_uniform("z_range", z_range);
|
|
||||||
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
||||||
shader.set_uniform("point_sizes", point_sizes);
|
shader.set_uniform("point_sizes", point_sizes);
|
||||||
glsafe(::glEnable(GL_VERTEX_PROGRAM_POINT_SIZE));
|
glsafe(::glEnable(GL_VERTEX_PROGRAM_POINT_SIZE));
|
||||||
if (is_glsl_120)
|
if (is_glsl_120)
|
||||||
|
|
|
@ -1144,6 +1144,10 @@ void Preview::update_layers_slider_from_canvas(wxKeyEvent& event)
|
||||||
void Preview::update_moves_slider()
|
void Preview::update_moves_slider()
|
||||||
{
|
{
|
||||||
const GCodeViewer::SequentialView& view = m_canvas->get_gcode_sequential_view();
|
const GCodeViewer::SequentialView& view = m_canvas->get_gcode_sequential_view();
|
||||||
|
// this should not be needed, but it is here to try to prevent rambling crashes on Mac Asan
|
||||||
|
if (view.endpoints.last < view.endpoints.first)
|
||||||
|
return;
|
||||||
|
|
||||||
std::vector<double> values(view.endpoints.last - view.endpoints.first + 1);
|
std::vector<double> values(view.endpoints.last - view.endpoints.first + 1);
|
||||||
unsigned int count = 0;
|
unsigned int count = 0;
|
||||||
for (unsigned int i = view.endpoints.first; i <= view.endpoints.last; ++i)
|
for (unsigned int i = view.endpoints.first; i <= view.endpoints.last; ++i)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue