diff --git a/libinterp/corefcn/graphics.cc b/libinterp/corefcn/graphics.cc --- a/libinterp/corefcn/graphics.cc +++ b/libinterp/corefcn/graphics.cc @@ -10047,9 +10047,15 @@ each individual object will be reset. // get vector of graphics handles ColumnVector hcv = args(0).xvector_value ("reset: H must be a graphics handle"); - // loop over graphics objects - for (octave_idx_type n = 0; n < hcv.numel (); n++) - gh_manager::get_object (hcv(n)).reset_default_properties (); + octave_idx_type nel = hcv.numel (); + + if (nel > 0) + { + gh_manager::auto_lock guard; + + for (octave_idx_type n = 0; n < hcv.numel (); n++) + gh_manager::get_object (hcv(n)).reset_default_properties (); + } Fdrawnow ();