From 5844b956be2a86b1312074dbc8226b15e3f90fb6 Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Tue, 1 Dec 2015 20:53:29 +0100 Subject: [PATCH] Bugfix: prevent crash when setting a Choice field to a non-indexed value --- lib/Slic3r/GUI/OptionsGroup/Field.pm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/Slic3r/GUI/OptionsGroup/Field.pm b/lib/Slic3r/GUI/OptionsGroup/Field.pm index ae6660067..f7c3a930a 100644 --- a/lib/Slic3r/GUI/OptionsGroup/Field.pm +++ b/lib/Slic3r/GUI/OptionsGroup/Field.pm @@ -239,8 +239,13 @@ sub set_value { $self->disable_change_event(1); + my $idx; if ($self->option->values) { - my $idx = first { $self->option->values->[$_] eq $value } 0..$#{$self->option->values}; + $idx = first { $self->option->values->[$_] eq $value } 0..$#{$self->option->values}; + # if value is not among indexes values we use SetValue() + } + + if (defined $idx) { $self->wxWindow->SetSelection($idx); } else { $self->wxWindow->SetValue($value);