Actually I take it back slightly, when I first go to visit a file that xretrace hasn't seen before, it tries to create a new file in the xretrace-data sub-folder - so right now I can visit alias.e without slick crashing but as soon as I open ada.e from the same folder, slick crashes because it tries to create a new file using _open_temp_view using "create if not found" set true, followed immediately by a call to _save_config_file. Create file (in xretrace_data) is succeeding so... It must be the call to _save_config_file is crashing because it can't even read the SlickBackups sub-folder, let alone write to it.
static void create_new_file_k(_str fn)
{
int new_wid, orig_wid;
boolean was;
if (_open_temp_view(_maybe_quote_filename(fn), new_wid, orig_wid, '', was, true, false, 0, true) == 0)
{
insert_line('xretrace rev 001');
// we insert the full path and name of the file even though this might not match at some point
// in the future if the project source folders are copied to another location.
// if XRETRACE_USE_SUBFOLDER is defined then the project source can be copied to a different location
// and the xretrace marker data gets copied with it and is usable.
// if XRETRACE_USE_SUBFOLDER is not defined then all xretrace marker data files are stored in
// one single folder and the marker data files are valid only if the project source files
// remain in their original location
insert_line(retrace_current_buf_name);
files_active_since_startup:[retrace_current_buf_name] = fn;
say("save config 1");
_save_config_file();
_delete_temp_view(new_wid);
activate_window(orig_wid);
}
}