From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.2 required=3.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF shortcircuit=no autolearn=ham autolearn_force=no version=3.4.6 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id B46381F489 for ; Fri, 7 Apr 2023 12:40:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=80x24.org; s=selector1; t=1680871254; bh=lkD2BWTRArB2WLRp4IkYDLXk3ZZAFGeiZ09q6ouFaas=; h=From:To:Subject:Date:In-Reply-To:References:From; b=3wlf2DSsSJHIAkG6PfldGNg81NbI/DUcCO0NzDH54LtopfE5jKEqbULSi0HRdljGI JDJFPJHSl76Lzut0rXLJJ+zAp3Cv2HsusTh8JZKyjo2Ma3agfjhlSE5/sWU7j5qoBB GwjWQuvjmURGXeTcRP6K0QqRDUqtjgmjTB4LPGXw= From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 5/6] searchidx: use vstring to improve readability Date: Fri, 7 Apr 2023 12:40:52 +0000 Message-Id: <20230407124053.2233988-6-e@80x24.org> In-Reply-To: <20230407124053.2233988-1-e@80x24.org> References: <20230407124053.2233988-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: Perl has native `vstring' encoding for vector (or version) strings, make use of it instead of relying on difficult-to-read hex versions and integer shifts. --- lib/PublicInbox/SearchIdx.pm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/PublicInbox/SearchIdx.pm b/lib/PublicInbox/SearchIdx.pm index 511dd4d6..496cea05 100644 --- a/lib/PublicInbox/SearchIdx.pm +++ b/lib/PublicInbox/SearchIdx.pm @@ -114,15 +114,15 @@ sub load_xapian_writable () { *sortable_serialise = $xap.'::sortable_serialise'; $DB_CREATE_OR_OPEN = eval($xap.'::DB_CREATE_OR_OPEN()'); $DB_OPEN = eval($xap.'::DB_OPEN()'); - my $ver = (eval($xap.'::major_version()') << 16) | - (eval($xap.'::minor_version()') << 8) | - eval($xap.'::revision()'); - if ($ver >= 0x10400) { + my $ver = eval 'v'.join('.', eval($xap.'::major_version()'), + eval($xap.'::minor_version()'), + eval($xap.'::revision()')); + if ($ver ge 1.4) { # new flags in Xapian 1.4 $DB_NO_SYNC = 0x4; $DB_DANGEROUS = 0x10; } # Xapian v1.2.21..v1.2.24 were missing close-on-exec on OFD locks - $X->{CLOEXEC_UNSET} = 1 if $ver >= 0x010215 && $ver <= 0x010218; + $X->{CLOEXEC_UNSET} = 1 if $ver ge v1.2.21 && $ver le v1.2.24; 1; }