Proper ordering of destruction seems required to avoid segfaults at shutdown. --- lib/PublicInbox/ViewVCS.pm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/PublicInbox/ViewVCS.pm b/lib/PublicInbox/ViewVCS.pm index 63e503d..85edf22 100644 --- a/lib/PublicInbox/ViewVCS.pm +++ b/lib/PublicInbox/ViewVCS.pm @@ -26,6 +26,11 @@ my $hl = eval { PublicInbox::HlMod->new; }; +# we need to trigger highlight::CodeGenerator::deleteInstance +# in HlMod::DESTROY before the rest of Perl shuts down to avoid +# a segfault at shutdown +END { $hl = undef }; + my %QP_MAP = ( A => 'oid_a', B => 'oid_b', a => 'path_a', b => 'path_b' ); my $max_size = 1024 * 1024; # TODO: configurable my $enc_utf8 = find_encoding('UTF-8'); -- EW
Been hammering away with check-www-inbox on git@vger without problems, so I'll probably deploy this to the non-onion site soon... And maybe I'll set the non-.onion to use 216dark, too... Eric Wong (11): hval: add src_escape for highlight post-processing t/check-www-inbox: replace IPC::Run with PublicInbox::Spawn t/check-www-inbox: don't follow mboxes t/check-www-inbox: disable history solvergit: do not solve blobs twice viewvcs: avoid segfault with highlight.pm at shutdown css/216dark: add comments and tweak highlight colors solvergit: do not show full path names to "git apply" solvergit: avoid "Wide character" warnings solvergit: extract mode from diff headers properly solvergit: deal with alternative diff prefixes contrib/css/216dark.css | 14 ++++++------ lib/PublicInbox/Hval.pm | 8 ++++++- lib/PublicInbox/SolverGit.pm | 18 ++++++++++----- lib/PublicInbox/UserContent.pm | 14 ++++++------ lib/PublicInbox/ViewVCS.pm | 9 +++++++- t/check-www-inbox.perl | 42 +++++++++++++++++++++++++++++----- t/hval.t | 3 +++ 7 files changed, 80 insertions(+), 28 deletions(-) -- EW