This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project gfxprim.git.
The branch, master has been updated via c2fb0ec9b8d440b7128d76344907b20ad292885e (commit) via f4d0b3a334fc0d0e84c10d610e857f2f7d63af4b (commit) via e046ca8ac123e9c4f0e619077fe9db4a81a14abe (commit) via d2e38530ca219f78533be17c4dc3d6637279478c (commit) from a33888669a0b42c82e7664debb6c255d33efecd2 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- http://repo.or.cz/w/gfxprim.git/commit/c2fb0ec9b8d440b7128d76344907b20ad2928...
commit c2fb0ec9b8d440b7128d76344907b20ad292885e Author: Cyril Hrubis metan@ucw.cz Date: Fri Mar 14 00:07:12 2014 +0100
doc: Add GFXprim to specialwords.
Now all occurences of GFXprim are emphasized automatically
Signed-off-by: Cyril Hrubis metan@ucw.cz
diff --git a/doc/about.txt b/doc/about.txt index f632eaaf..9708ccd0 100644 --- a/doc/about.txt +++ b/doc/about.txt @@ -1,7 +1,7 @@ General information -------------------
-Gfxprim is simple modular 2D bitmap graphics library with emphasis on speed +GFXprim is simple modular 2D bitmap graphics library with emphasis on speed and correctness.
One of the key points of the library are code generators. Most of the diff --git a/doc/asciidoc.conf b/doc/asciidoc.conf index 4cca66ee..cd6e25b3 100644 --- a/doc/asciidoc.conf +++ b/doc/asciidoc.conf @@ -1,3 +1,6 @@ +[specialwords] +emphasizedwords=GFXprim + [attributes] # use image icons icons diff --git a/doc/index.txt b/doc/index.txt index 48596e31..240d7b9e 100644 --- a/doc/index.txt +++ b/doc/index.txt @@ -1,7 +1,7 @@ GFXprim -------
-'GFXprim' is Open-source modular 2D bitmap graphics library with emphasis on +GFXprim is Open-source modular 2D bitmap graphics library with emphasis on speed and correctness.
The goal of the library is to provide simple but powerful API for applications
http://repo.or.cz/w/gfxprim.git/commit/f4d0b3a334fc0d0e84c10d610e857f2f7d63a...
commit f4d0b3a334fc0d0e84c10d610e857f2f7d63af4b Author: Cyril Hrubis metan@ucw.cz Date: Fri Mar 14 00:00:32 2014 +0100
doc: Minor css style tweak.
Signed-off-by: Cyril Hrubis metan@ucw.cz
diff --git a/doc/asciidoc.css b/doc/asciidoc.css index 9d4173ad..09829b1f 100644 --- a/doc/asciidoc.css +++ b/doc/asciidoc.css @@ -31,9 +31,9 @@ a:hover { }
em { - font-style: normal; - font-weight: 600; - color: #444; + font-style: italic; + font-weight: bolder; + color: #223; }
strong {
http://repo.or.cz/w/gfxprim.git/commit/e046ca8ac123e9c4f0e619077fe9db4a81a14...
commit e046ca8ac123e9c4f0e619077fe9db4a81a14abe Author: Cyril Hrubis metan@ucw.cz Date: Sat Mar 8 11:10:57 2014 +0100
loaders: TIFF: Fix Big Endian signature.
It's "MM0*"
Signed-off-by: Cyril Hrubis metan@ucw.cz
diff --git a/libs/loaders/GP_TIFF.c b/libs/loaders/GP_TIFF.c index f8e56d60..65513c77 100644 --- a/libs/loaders/GP_TIFF.c +++ b/libs/loaders/GP_TIFF.c @@ -45,7 +45,7 @@ #include <tiffio.h>
#define TIFF_HEADER_LITTLE "IIx2a0" -#define TIFF_HEADER_BIG "BB0x2a" +#define TIFF_HEADER_BIG "MM0x2a"
int GP_MatchTIFF(const void *buf) {
http://repo.or.cz/w/gfxprim.git/commit/d2e38530ca219f78533be17c4dc3d66372794...
commit d2e38530ca219f78533be17c4dc3d6637279478c Author: Cyril Hrubis metan@ucw.cz Date: Mon Mar 3 01:02:43 2014 +0100
loader: PSD: Propagate errors correctly.
Fix error propagation from combined image loader.
Signed-off-by: Cyril Hrubis metan@ucw.cz
diff --git a/libs/loaders/GP_PSD.c b/libs/loaders/GP_PSD.c index f05ab316..a3e5030d 100644 --- a/libs/loaders/GP_PSD.c +++ b/libs/loaders/GP_PSD.c @@ -22,7 +22,7 @@
/*
- Photoshop PSD thumbnail image loader. + Photoshop PSD image loader.
Written using documentation available freely on the internet.
@@ -442,7 +442,7 @@ static const char *compress_method_type(uint16_t compress) struct rle { /* RLE State */ int8_t op; - int size; + unsigned int size; uint8_t val;
/* Source I/O stream */ @@ -625,9 +625,8 @@ static int psd_load_rle_cmyk(GP_IO *rle_io, GP_Context *res, return 0; }
-static GP_Context *psd_combined_image(GP_IO *io, - struct psd_header *header, - GP_ProgressCallback *callback) +static int psd_combined_image(GP_IO *io, struct psd_header *header, + GP_Context **res, GP_ProgressCallback *callback) { uint16_t compress; GP_PixelType pixel_type = GP_PIXEL_UNKNOWN; @@ -635,17 +634,15 @@ static GP_Context *psd_combined_image(GP_IO *io,
if (GP_IOReadB2(io, &compress)) { GP_DEBUG(1, "Failed to read Combined Image compression"); - return NULL; + return errno; }
GP_DEBUG(1, "Combined image compression %s (%"PRIu16")", compress_method_type(compress), compress);
- if (compress != PSD_COMPRESS_RLE) { GP_DEBUG(1, "Unsupported compression"); - errno = ENOSYS; - return NULL; + return ENOSYS; }
if (header->color_mode == PSD_RGB) { @@ -677,8 +674,7 @@ static GP_Context *psd_combined_image(GP_IO *io,
if (pixel_type == GP_PIXEL_UNKNOWN) { GP_DEBUG(1, "Unsupported color_mode/channels/bpp combination"); - errno = ENOSYS; - return NULL; + return ENOSYS; }
/* @@ -688,31 +684,28 @@ static GP_Context *psd_combined_image(GP_IO *io, */ if (GP_IOSeek(io, 2 * header->channels * header->h, GP_IO_SEEK_CUR) == (off_t)-1) { GP_DEBUG(1, "Failed to skip Line Bytes Counts"); - return NULL; + return errno; }
- GP_Context *res = GP_ContextAlloc(header->w, header->h, pixel_type); + *res = GP_ContextAlloc(header->w, header->h, pixel_type);
- if (!res) - return NULL; + if (!*res) + return ENOMEM;
GP_IO *rle_io = rle(io); if (!rle_io) - return NULL; + return ENOMEM;
if (pixel_type == GP_PIXEL_CMYK8888) - ret = psd_load_rle_cmyk(rle_io, res, callback); + ret = psd_load_rle_cmyk(rle_io, *res, callback); else - ret = psd_load_rle_rgb(rle_io, res, callback); + ret = psd_load_rle_rgb(rle_io, *res, callback);
- if (ret) { - GP_ContextFree(res); - GP_IOClose(rle_io); - return NULL; - } + if (ret) + GP_ContextFree(*res);
GP_IOClose(rle_io); - return res; + return ret; }
GP_Context *GP_ReadPSD(GP_IO *io, GP_ProgressCallback *callback) @@ -720,6 +713,7 @@ GP_Context *GP_ReadPSD(GP_IO *io, GP_ProgressCallback *callback) int err; uint32_t len, size, read_size = 0; struct psd_header header; + GP_Context *thumbnail = NULL;
uint16_t psd_header[] = { '8', 'B', 'P', 'S', @@ -737,8 +731,8 @@ GP_Context *GP_ReadPSD(GP_IO *io, GP_ProgressCallback *callback) if (GP_IOReadF(io, psd_header, &header.channels, &header.h, &header.w, &header.depth, &header.color_mode, &len) != 13) { GP_DEBUG(1, "Failed to read file header"); - err = EIO; - goto err0; + err = errno; + goto err; }
GP_DEBUG(1, "Have PSD %"PRIu32"x%"PRIu32" channels=%"PRIu16"," @@ -773,8 +767,6 @@ GP_Context *GP_ReadPSD(GP_IO *io, GP_ProgressCallback *callback)
GP_DEBUG(1, "Image Resource Section length is %u", len);
- GP_Context *thumbnail = NULL; - do { size = psd_next_img_res_block(io, &thumbnail, NULL);
@@ -787,28 +779,34 @@ GP_Context *GP_ReadPSD(GP_IO *io, GP_ProgressCallback *callback) /* Skip Layer and Mask information */ if (GP_IOReadB4(io, &size)) { GP_DEBUG(1, "Failed to read Layer and Mask Section size"); - goto end; + err = errno; + goto err; }
if (GP_IOSeek(io, size, GP_IO_SEEK_CUR) == (off_t)-1) { GP_DEBUG(1, "Failed to seek to Image Data Section"); - goto end; + err = errno; + goto err; }
- GP_Context *combined = psd_combined_image(io, &header, callback); + GP_Context *combined = NULL; + err = psd_combined_image(io, &header, &combined, callback);
- if (combined) { + if (!err) { GP_ContextFree(thumbnail); return combined; }
-end: + if (err == ECANCELED) + goto err; + if (thumbnail) return thumbnail;
errno = ENOSYS; return NULL; -err0: +err: + GP_ContextFree(thumbnail); errno = err; return NULL; }
-----------------------------------------------------------------------
Summary of changes: doc/about.txt | 2 +- doc/asciidoc.conf | 3 ++ doc/asciidoc.css | 6 ++-- doc/index.txt | 2 +- libs/loaders/GP_PSD.c | 66 +++++++++++++++++++++++------------------------ libs/loaders/GP_TIFF.c | 2 +- 6 files changed, 41 insertions(+), 40 deletions(-)
repo.or.cz automatic notification. Contact project admin jiri.bluebear.dluhos@gmail.com if you want to unsubscribe, or site admin admin@repo.or.cz if you receive no reply.