about summary refs log tree commit homepage
path: root/lib/PublicInbox/Isearch.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-05-06 22:40:03 +0000
committerEric Wong <e@80x24.org>2023-05-07 21:45:14 +0000
commitbe2a0a353d60a70450945048b6ed7be1d34ed2b7 (patch)
tree57647ead4710cfa9b569280b025b809522f9e0f3 /lib/PublicInbox/Isearch.pm
parente71190ef4081417172da9cd07ec592a4ef7accf4 (diff)
downloadpublic-inbox-be2a0a353d60a70450945048b6ed7be1d34ed2b7.tar.gz
While IMAP UIDs are specified as 32-bit in RFC 3501, there's no
reason we can't support 64-bit article numbers on our end when
the time comes.  Neither NNTP nor POP3 have the 32-bit
limitation, even, so it's not inconceivable that IMAP will drop
that limitation at some point, too.
Diffstat (limited to 'lib/PublicInbox/Isearch.pm')
-rw-r--r--lib/PublicInbox/Isearch.pm9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/PublicInbox/Isearch.pm b/lib/PublicInbox/Isearch.pm
index 2b45e08e..5cbc36fd 100644
--- a/lib/PublicInbox/Isearch.pm
+++ b/lib/PublicInbox/Isearch.pm
@@ -1,12 +1,11 @@
-# Copyright (C) 2020-2021 all contributors <meta@public-inbox.org>
+# Copyright (C) all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 
 # Provides everything the PublicInbox::Search object does;
 # but uses global ExtSearch (->ALL) with an eidx_key query to
 # emulate per-Inbox search using ->ALL.
 package PublicInbox::Isearch;
-use strict;
-use v5.10.1;
+use v5.12;
 use PublicInbox::ExtSearch;
 use PublicInbox::Search;
 
@@ -48,8 +47,8 @@ SELECT MAX(docid) FROM xref3 WHERE ibx_id = ? AND xnum >= ? AND xnum <= ?
                 $r[1] = $sth->fetchrow_array;
                 if (defined($r[1]) && defined($r[0])) {
                         $opt{limit} = $r[1] - $r[0] + 1;
-                } else {
-                        $r[1] //= 0xffffffff;
+                } else { # these are fed to SQLite
+                        $r[1] //= '0x7'.('f'x15); # string for some 32-bit Perl
                         $r[0] //= 0;
                 }
                 $opt{uid_range} = \@r;