Commit Graph

13 Commits

Author SHA1 Message Date
b28b0e4687 Bug 493778 – metadata plug-in crashes on some images
The problem is that the parser adds an empty property value when
parsing an empty Alt-array, "<rdf:Alt/>".

But when it is encoded it is expected to be in the form of a NULL
terminated array of pairs of property values, with the result that the
NULL terminator is considered the second element of the first pair and
the loop encoding these properties goes beyond the end of the array,
thus dereferencing invalid pointers.

This commit alters the parser to avoid adding dummy values when empty
rdf:Alt, rdf:Bag and rdf:Seq elements are found.
2009-07-20 17:51:21 +02:00
d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
11e495c92c use GSlice to allocate structs.
2008-10-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/metadata/xmp-parse.c: use GSlice to allocate structs.


svn path=/trunk/; revision=27333
2008-10-19 16:55:42 +00:00
186ac9c6d8 plug-ins/metadata/xmp-encode.c plug-ins/metadata/xmp-parse.c
2008-10-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/metadata/xmp-encode.c
	* plug-ins/metadata/xmp-parse.c
	* plug-ins/metadata/metadata.c
	* plug-ins/metadata/xmpdump.c: removal of unused includes and
	other minor cleanups.


svn path=/trunk/; revision=27332
2008-10-19 16:44:40 +00:00
f87f2ba907 plug-ins/imagemap/imap_cmd_move.c plug-ins/imagemap/imap_cmd_object_up.c
2008-03-29  Mukund Sivaraman  <muks@mukund.org>

        * plug-ins/imagemap/imap_cmd_move.c
        * plug-ins/imagemap/imap_cmd_object_up.c
        * plug-ins/imagemap/imap_cmd_move_up.c
        * plug-ins/imagemap/imap_cmd_move_selected.c
        * plug-ins/imagemap/imap_cmd_move_sash.c
        * plug-ins/imagemap/imap_cmd_object_move.c
        * plug-ins/imagemap/imap_cmd_object_down.c
        * plug-ins/imagemap/imap_object.c
        * plug-ins/imagemap/imap_cmd_move_down.c
        * plug-ins/map-object/map-object-shade.c
        * plug-ins/map-object/map-object-apply.c
        * plug-ins/maze/maze.h
        * plug-ins/maze/maze_face.c
        * plug-ins/selection-to-path/selection-to-path.c
        * plug-ins/selection-to-path/edge.c
        * plug-ins/selection-to-path/pxl-outline.c
        * plug-ins/selection-to-path/fit.c
        * plug-ins/xjt/xjt.c
        * plug-ins/metadata/xmp-parse.c
        * plug-ins/print/print-draw-page.c
        * plug-ins/print/print-settings.c
        * plug-ins/lighting/lighting-preview.c: Cleanups / fixes for
        issues reported by Sparse.


svn path=/trunk/; revision=25296
2008-03-29 09:25:34 +00:00
93a7fc76a5 plug-ins/imagemap/imap_preferences.c plug-ins/gflare/gflare.c
2007-04-27  Mukund Sivaraman  <muks@mukund.org>

        * plug-ins/imagemap/imap_preferences.c
        * plug-ins/gflare/gflare.c
        * plug-ins/Lighting/lighting_ui.c
        * plug-ins/xjt/xjt.c
        * plug-ins/metadata/xmp-parse.c
        * plug-ins/flame/flame.c
        * plug-ins/common/curve_bend.c
        * plug-ins/common/compressor.c
        * plug-ins/common/channel_mixer.c
        * plug-ins/common/mail.c
        * plug-ins/common/CML_explorer.c
        * plug-ins/ifscompose/ifscompose.c: Open files in binary mode
        ("rb" and "wb").


svn path=/trunk/; revision=22351
2007-04-26 20:31:01 +00:00
7a1cdb8bfe made the parser more tolerant and accept XMP blocks that are not using the
2007-04-12  Raphael Quinet  <raphael@gimp.org>

	* plug-ins/metadata/xmp-parse.c: made the parser more tolerant and
	accept XMP blocks that are not using the namespace prefixes
	recommended by the XMP specification.

svn path=/trunk/; revision=22242
2007-04-12 16:17:01 +00:00
088950c283 protect against broken XMP blocks using rdf:Alt instead of rdf:Seq. Fixes
2006-05-30  Raphael Quinet  <raphael@gimp.org>

	* plug-ins/metadata/xmp-parse.c: protect against broken XMP blocks
	using rdf:Alt instead of rdf:Seq.  Fixes bug #343315.

	* plug-ins/metadata/xmpdump.c (main): call g_set_prgname() to get
	better messages from glib.

	* data/images/gimp-splash.png: new splash screen, waiting for the
	old animation feature to be restored.
