#### 14.1.3.1 Saving Data on Unexpected Exits

If Octave for some reason exits unexpectedly it will by default save the variables available in the workspace to a file in the current directory. By default this file is named ‘`octave-workspace`’ and can be loaded into memory with the `load` command. While the default behavior most often is reasonable it can be changed through the following functions.

Built-in Function: val = crash_dumps_octave_core ()
Built-in Function: old_val = crash_dumps_octave_core (new_val)
Built-in Function: crash_dumps_octave_core (new_val, "local")

  Query or set the internal variable that controls whether Octave tries to save all current variables to the file `octave-workspace` if it crashes or receives a hangup, terminate or similar signal.

  When called from inside a function with the `"local"` option, the variable is changed locally for the function and any subroutines it calls. The original variable value is restored when exiting the function.

  See also: octave_core_file_limit, octave_core_file_name, octave_core_file_options.

Built-in Function: val = sighup_dumps_octave_core ()
Built-in Function: old_val = sighup_dumps_octave_core (new_val)
Built-in Function: sighup_dumps_octave_core (new_val, "local")

  Query or set the internal variable that controls whether Octave tries to save all current variables to the file `octave-workspace` if it receives a hangup signal.

  When called from inside a function with the `"local"` option, the variable is changed locally for the function and any subroutines it calls. The original variable value is restored when exiting the function.

Built-in Function: val = sigterm_dumps_octave_core ()
Built-in Function: old_val = sigterm_dumps_octave_core (new_val)
Built-in Function: sigterm_dumps_octave_core (new_val, "local")

  Query or set the internal variable that controls whether Octave tries to save all current variables to the file `octave-workspace` if it receives a terminate signal.

  When called from inside a function with the `"local"` option, the variable is changed locally for the function and any subroutines it calls. The original variable value is restored when exiting the function.

Built-in Function: val = octave_core_file_options ()
Built-in Function: old_val = octave_core_file_options (new_val)
Built-in Function: octave_core_file_options (new_val, "local")

  Query or set the internal variable that specifies the options used for saving the workspace data if Octave aborts. The value of `octave_core_file_options` should follow the same format as the options for the `save` function. The default value is Octave’s binary format.

  When called from inside a function with the `"local"` option, the variable is changed locally for the function and any subroutines it calls. The original variable value is restored when exiting the function.

  See also: crash_dumps_octave_core, octave_core_file_name, octave_core_file_limit.

Built-in Function: val = octave_core_file_limit ()
Built-in Function: old_val = octave_core_file_limit (new_val)
Built-in Function: octave_core_file_limit (new_val, "local")

  Query or set the internal variable that specifies the maximum amount of memory (in kilobytes) of the top-level workspace that Octave will attempt to save when writing data to the crash dump file (the name of the file is specified by octave_core_file_name). If octave_core_file_options flags specify a binary format, then octave_core_file_limit will be approximately the maximum size of the file. If a text file format is used, then the file could be much larger than the limit. The default value is -1 (unlimited)

  When called from inside a function with the `"local"` option, the variable is changed locally for the function and any subroutines it calls. The original variable value is restored when exiting the function.

  See also: crash_dumps_octave_core, octave_core_file_name, octave_core_file_options.

Built-in Function: val = octave_core_file_name ()
Built-in Function: old_val = octave_core_file_name (new_val)
Built-in Function: octave_core_file_name (new_val, "local")

  Query or set the internal variable that specifies the name of the file used for saving data from the top-level workspace if Octave aborts. The default value is `"octave-workspace"`

  When called from inside a function with the `"local"` option, the variable is changed locally for the function and any subroutines it calls. The original variable value is restored when exiting the function.

  See also: crash_dumps_octave_core, octave_core_file_name, octave_core_file_options.