gimp/app/plug-in
Michael Natterer b6f9bf5d57 Added mechanism that should prevent undo corruption by broken plug-ins and
2006-10-25  Michael Natterer  <mitch@gimp.org>

	Added mechanism that should prevent undo corruption by
	broken plug-ins and scripts. Work in progress.

	* app/plug-in/Makefile.am
	* app/plug-in/gimpplugin-cleanup.[ch]: new files that (for now)
	keep track of the undo groups plug-in procedures open and close,
	and can fix an image's undo group state after a plug-in messed.

	* app/plug-in/gimppluginprocframe.h (struct GimpPlugInProcFrame):
	keep a list of plug-in cleanup structs.

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_dispose): call gimp_plug_in_cleanup() if
	the list is not empty.

	* tools/pdbgen/pdb/undo.pdb: keep track of undo groups using
	the new gimp_plug_in_cleanup_undo_group_start() and _end()
	functions. Fail if any of the functions returns FALSE.

	* app/pdb/undo_cmds.c: regenerated.
2006-10-25 09:41:05 +00:00
..
.cvsignore added app/display/ and app/plug-in/. Empty for now except for the types 2001-08-17 14:27:31 +00:00
gimpenvirontable.c Free the string vector returned by g_listenv(). 2006-06-13 18:06:07 +00:00
gimpenvirontable.h automatically removed trailing whitespace from 3460 lines. 2006-01-17 12:43:50 +00:00
gimpinterpreterdb.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpinterpreterdb.h automatically removed trailing whitespace from 3460 lines. 2006-01-17 12:43:50 +00:00
gimpplugin-cleanup.c Added mechanism that should prevent undo corruption by broken plug-ins and 2006-10-25 09:41:05 +00:00
gimpplugin-cleanup.h Added mechanism that should prevent undo corruption by broken plug-ins and 2006-10-25 09:41:05 +00:00
gimpplugin-context.c Made an object out of the plug-in struct. Also change refcounting 2006-05-03 18:05:06 +00:00
gimpplugin-context.h Made an object out of the plug-in struct. Also change refcounting 2006-05-03 18:05:06 +00:00
gimpplugin-message.c app/actions/data-commands.c app/actions/documents-commands.c 2006-10-09 18:49:15 +00:00
gimpplugin-message.h Made an object out of the plug-in struct. Also change refcounting 2006-05-03 18:05:06 +00:00
gimpplugin-progress.c app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
gimpplugin-progress.h Make message dialogs transient for the progress window. Addresses bug 2006-07-19 06:50:34 +00:00
gimpplugin.c app/actions/data-commands.c app/actions/documents-commands.c 2006-10-09 18:49:15 +00:00
gimpplugin.h remove member "name" and unused cruft "ref_count". Reordered other members 2006-05-04 11:58:10 +00:00
gimpplugindebug.c remove member "name" and unused cruft "ref_count". Reordered other members 2006-05-04 11:58:10 +00:00
gimpplugindebug.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-call.c app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
gimppluginmanager-call.h changed parameter "gint display_ID" to "GimpObject *display". 2006-05-05 08:29:33 +00:00
gimppluginmanager-data.c app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-data.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-file.c app/actions/data-commands.c app/actions/documents-commands.c 2006-10-09 18:49:15 +00:00
gimppluginmanager-file.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-help-domain.c restore the strict checks on string arrays. 2006-05-04 10:03:53 +00:00
gimppluginmanager-help-domain.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-history.c bail out early if the procedure is already at the start of the list. 2006-09-06 19:50:08 +00:00
gimppluginmanager-history.h remove the procedure from the history. 2006-08-08 16:34:22 +00:00
gimppluginmanager-locale-domain.c NULL-terminate the locale_domains and locale_paths string vectors, as they 2006-04-28 23:45:51 +00:00
gimppluginmanager-locale-domain.h corrected comment. 2006-09-11 15:27:21 +00:00
gimppluginmanager-menu-branch.c app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-menu-branch.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager-query.c app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
gimppluginmanager-query.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimppluginmanager.c if plug_in_rc_parse() returns an empty list it's not neccessarily an eror, 2006-10-23 19:19:22 +00:00
gimppluginmanager.h added a convenience function to retrieve the translated procedure label. 2006-09-11 15:51:39 +00:00
gimppluginprocedure.c include the procedure name in the output on stderr. 2006-10-17 15:21:20 +00:00
gimppluginprocedure.h app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
gimppluginprocframe.c Added mechanism that should prevent undo corruption by broken plug-ins and 2006-10-25 09:41:05 +00:00
gimppluginprocframe.h Added mechanism that should prevent undo corruption by broken plug-ins and 2006-10-25 09:41:05 +00:00
gimppluginshm.c cleaned up a bit. 2006-05-04 21:49:04 +00:00
gimppluginshm.h app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps 2006-04-28 22:26:51 +00:00
gimptemporaryprocedure.c app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
gimptemporaryprocedure.h Made an object out of the plug-in struct. Also change refcounting 2006-05-03 18:05:06 +00:00
Makefile.am Added mechanism that should prevent undo corruption by broken plug-ins and 2006-10-25 09:41:05 +00:00
makefile.msc updated 2006-08-15 15:13:08 +00:00
plug-in-def.c app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
plug-in-def.h ref all registered procedures. 2006-04-07 08:16:26 +00:00
plug-in-enums.c changed enum PlugInImageType to GimpPlugInImageType. 2006-05-08 13:18:02 +00:00
plug-in-enums.h changed enum PlugInImageType to GimpPlugInImageType. 2006-05-08 13:18:02 +00:00
plug-in-params.c it's a bad idea to access an array before checking if it's long enough. 2006-08-09 21:22:50 +00:00
plug-in-params.h removed this function. We only have shallow GPParam arrays in the core 2006-04-09 17:19:58 +00:00
plug-in-rc.c app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these 2006-08-05 21:21:01 +00:00
plug-in-rc.h return a GSList* of PlugInDefs instead of a boolean. Don't return anything 2006-04-09 12:33:32 +00:00
plug-in-types.h Made an object out of the plug-in struct. Also change refcounting 2006-05-03 18:05:06 +00:00