2006-05-30 22:20:53 +00:00
15da11125d Added definition of properties from IPTC Core XMP schema (Iptc4xmpCore).
2005-04-23  Raphael Quinet  <raphael@gimp.org>

	* plug-ins/metadata/xmp-schemas.[ch]: Added definition of
	properties from IPTC Core XMP schema (Iptc4xmpCore).

	* plug-ins/metadata/base64.[ch]: Added option to ignore invalid
	characters in base64 encoded text.

	* plug-ins/metadata/xmp-parse.c
	* plug-ins/metadata/testbase64.c: Updated accordingly.
2005-04-23 10:01:24 +00:00
c30453f49d Fixed crash occuring after a double free of some structured XMP
2005-04-22  Raphael Quinet  <raphael@gimp.org>

	* plug-ins/metadata/xmp-model.[ch]: Fixed crash occuring after a
	double free of some structured XMP properties.  Added new type
	XMP_TYPE_GENERIC_STRUCTURE for unknown structured properties.  Be
	more tolerant in parsing incorrectly written schema URIs and try
	to extract a valid URI from them.  Converted to use g_print().
	Moved the definitions of standard XMP schemas from here...

	* plug-ins/metadata/xmp-schemas.[ch]: ...to these new files.

	* plug-ins/metadata/xmp-encode.[ch]: Rewritten using GString
	instead of fixed buffers.

	* plug-ins/metadata/metadata.c
	* plug-ins/metadata/interface.c: Adapted to the new function
	xmp_generate_block() using GString.

	* plug-ins/metadata/base64.c (base64_encode): Fixed incorrect
	encoding of bytes with the sign bit set.

	* plug-ins/metadata/testbase64.c
	* plug-ins/metadata/Makefile.am: Added xmp-schema.[ch] and test
	program testbase64.c (testing base64 encoding and decoding).

	* plug-ins/metadata/xmpdump.c: Converted to use g_print().

	* plug-ins/metadata/xmp-parse.c: Added some #ifdef's around
	debugging code, added more comments.
2005-04-22 15:04:29 +00:00
76c85d918a #include gimpwidgets.h for gimp_spin_button_new().
2005-04-18  Manish Singh  <yosh@gimp.org>

        * libgimpwidgets/gimpsizeentry.c: #include gimpwidgets.h for
        gimp_spin_button_new().

        * plug-ins/jpeg/jpeg-load.c
        * plug-ins/jpeg/jpeg-save.c
        * plug-ins/metadata/interface.c
        * plug-ins/metadata/xmp-parse.c: 64-bit safety for some of the
        debugging g_prints.
2005-04-18 23:38:25 +00:00
66f98bf32e Register plug_in_metadata_import and plug_in_metadata_export in the PDB.
2005-04-11  Raphael Quinet  <raphael@gimp.org>

	* plug-ins/metadata/metadata.c: Register plug_in_metadata_import
	and plug_in_metadata_export in the PDB.

	* plug-ins/metadata/Makefile.am
	* plug-ins/metadata/base64.h
	* plug-ins/metadata/base64.c: Added base64 decoder, needed for
	reading the thumbnail images (base64 encoded inside XML element).

	* plug-ins/metadata/xmp-parse.h
	* plug-ins/metadata/xmp-parse.c: Added XMP_PTYPE_ALT_THUMBS for
	parsing a list of thumbnail images.  Decode and store the base64
	encoded images.

	* plug-ins/metadata/xmpdump.c
	* plug-ins/metadata/xmp-model.h
	* plug-ins/metadata/xmp-model.c: Added support for thumbnails,
	defined global symbols for standard XMP schema URIs.

	* plug-ins/metadata/interface.c: Preliminary support for widget
	cross-references just for testing - it does not save anything yet.
	Added thumbnail tab, although the thumbnail image is not displayed
	yet.
2005-04-11 16:53:17 +00:00
0d58035627 Added placeholder for file properties.
2005-03-04  Raphael Quinet  <raphael@gimp.org>

	* menus/image-menu.xml.in: Added placeholder for file properties.

	* plug-ins/metadata/.cvsignore
	* plug-ins/metadata/Makefile.am
	* plug-ins/metadata/README
	* plug-ins/metadata/interface.c
	* plug-ins/metadata/interface.h
	* plug-ins/metadata/metadata.c
	* plug-ins/metadata/xmp-model.c
	* plug-ins/metadata/xmp-model.h
	* plug-ins/metadata/xmp-parse.c
	* plug-ins/metadata/xmp-parse.h
	* plug-ins/metadata/xmp-gen.c
	* plug-ins/metadata/xmp-gen.h: First import of metadata editor.
	Currently, it cannot read metadata (except for XMP), it cannot
	edit metadata and it cannot save metadata (just export).  But this
	might improve later...  The README file contains some info.
2005-03-04 23:01:48 +00:00