summaryrefslogtreecommitdiff
path: root/gs/src/gp_unix.c
diff options
context:
space:
mode:
authorHenry Stiles <henry.stiles@artifex.com>1999-10-03 08:21:45 +0000
committerHenry Stiles <henry.stiles@artifex.com>1999-10-03 08:21:45 +0000
commitee50b36ccabde111c6d77c5f9892213d53060a18 (patch)
tree35f7e38774b082c4cdbe4f4fad881903862a83c2 /gs/src/gp_unix.c
parent0ea97dbf2a40bc347a20134197643bc1daef6de8 (diff)
This is the first gs593 integration it is *NOT* a release. Normally
each file is checked in with an associated log entry, in order to check in all of the code simultaneously we batch all of the file name's modified and change descriptions here (Note: Aladdin code changes are documented in gs/doc/News.htm) - pcstate.h - removes show enumeration from pcl state. - pctop.c, pxtop.c - gs_grestore_no_wraparound()'s is now gs_grestore_only(). - pxgstate.c - ENUM_RETURN_CONST_STRING_PTR() now takes a gs string argument instead of the string's data as it did previously. - plmain.c - - The library no longer initializes io devices. Adds gs_iodev_init() to main() procedure. Also, gs_c_param_list_rewrite() is renamed to gs_c_param_list_write_more(). - pcltop.mak - adds pipe.dev for operating system pipe support. - pctext.c, pglabel.c, pxfont.c, plfont.c - extensive modifications to support the text api (gstext.h) - use gs_text_enum_t instead of gs_show_enum. - removes enumeration allocation, this is now done by the text "begin" functions. - update "next_char" procs and "encode char" procs to take a glyph argument and the character argument is now passed by value (pcl nor xl make use of the glyph argument). - char_path_n_init() replaced with gs_charpath_begin(). - gs_show_n_init() replaced with gs_show_begin(). - gs_show_next() is now handled by gs_process_text(). - gs_release_text() added. - gs_xyshow_n_init() replace with gs_xyshow_begin(). Passing of x and y coordinates modified to support the new interface. Unfortunately, we need to transform the coordinates into the space of the font scaling matrix, that is the current ctm for xl when the the text is processed. This differs from postscript which appears to have the regular user->device matrix in the graphics state during processing. - (plfont.c) - gs_notify_init() is now part of the pfont initialization procedure, related TODO: cut over to gs_font_alloc() and gs_font_base_alloc(). - all gs files - removes uninitialized rcs identifiers. KNOWN PROBLEMS: occassional pxl and pcl crashes in gdev_mem_set_line_ptrs() when running in color due to null base (data) pointer. git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@985 06663e23-700e-0410-b217-a244a6096597
Diffstat (limited to 'gs/src/gp_unix.c')
-rw-r--r--gs/src/gp_unix.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/gs/src/gp_unix.c b/gs/src/gp_unix.c
index ff2df3ecc..300ad610f 100644
--- a/gs/src/gp_unix.c
+++ b/gs/src/gp_unix.c
@@ -141,19 +141,16 @@ gp_getenv_display(void)
/* ------ Printer accessing ------ */
-/* Open a connection to a printer. A null file name means use the */
-/* standard printer connected to the machine, if any. */
-/* "|command" opens an output pipe. */
-/* Return NULL if the connection could not be opened. */
+/* Open a connection to a printer. See gp.h for details. */
FILE *
gp_open_printer(char fname[gp_file_name_sizeof], int binary_mode)
{
+ const char *fmode = (binary_mode ? "wb" : "w");
+
return
(strlen(fname) == 0 ?
- gp_open_scratch_file(gp_scratch_file_name_prefix, fname, "w") :
- fname[0] == '|' ?
- popen(fname + 1, "w") :
- fopen(fname, "w"));
+ gp_open_scratch_file(gp_scratch_file_name_prefix, fname, fmode) :
+ fopen(fname, fmode));
}
/* Close the connection to the printer. */