groff-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Groff-commit] groff ./ChangeLog src/devices/grops/grops.man s...


From: Werner LEMBERG
Subject: [Groff-commit] groff ./ChangeLog src/devices/grops/grops.man s...
Date: Sat, 22 Jan 2005 01:13:07 -0500

CVSROOT:        /cvsroot/groff
Module name:    groff
Branch:         
Changes by:     Werner LEMBERG <address@hidden> 05/01/22 06:13:07

Modified files:
        .              : ChangeLog 
        src/devices/grops: grops.man 
        src/libs/libdriver: input.cpp 

Log message:
        * src/libs/libdriver/input.cpp (delete_current_env, do_file):
        Reset pointers to zero after deallocation.  This fixes a crash
        if a driver is called with multiple output files.  Reported by
        Ken Chilton <address@hidden>.
        
        * src/devices/grops/grops.man: Add more info on DSC.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/groff/groff/ChangeLog.diff?tr1=1.778&tr2=1.779&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/groff/groff/src/devices/grops/grops.man.diff?tr1=1.26&tr2=1.27&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/groff/groff/src/libs/libdriver/input.cpp.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: groff/ChangeLog
diff -u groff/ChangeLog:1.778 groff/ChangeLog:1.779
--- groff/ChangeLog:1.778       Wed Jan 19 06:50:30 2005
+++ groff/ChangeLog     Sat Jan 22 06:13:07 2005
@@ -1,3 +1,12 @@
+2005-01-21  Werner LEMBERG  <address@hidden>
+
+       * src/libs/libdriver/input.cpp (delete_current_env, do_file):
+       Reset pointers to zero after deallocation.  This fixes a crash
+       if a driver is called with multiple output files.  Reported by
+       Ken Chilton <address@hidden>.
+
+       * src/devices/grops/grops.man: Add more info on DSC.
+
 2005-01-17  Ruslan Ermilov  <address@hidden>
 
        * tmac/doc-common (Dd), tmac/doc-ditroff (gX, doc-setup-header):
Index: groff/src/devices/grops/grops.man
diff -u groff/src/devices/grops/grops.man:1.26 
groff/src/devices/grops/grops.man:1.27
--- groff/src/devices/grops/grops.man:1.26      Sat Jun 19 20:49:30 2004
+++ groff/src/devices/grops/grops.man   Sat Jan 22 06:13:07 2005
@@ -1,5 +1,6 @@
 .ig
-Copyright (C) 1989-2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+Copyright (C) 1989-2000, 2001, 2002, 2003, 2004, 2005
+  Free Software Foundation, Inc.
 
 Permission is granted to make and distribute verbatim copies of
 this manual provided the copyright notice and this permission notice
@@ -116,6 +117,15 @@
 .B \-P
 option.
 .
+.PP
+Note that
+.B grops
+doesn't produce a valid document structure (conforming to the Document
+Structuring Convention) if called with multiple file arguments.
+.
+To print such concatenated output it is necessary to deactivate DSC
+handling in the printing program or previewer.
+.
 .
 .SH OPTIONS
 .TP
@@ -1149,6 +1159,10 @@
 .BR groff_char (@MAN7EXT@),
 .BR groff_tmac (@MAN5EXT@)
 .
+.PP
+.URL 
"http://\:partners.adobe.com/\:public/\:developer/\:en/\:ps/\:5001.DSC_Spec.pdf";
 \
+     "PostScript Language Document Structuring Conventions Specification"
+.
 .cp \n[grops_C]
 .
 .\" Local Variables:
Index: groff/src/libs/libdriver/input.cpp
diff -u groff/src/libs/libdriver/input.cpp:1.3 
groff/src/libs/libdriver/input.cpp:1.4
--- groff/src/libs/libdriver/input.cpp:1.3      Thu Dec 16 13:09:54 2004
+++ groff/src/libs/libdriver/input.cpp  Sat Jan 22 06:13:07 2005
@@ -2,13 +2,13 @@
 
 // <groff_src_dir>/src/libs/libdriver/input.cpp
 
-/* Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004
+/* Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    Written by James Clark (address@hidden)
    Major rewrite 2001 by Bernd Warken (address@hidden)
 
-   Last update: 15 Dec 2004
+   Last update: 21 Jan 2005
 
    This file is part of groff, the GNU roff text processing system.
 
@@ -608,6 +608,7 @@
   delete current_env->col;
   delete current_env->fill;
   delete current_env;
+  current_env = 0;
 }
 
 //////////////////////////////////////////////////////////////////////
@@ -1520,8 +1521,8 @@
       char *str_arg = get_extended_arg(); // includes line skip
       if (npages <= 0)
        error("`x X' command invalid before first `p' command");
-      else if (str_arg != NULL && (strncmp(str_arg, "devtag:",
-                                          strlen("devtag:")) == 0))
+      else if (str_arg && (strncmp(str_arg, "devtag:",
+                                  strlen("devtag:")) == 0))
        pr->devtag(str_arg, current_env);
       else
        pr->special(str_arg, current_env);
@@ -1826,6 +1827,7 @@
   if (npages > 0)
     pr->end_page(current_env->vpos);
   delete pr;
+  pr = 0;
   fclose(current_file);
   // If `stopped' is not `true' here then there wasn't any `x stop'.
   if (!stopped)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]