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-base/files/patch-src-gconf.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.
Diffstat (limited to 'print/ghostscript7-base/files/patch-src-gconf.c')
-rw-r--r-- | print/ghostscript7-base/files/patch-src-gconf.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/print/ghostscript7-base/files/patch-src-gconf.c b/print/ghostscript7-base/files/patch-src-gconf.c new file mode 100644 index 000000000000..4afa18c6e024 --- /dev/null +++ b/print/ghostscript7-base/files/patch-src-gconf.c @@ -0,0 +1,43 @@ +--- src/gconf.c.orig 2003-01-17 09:49:00.000000000 +0900 ++++ src/gconf.c 2015-08-22 01:52:10.741824000 +0900 +@@ -81,7 +81,8 @@ + /* Set up the device table. */ + #define device_(dev) (const gx_device *)&dev, + #define device2_(dev) &dev, +-private const gx_device *const gx_device_list[] = { ++static const gx_device *gx_device_list[1024] = { ++ /* as shared library are adding drivers here, so removed constness */ + #include "gconf.h" + 0 + }; +@@ -149,9 +150,29 @@ + gs_lib_device_list(const gx_device * const **plist, + gs_memory_struct_type_t ** pst) + { ++ int i; ++ + if (plist != 0) + *plist = gx_device_list; + if (pst != 0) + *pst = NULL; +- return countof(gx_device_list) - 1; ++ ++ for (i = 0; i < countof(gx_device_list) - 1; ++i) ++ if (!gx_device_list[i]) ++ break; ++ return i; + } ++ ++#ifdef GS_DEVS_SHARED ++void ++gs_lib_register_device(const gx_device *dev) ++{ ++ int i; ++ ++ for (i = 0; i < countof(gx_device_list) - 1; ++i) ++ if (!gx_device_list[i]) { ++ gx_device_list[i] = dev; ++ return; ++ } ++} ++#endif |