BUG DESCRIPTION:
----------------
If a macro (.sci) call is done as a callback from a uicontrol (Pushbutton in this case) the execution of the macro cannot be aborted in the standard way by pressing Ctrl+C and entering the abort command. Trying to do so will cause Scilab to hang.
The same behaviour is not observed when calling the same macro directly from the console.
ERROR LOG:
----------
HOW TO REPRODUCE THE BUG:
-------------------------
function [] = AbortTestGui()
fig = figure("dockable", "off", ..
"menubar", "none", ..
"toolbar", "none",..
"default_axes", "off");
uicontrol(fig,"style","pushbutton", "position",[10, 10, 100,25], "string", "Start", "Callback", "AbortTest();");
endfunction
function [] = AbortTest()
disp("Starting");
//Loop to interupt with Ctrl + C
for i = 1:1000000
sleep(100);
end
disp("Done");
endfunction
After doing exec on the above two functions:
1. -->AbortTestGui();
2. When GUI has loaded, press pushbutton "Start". (The callback property of this button is set to the command "AbortTest();")
3. Go to console, press Ctrl + C
4. At pause level 1, enter abort command.
5. Scilab hangs.
In contrast, try running the AbortTest function directly from console.
1. -->AbortTest();
2. Press Ctrl + C
3. At pause level 1, enter abort command.
4. Scilab does NOT hang.
OTHER INFORMATION:
------------------
!Memory in use: 38 % !
! !
!Total Physical Memory (Kbytes): 8272220 !
! !
!Free Physical Memory (Kbytes): 5054988 !
! !
!Total Paging File (Kbytes): 16542580 !
! !
!Free Paging File (Kbytes): 12123864 !
! !
!Total Virtual Memory (Kbytes): 8589934464 !
! !
!Free Virtual Memory (Kbytes): 8587394796 !
! !
!Free Extended Memory (Kbytes): 0 !
! !
!Operating System: Windows Seven x64 !
! !
!Intel(R) Core(TM) i5-3380M CPU @ 2.90GHz !
! !
!Number of processors: 4 !
! !
!Number of Video cards: 1 !
! !
!Video card #0: Intel(R) HD Graphics 4000 !
! !
!Primary Video card driver version: 8.15.10.2712