MATLAB R2024a+ Crashing After Figure Closure

20 visualizzazioni (ultimi 30 giorni)
I've encountered a strange issue with MATLAB R2024a/b: the software crashes unexpectedly after closing a figure.

Risposta accettata

Gavriel Aminov
Gavriel Aminov il 3 Dic 2024
The question was initiated by me myself for the answer on it, to help people in problem like I met.
Problem: MATLAB Crashing After Figure Closure
I've encountered a strange issue with MATLAB R2024a/b: the software crashes unexpectedly after closing a figure. This seems to be related to a custom DeleteFcn I've implemented for a line object within the figure.
When the figure is closed, MATLAB appears to call the DeleteFcn of the line object after the figure itself has been deleted. This leads to a crash as the DeleteFcn attempts to access the figure's axes handle, which no longer exists.
Solution:
To prevent this, we can add a check at the beginning of the DeleteFcn to determine the caller. If the caller is the figure closure process, the DeleteFcn can simply return without executing any further actions. Actually, any caller that is not empty must be treated the same way.
Code Example:
function DeleteLine(varargin) % DeleteFcn of line
% The gate
caller=dbstack(1);
if ~isempty(caller) % if strcmp(caller.name,'closereq')
return
end
% The body of DeleteFcn
ha=gca;
...
  2 Commenti
Steven Lord
Steven Lord il 3 Dic 2024
If MATLAB crashes (sometimes people say "MATLAB crashed" when they really observed MATLAB throwing an error) and you haven't already sent the crash report to Technical Support, please do so. That should help the development staff determine the root cause of the crash and fix the crash. Thanks.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Startup and Shutdown in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by