gimp/app/core/gimppattern-header.h
Michael Natterer 4eeb875946 app/gimpbrush.c app/gimpbrushpipe.c app/pattern_header.h fixed #8150.
2000-10-01  Michael Natterer  <mitch@gimp.org>

	* app/gimpbrush.c
	* app/gimpbrushpipe.c
	* app/pattern_header.h
	* app/patterns.c: (Hopefully) fixed #8150.

	- If something goes wrong during loading, free the resp. object
	  immediately and close it's FD.
	- When destroying, check each pointer before freeing it.
	- Never use if (!gimp_brush_load_brush() || !pattern_load())
	  but check the return values of both calls separately.
	  (the original code tried to free an already destroyed temp_buf).
	- stuff like below (s/sz_PatternHeader/sizeof(PatternHeader)/g etc.)
2000-10-01 18:53:39 +00:00

44 lines
1.6 KiB
C

/* The GIMP -- an image manipulation program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __PATTERN_HEADER_H__
#define __PATTERN_HEADER_H__
#define GPATTERN_FILE_VERSION 1
#define GPATTERN_MAGIC (('G' << 24) + ('P' << 16) + ('A' << 8) + ('T' << 0))
/* All field entries are MSB */
typedef struct _PatternHeader PatternHeader;
struct _PatternHeader
{
guint header_size; /* header_size = sizeof(PatternHeader) + pattern name */
guint version; /* pattern file version # */
guint width; /* width of pattern */
guint height; /* height of pattern */
guint bytes; /* depth of pattern in bytes */
guint magic_number; /* GIMP pattern magic number */
};
/* In a pattern file, next comes the pattern name, null-terminated. After that
* comes the pattern data--width * height * bytes bytes of it...
*/
#endif /* __PATTERN_HEADER_H__ */