Исправление:
Код:
IF (hist = "") & (loc = NIL) THEN
IF name = "" THEN
Short(Files.dir.This("")(HostFiles.Locator).path + sepChar + " ", ss1)
ELSE
Short(Files.dir.This("")(HostFiles.Locator).path + sepChar + name, ss1)
END;
Gtk.gtk_file_chooser_set_filename(fs, ss1)
ELSIF loc # NIL THEN
Short(loc(HostFiles.Locator).path + sepChar + name, ss1);
Gtk.gtk_file_chooser_set_filename(fs, ss1)
ELSIF hist # "" THEN
Short(hist + sepChar + name, ss1);
Gtk.gtk_file_chooser_set_filename(fs, ss1)
END;
на
Код:
VAR root: Files.Locator;
…
IF (loc # NIL) & (loc IS HostFiles.Locator) THEN
locName := loc(HostFiles.Locator).path
ELSIF hist # "" THEN
locName := hist
ELSE
root := Files.dir.This("");
IF root IS HostFiles.Locator THEN
locName := root(HostFiles.Locator).path
ELSE
locName := ""
END
END;
IF locName # "" THEN
Short(locName + sepChar + name, ss1)
ELSE
Short(name, ss1)
END;
Gtk.gtk_file_chooser_set_filename(fs, ss1);