groff-commit
[Top][All Lists]
Advanced

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

[groff] 01/23: [grops]: Fix erroneous line number in diagnostic.


From: G. Branden Robinson
Subject: [groff] 01/23: [grops]: Fix erroneous line number in diagnostic.
Date: Wed, 16 Oct 2024 15:00:26 -0400 (EDT)

gbranden pushed a commit to branch master
in repository groff.

commit 3962a9ce789b6615773d5074260b9cef77baf3fb
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Mon Oct 14 10:50:24 2024 -0500

    [grops]: Fix erroneous line number in diagnostic.
    
    * src/devices/grops/ps.cpp (ps_printer::special): Fix off-by-one error
      in diagnostic message's line number report.
    
    Line numbers do not appear to be generally off; I damaged the input file
    in varying ways to see.
    
    Exhibit:
    
    $ cat -n minimal.grout | grep -C3 pdf:
       115  H226000
       116  V138474
       117  H226000
       118  x X pdf: pdfpic IMG_4025.pdf -L 160000z 120000z
       119  n16158 0
       120  x font 40 TI
       121  f40
    
    Before (going back to groff 1.22.4 at least):
    
    $ /usr/bin/grops minimal.grout >/dev/null
    /usr/bin/grops:minimal.grout:119: X command without 'ps:' tag ignored
    
    Now:
    
    $ ./build/grops minimal.grout >/dev/null
    ./build/grops:minimal.grout:118: error: X command without 'ps:' tag ignored
---
 ChangeLog                | 5 +++++
 src/devices/grops/ps.cpp | 3 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 2e210c821..37ad37e60 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2024-10-14  G. Branden Robinson <g.branden.robinson@gmail.com>
+
+       * src/devices/grops/ps.cpp (ps_printer::special): Fix off-by-one
+       error in diagnostic message's line number report.
+
 2024-10-15  Deri James  <deri@chuzzlewit.myzen.co.uk>
 
        Work around debian's ImageMagick policy.
diff --git a/src/devices/grops/ps.cpp b/src/devices/grops/ps.cpp
index f553f0f61..053bb6045 100644
--- a/src/devices/grops/ps.cpp
+++ b/src/devices/grops/ps.cpp
@@ -1551,7 +1551,8 @@ void ps_printer::special(char *arg, const environment 
*env, char type)
   for (; *p != '\0' && *p != ':' && *p != ' ' && *p != '\n'; p++)
     ;
   if (*p == '\0' || strncmp(tag, "ps", p - tag) != 0) {
-    error("X command without 'ps:' tag ignored");
+    error_with_file_and_line(current_filename, (current_lineno - 1),
+                            "X command without 'ps:' tag ignored");
     return;
   }
   p++;



reply via email to

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