mirror of
https://github.com/qpdf/qpdf.git
synced 2025-01-03 07:12:28 +00:00
2.0.2
git-svn-id: svn+q:///qpdf/trunk@634 71b93d88-0707-0410-a8cf-f5a4172ac649
This commit is contained in:
parent
31dbfc0ef9
commit
212ca68f4f
@ -1,3 +1,10 @@
|
|||||||
|
2008-06-30 Jay Berkenbilt <ejb@ql.org>
|
||||||
|
|
||||||
|
* 2.0.2: release
|
||||||
|
|
||||||
|
* updated embedded qtest to version 1.2 (includes previous
|
||||||
|
changes)
|
||||||
|
|
||||||
2008-06-07 Jay Berkenbilt <ejb@ql.org>
|
2008-06-07 Jay Berkenbilt <ejb@ql.org>
|
||||||
|
|
||||||
* qpdf/qtest/qpdf/diff-encrypted: change == to = so that the test
|
* qpdf/qtest/qpdf/diff-encrypted: change == to = so that the test
|
||||||
|
@ -13,7 +13,7 @@ Release Reminders
|
|||||||
qpdf/qpdf.cc
|
qpdf/qpdf.cc
|
||||||
manual/qpdf-manual.xml
|
manual/qpdf-manual.xml
|
||||||
|
|
||||||
make_dist does this automatically.
|
make_dist verifies this consistency.
|
||||||
|
|
||||||
* Each year, update copyright notices. Just search for Copyright.
|
* Each year, update copyright notices. Just search for Copyright.
|
||||||
Last updated: 2008.
|
Last updated: 2008.
|
||||||
|
@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
|
|||||||
dnl This config.in requires autoconf 2.5 or greater.
|
dnl This config.in requires autoconf 2.5 or greater.
|
||||||
|
|
||||||
AC_PREREQ(2.60)
|
AC_PREREQ(2.60)
|
||||||
AC_INIT(qpdf,2.0.1)
|
AC_INIT(qpdf,2.0.2)
|
||||||
|
|
||||||
dnl No AC_CONFIG_HEADERS. If this changes, update README.maintainer.
|
dnl No AC_CONFIG_HEADERS. If this changes, update README.maintainer.
|
||||||
AC_CONFIG_FILES([autoconf.mk])
|
AC_CONFIG_FILES([autoconf.mk])
|
||||||
|
@ -5,8 +5,8 @@
|
|||||||
<!ENTITY mdash "—">
|
<!ENTITY mdash "—">
|
||||||
<!ENTITY ndash "–">
|
<!ENTITY ndash "–">
|
||||||
<!ENTITY nbsp " ">
|
<!ENTITY nbsp " ">
|
||||||
<!ENTITY swversion "2.0.1">
|
<!ENTITY swversion "2.0.2">
|
||||||
<!ENTITY lastreleased "May 6, 2008">
|
<!ENTITY lastreleased "June 30, 2008">
|
||||||
]>
|
]>
|
||||||
<book>
|
<book>
|
||||||
<bookinfo>
|
<bookinfo>
|
||||||
@ -1964,6 +1964,21 @@ print "\n";
|
|||||||
<appendix id="ref.release-notes">
|
<appendix id="ref.release-notes">
|
||||||
<title>Release Notes</title>
|
<title>Release Notes</title>
|
||||||
<variablelist>
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>2.0.2: June 30, 2008</term>
|
||||||
|
<listitem>
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update test suite to work properly with a
|
||||||
|
non-<comamnd>bash</comamnd> <filename>/bin/sh</filename> and
|
||||||
|
with Perl 5.10. No changes were made to the actual qpdf
|
||||||
|
source code itself for this release.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>2.0.1: May 6, 2008</term>
|
<term>2.0.1: May 6, 2008</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -447,7 +447,7 @@ int main(int argc, char* argv[])
|
|||||||
// 1 2 3 4 5 6 7 8
|
// 1 2 3 4 5 6 7 8
|
||||||
// 12345678901234567890123456789012345678901234567890123456789012345678901234567890
|
// 12345678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||||
std::cout
|
std::cout
|
||||||
<< whoami << " version 2.0.1" << std::endl
|
<< whoami << " version 2.0.2" << std::endl
|
||||||
<< "Copyright (c) 2005-2008 Jay Berkenbilt"
|
<< "Copyright (c) 2005-2008 Jay Berkenbilt"
|
||||||
<< std::endl
|
<< std::endl
|
||||||
<< "This software may be distributed under the terms of version 2 of the"
|
<< "This software may be distributed under the terms of version 2 of the"
|
||||||
|
@ -33,7 +33,7 @@ require TestDriver;
|
|||||||
|
|
||||||
if ((@ARGV == 1) && ($ARGV[0] eq '--version'))
|
if ((@ARGV == 1) && ($ARGV[0] eq '--version'))
|
||||||
{
|
{
|
||||||
print "$whoami version 1.1\n";
|
print "$whoami version 1.2\n";
|
||||||
exit 0;
|
exit 0;
|
||||||
}
|
}
|
||||||
if ((@ARGV == 1) && ($ARGV[0] eq '--print-path'))
|
if ((@ARGV == 1) && ($ARGV[0] eq '--print-path'))
|
||||||
|
@ -139,7 +139,10 @@ sub get_tty_features
|
|||||||
no strict;
|
no strict;
|
||||||
local $^W = 0;
|
local $^W = 0;
|
||||||
local *X;
|
local *X;
|
||||||
|
{
|
||||||
|
local $SIG{'__WARN__'} = sub {};
|
||||||
require 'sys/ioctl.ph';
|
require 'sys/ioctl.ph';
|
||||||
|
}
|
||||||
if ((defined &TIOCGWINSZ) && open(X, "+</dev/tty"))
|
if ((defined &TIOCGWINSZ) && open(X, "+</dev/tty"))
|
||||||
{
|
{
|
||||||
my $winsize = "";
|
my $winsize = "";
|
||||||
@ -671,6 +674,8 @@ sub runtest
|
|||||||
my $pid = undef;
|
my $pid = undef;
|
||||||
my $pid_killer = new TestDriver::PidKiller(\$pid);
|
my $pid_killer = new TestDriver::PidKiller(\$pid);
|
||||||
my $in = new IO::Handle;
|
my $in = new IO::Handle;
|
||||||
|
my $use_tempfile = ($^O eq 'MSWin32');
|
||||||
|
my $tempout_status = undef;
|
||||||
if (defined $in_string)
|
if (defined $in_string)
|
||||||
{
|
{
|
||||||
&QTC::TC("testdriver", "TestDriver input string");
|
&QTC::TC("testdriver", "TestDriver input string");
|
||||||
@ -686,12 +691,31 @@ sub runtest
|
|||||||
"->runtest: unable to read from input file $in_file: $!\n");
|
"->runtest: unable to read from input file $in_file: $!\n");
|
||||||
}
|
}
|
||||||
elsif (defined $in_command)
|
elsif (defined $in_command)
|
||||||
|
{
|
||||||
|
my $tempfilename = "$tempdir/tempout";
|
||||||
|
my $tempfile = undef;
|
||||||
|
if ($use_tempfile)
|
||||||
|
{
|
||||||
|
$tempfile = new IO::File(">$tempfilename") or
|
||||||
|
die +(+__PACKAGE__,
|
||||||
|
"->runtest: unable to create $tempfilename: $!\n");
|
||||||
|
$pid = fork;
|
||||||
|
croak +__PACKAGE__, "->runtest: fork failed: $!\n"
|
||||||
|
unless defined $pid;
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
$pid = open($in, "-|");
|
$pid = open($in, "-|");
|
||||||
croak +__PACKAGE__, "->runtest: fork failed: $!\n" unless defined $pid;
|
croak +__PACKAGE__, "->runtest: fork failed: $!\n"
|
||||||
|
unless defined $pid;
|
||||||
|
}
|
||||||
if ($pid == 0)
|
if ($pid == 0)
|
||||||
{
|
{
|
||||||
# child
|
# child
|
||||||
|
if (defined $tempfile)
|
||||||
|
{
|
||||||
|
open(STDOUT, ">&", $tempfile);
|
||||||
|
}
|
||||||
open(STDERR, ">&STDOUT");
|
open(STDERR, ">&STDOUT");
|
||||||
open(STDIN, '<', \ "");
|
open(STDIN, '<', \ "");
|
||||||
if (ref($in_command) eq 'ARRAY')
|
if (ref($in_command) eq 'ARRAY')
|
||||||
@ -711,6 +735,19 @@ sub runtest
|
|||||||
$in_command, "\n");
|
$in_command, "\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (defined $tempfile)
|
||||||
|
{
|
||||||
|
waitpid($pid, 0);
|
||||||
|
$tempout_status = $?;
|
||||||
|
$pid = undef;
|
||||||
|
open($in, "<$tempfilename") or
|
||||||
|
croak +(+__PACKAGE__,
|
||||||
|
"->runtest: unable to read from" .
|
||||||
|
" input file $tempfilename: $!\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -768,22 +805,25 @@ sub runtest
|
|||||||
last if defined $exit_status;
|
last if defined $exit_status;
|
||||||
}
|
}
|
||||||
$in->close();
|
$in->close();
|
||||||
|
if (defined $tempout_status)
|
||||||
|
{
|
||||||
|
$exit_status = $tempout_status;
|
||||||
|
}
|
||||||
if (defined $in_command)
|
if (defined $in_command)
|
||||||
{
|
{
|
||||||
if (! defined $exit_status)
|
if (! defined $exit_status)
|
||||||
{
|
{
|
||||||
$exit_status = $?;
|
$exit_status = $?;
|
||||||
}
|
}
|
||||||
if (($exit_status > 0) && ($exit_status < 256))
|
if (WIFSIGNALED($exit_status))
|
||||||
{
|
{
|
||||||
&QTC::TC("testdriver", "TestDriver exit status signal");
|
&QTC::TC("testdriver", "TestDriver exit status signal");
|
||||||
$exit_status &= 127; # clear core dump flag
|
$exit_status = "SIG:" . WTERMSIG($exit_status);
|
||||||
$exit_status = "SIG:$exit_status";
|
|
||||||
}
|
}
|
||||||
else
|
elsif (WIFEXITED($exit_status))
|
||||||
{
|
{
|
||||||
&QTC::TC("testdriver", "TestDriver exit status number");
|
&QTC::TC("testdriver", "TestDriver exit status number");
|
||||||
$exit_status >>= 8;
|
$exit_status = WEXITSTATUS($exit_status);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$? = 0;
|
$? = 0;
|
||||||
@ -1533,9 +1573,24 @@ sub rmrf
|
|||||||
sub safe_pipe
|
sub safe_pipe
|
||||||
{
|
{
|
||||||
my ($cmd, $outfile) = @_;
|
my ($cmd, $outfile) = @_;
|
||||||
my $pid = open(C, "-|");
|
|
||||||
my $result = 0;
|
my $result = 0;
|
||||||
|
|
||||||
|
if ($^O eq 'MSWin32')
|
||||||
|
{
|
||||||
|
my @cmd = @$cmd;
|
||||||
|
my $cmd_str = shift(@cmd);
|
||||||
|
while (@cmd)
|
||||||
|
{
|
||||||
|
my $arg = shift(@cmd);
|
||||||
|
$cmd_str .= " \"$arg\"";
|
||||||
|
}
|
||||||
|
$cmd_str .= " > $outfile 2>&1";
|
||||||
|
$result = system($cmd_str);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
my $pid = open(C, "-|");
|
||||||
|
|
||||||
if ($pid)
|
if ($pid)
|
||||||
{
|
{
|
||||||
# parent
|
# parent
|
||||||
@ -1556,6 +1611,7 @@ sub safe_pipe
|
|||||||
open(STDERR, ">&STDOUT");
|
open(STDERR, ">&STDOUT");
|
||||||
exec(@$cmd) || die +__PACKAGE__, ": $cmd->[0] failed: $!\n";
|
exec(@$cmd) || die +__PACKAGE__, ": $cmd->[0] failed: $!\n";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$result;
|
$result;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user