If R is killed with "kill -USR1 pid" it will terminate and save its workspace 
overwriting any exiting .RData-file even if R has been started with the 
--no-save option. Preferably R should always respect the --no-save option and 
this should thus be used to determine if the workspace is saved when receiving 
the USR1 signal.

The following change will adopt this behavior (based on R-2.12.2 source).

$RHOME/src/main/errors.c, line 147
-    R_CleanUp(SA_SAVE, 2, 1); /* quit, save,  .Last, status=2 */
+    R_CleanUp(SA_DEFAULT, 2, 1); /* quit, save,  .Last, status=2 */

$RHOME/src/main/errors.c, line 197
-    R_CleanUp(SA_NOSAVE, 0, 0);
+    R_CleanUp(SA_DEFAULT, 0, 0);

The documentation in $RHOME/src/library/base/man/unix/Signals.Rd should also be 
updated accordingly.

To my knowledge it is not possible to send a USR1/USR2 signal on windows so 
this issue is only relevant on POSIX compliant systems.

Best regards,
Stig B. Mortensen

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to