]> git.cameronkatri.com Git - mandoc.git/blobdiff - gmdiff
Clean up memory handling in spawn_pager(), free(3)ing everything
[mandoc.git] / gmdiff
diff --git a/gmdiff b/gmdiff
index 32688bf2ef2121892f7d8abb421bcc2cc5d73e04..69431f703aaf5508c5bf51a453084c3a7307becc 100644 (file)
--- a/gmdiff
+++ b/gmdiff
@@ -1,5 +1,5 @@
 #!/bin/sh
-# Copyright (c) 2013, 2014 Ingo Schwarze <schwarze@openbsd.org>
+# Copyright (c) 2013,2014,2015,2017,2018 Ingo Schwarze <schwarze@openbsd.org>
 #
 # Permission to use, copy, modify, and distribute this software for any
 # purpose with or without fee is hereby granted, provided that the above
@@ -19,7 +19,7 @@ if [ `id -u` -eq 0 ]; then
 fi
 
 if [ $# -eq 0 ]; then
-  echo "usage: $0 [-h] manual_source_file ..."
+  echo "usage: $0 [-h|-u] manual_source_file ..."
   exit 1
 fi
 
@@ -28,27 +28,30 @@ if [ "X$1" = "X-h" ]; then
   export PATH="/usr/local/heirloom-doctools/bin:$PATH"
   EQN="neqn"
   ROFF="nroff"
-  MOPT="-Omdoc $MOPT"
+  MOPT="-Ios=BSD -Tascii $MOPT"
+  COLPIPE="col -b"
 elif [ "X$1" = "X-u" ]; then
   shift
   ROFF="groff -ket -ww -Tutf8 -P -c"
-  MOPT="-Werror -Tutf8 $MOPT"
+  MOPT="-Ios=OpenBSD -Wall -Tutf8 $MOPT"
+  COLPIPE="cat"
 else
-  ROFF="groff -et -ww -mtty-char -Tascii -P -c"
-  MOPT="-Werror -Tascii $MOPT"
+  ROFF="groff -ket -ww -mtty-char -Tascii -P -c"
+  MOPT="-Ios=OpenBSD -Wall -Tascii $MOPT"
+  COLPIPE="cat"
 fi
 
 while [ -n "$1" ]; do
   file=$1
   shift
   echo " ========== $file ========== "
-  $ROFF -mandoc $file 2> /tmp/roff.err > /tmp/roff.out
-  ${MANDOC:=mandoc} -Ios=OpenBSD $MOPT $file \
+  $ROFF -mandoc $file | $COLPIPE 2> /tmp/roff.err > /tmp/roff.out
+  ${MANDOC:=mandoc} $MOPT $file | $COLPIPE \
     2> /tmp/mandoc.err > /tmp/mandoc.out
   for i in roff mandoc; do
     [ -s /tmp/$i.err ] && echo "$i errors:" && cat /tmp/$i.err
   done
-  diff -au /tmp/roff.out /tmp/mandoc.out 2>&1
+  diff -au $DIFFOPT /tmp/roff.out /tmp/mandoc.out 2>&1
 done
 
 exit 0