diff options
author | Hiroki Sato <hrs@FreeBSD.org> | 2015-08-22 17:48:35 +0000 |
---|---|---|
committer | Hiroki Sato <hrs@FreeBSD.org> | 2015-08-22 17:48:35 +0000 |
commit | 27470e1676e69455acf06ae25ebd42ebd5bdecdb (patch) | |
tree | 445c3e315f03aa972de87391f921c655e4634f60 /print/ghostscript7/files/patch-src:gdevpdfw.c | |
parent | Remove textproc/prosper. The latest version is included in (diff) |
- Split ghostscript into X11-independent and -dependent parts:
* print/ghostscript{7,8,9,9-agpl}-base
Installs Ghostscript binary, libgs, and related files.
These ports do not depend on X11 libraries (i.e. x11* devices
are not available). USES=ghostscript will set dependency on
one of them depending on GHOSTSCRIPT_DEFAULT.
The default device is set to "display" or "bbox".
* print/ghostscript{7,8,9,9-agpl}-x11
Installs a shared library which provides X11 support to
the installed Ghostscript binaries. x11* devices will be
enabled when the library is available.
This depends on *-base (RUN_DEPENDS). USES=ghostscript:x11
will set dependency on one of them.
- Fix integer overflow reported as CVE-2015-3228.
- Update Uses/ghostscript.mk:
* Add x11 keyword. nox11 keyword is now obsolete.
* Use packagename in *_DEPENDS line to prevent relationship between
-base and -x11 packages from being broken.
- Fix x11/nox11 keyword and bump PORTREVISION in ports using
USES=ghostscript to update dependency of pre-compiled packages.
Notes
Notes:
svn path=/head/; revision=395047
Diffstat (limited to 'print/ghostscript7/files/patch-src:gdevpdfw.c')
-rw-r--r-- | print/ghostscript7/files/patch-src:gdevpdfw.c | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/print/ghostscript7/files/patch-src:gdevpdfw.c b/print/ghostscript7/files/patch-src:gdevpdfw.c deleted file mode 100644 index a08b87d42724..000000000000 --- a/print/ghostscript7/files/patch-src:gdevpdfw.c +++ /dev/null @@ -1,60 +0,0 @@ ---- src/gdevpdfw.c.org 2003-01-17 09:49:02.000000000 +0900 -+++ src/gdevpdfw.c 2003-09-25 17:50:54.000000000 +0900 -@@ -348,18 +348,19 @@ - /* Use the most common width as DW. */ - - { -- ushort counts[1001]; -+ ushort counts[1500*2]; /* histogram of (-1500..1500) */ - int dw_count = 0, i; - - memset(counts, 0, sizeof(counts)); - while (!psf_enumerate_glyphs_next(&genum, &glyph)) { -- int width = ppf->Widths[glyph - gs_min_cid_glyph]; -+ int cid = glyph - gs_min_cid_glyph; -+ int width = ppf->Widths[cid]; - -- counts[min(width, countof(counts) - 1)]++; -+ counts[max(0,min(width+countof(counts)/2,countof(counts)-1))]++; - } -- for (i = 0; i < countof(counts); ++i) -+ for (i = 0; i < countof(counts); i++) - if (counts[i] > dw_count) -- dw = i, dw_count = counts[i]; -+ dw = i - countof(counts)/2, dw_count = counts[i]; - if (dw != 0) - pprintd1(s, "/DW %d\n", dw); - } -@@ -496,14 +497,16 @@ - if (pdf_has_subset_prefix(chars, size)) - chars += SUBSET_PREFIX_SIZE, size -= SUBSET_PREFIX_SIZE; - pdf_put_name(pdev, chars, size); -- if (pef->sub_font_type == ft_CID_encrypted && -+ if ((pef->sub_font_type == ft_CID_encrypted || -+ pef->sub_font_type == ft_CID_TrueType) && - pef->cmapname[0] == '/' - ) { - stream_putc(s, '-'); - pdf_put_name_chars(pdev, (const byte*) (pef->cmapname + 1), - strlen(pef->cmapname + 1)); - } -- pprints1(s, "/Encoding %s", pef->cmapname); -+ pprints1(s, (pef->cmapname[0] == '/') ? "/Encoding%s" : "/Encoding %s", -+ pef->cmapname); - pprintld1(s, "/DescendantFonts[%ld 0 R]", - pdf_resource_id((const pdf_resource_t *)pef->DescendantFont)); - write_Widths = 0; -@@ -563,8 +566,10 @@ - break; - case -1: - pdf_write_CIDFont_widths(pdev, pef); -- if (pef->FontType == ft_CID_TrueType) -- pdf_write_CIDToGIDMap(pdev, pef, &cidmap_id); -+ if (pef->FontType == ft_CID_TrueType) { -+ if (pef->embed != FONT_EMBED_NO) -+ pdf_write_CIDToGIDMap(pdev, pef, &cidmap_id); -+ } - break; - } - if (pef->Differences) { - |