Browse Source

FLUID: Fixes generating default templates

pull/857/head
Matthias Melcher 2 years ago
parent
commit
ee0637688d
  1. 12
      fluid/fluid.cxx
  2. 4
      fluid/template_panel.cxx

12
fluid/fluid.cxx

@ -708,10 +708,10 @@ void save_template_cb(Fl_Widget *, void *) {
if (!c || !*c) return; if (!c || !*c) return;
// Convert template name to filename_with_underscores // Convert template name to filename_with_underscores
char safename[FL_PATH_MAX], *safeptr; char savename[FL_PATH_MAX], *saveptr;
strlcpy(safename, c, sizeof(safename)); strlcpy(savename, c, sizeof(savename));
for (safeptr = safename; *safeptr; safeptr ++) { for (saveptr = savename; *saveptr; saveptr ++) {
if (isspace(*safeptr)) *safeptr = '_'; if (isspace(*saveptr)) *saveptr = '_';
} }
// Find the templates directory... // Find the templates directory...
@ -719,10 +719,10 @@ void save_template_cb(Fl_Widget *, void *) {
fluid_prefs.getUserdataPath(filename, sizeof(filename)); fluid_prefs.getUserdataPath(filename, sizeof(filename));
strlcat(filename, "templates", sizeof(filename)); strlcat(filename, "templates", sizeof(filename));
if (fl_access(filename, 0)) fl_mkdir(filename, 0777); if (fl_access(filename, 0)) fl_make_path(filename);
strlcat(filename, "/", sizeof(filename)); strlcat(filename, "/", sizeof(filename));
strlcat(filename, safename, sizeof(filename)); strlcat(filename, savename, sizeof(filename));
char *ext = filename + strlen(filename); char *ext = filename + strlen(filename);
if (ext >= (filename + sizeof(filename) - 5)) { if (ext >= (filename + sizeof(filename) - 5)) {

4
fluid/template_panel.cxx

@ -216,12 +216,14 @@ void template_load() {
int num_files; int num_files;
fluid_prefs.getUserdataPath(path, sizeof(path)); fluid_prefs.getUserdataPath(path, sizeof(path));
if (path[0] == 0) return;
strlcat(path, "templates", sizeof(path)); strlcat(path, "templates", sizeof(path));
fl_make_path(path);
int sample_templates_generated = 0; int sample_templates_generated = 0;
fluid_prefs.get("sample_templates_generated", sample_templates_generated, 0); fluid_prefs.get("sample_templates_generated", sample_templates_generated, 0);
if (sample_templates_generated < 2) { if (sample_templates_generated < 2) {
strcpy(filename, path); strcpy(filename, path);
strcat(filename, "/FLTK_License.fl"); strcat(filename, "/FLTK_License.fl");
FILE *f = fopen(filename, "wb"); FILE *f = fopen(filename, "wb");

Loading…
Cancel
Save