if (imd->color_profile_input >= COLOR_PROFILE_FILE &&
imd->color_profile_input < COLOR_PROFILE_FILE + COLOR_PROFILE_INPUTS)
{
- gint n;
-
- n = imd->color_profile_input - COLOR_PROFILE_FILE;
- if (!options->color_profile.input_file[n] || !options->color_profile.input_file[n][0]) return FALSE;
+ const gchar *file = options->color_profile.input_file[imd->color_profile_input - COLOR_PROFILE_FILE];
+
+ if (!access_file(file, R_OK)) return FALSE;
input_type = COLOR_PROFILE_FILE;
- input_file = options->color_profile.input_file[n];
+ input_file = file;
}
else if (imd->color_profile_input >= COLOR_PROFILE_SRGB &&
imd->color_profile_input < COLOR_PROFILE_FILE)
}
if (imd->color_profile_screen == 1 &&
- options->color_profile.screen_file &&
- options->color_profile.screen_file[0])
+ access_file(options->color_profile.screen_file, R_OK))
{
screen_type = COLOR_PROFILE_FILE;
screen_file = options->color_profile.screen_file;
G_CALLBACK(layout_color_menu_input_cb), lw);
g_free(buf);
g_object_set_data(G_OBJECT(item), COLOR_MENU_KEY, GINT_TO_POINTER(i + COLOR_PROFILE_FILE));
- gtk_widget_set_sensitive(item, active && !from_image && file && file[0] && access_file(file, R_OK));
+ gtk_widget_set_sensitive(item, active && !from_image && access_file(file, R_OK));
}
menu_item_add_divider(menu);
_("_Screen profile"), (screen == 1),
G_CALLBACK(layout_color_menu_screen_cb), lw);
g_object_set_data(G_OBJECT(item), COLOR_MENU_KEY, GINT_TO_POINTER(1));
- gtk_widget_set_sensitive(item, active && options->color_profile.screen_file && options->color_profile.screen_file[0]);
+ gtk_widget_set_sensitive(item, active && access_file(options->color_profile.screen_file, R_OK));
gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0, GDK_CURRENT_TIME);
#endif /* HAVE_LCMS */