Public bug reported:

This is the same as https://github.com/paul-j-lucas/swishxx/issues/1,
and though the github code seems to have diverged from the source used
for this package, the same problem seems to remain.  See that bug report
for simple steps to reproduce (with appropriate renaming of `index` to
`index++`).

Namely, if `index++` is used with a config file `swish++.conf`, which
contains one or more `FilterFile` patterns, and a filename matches and
is transformed to a decoded file whose name also matches a `FilterFile`
pattern, then the program may crash.  I have been seeing this happen on
my system because of a daemon run by `dhelp` which invokes `index++` on
a bunch of files, including some like
`/usr/share/doc/bzip2/manual.pdf.gz`, which results in 2 decoding steps
to yield text to be indexed.

The crash happens because a `char const*` pointer to the internals of a
local `std::string` variable is returned to the caller by certain
functions.  As the variable is no longer valid after the function call
returns, whether the pointer works or not is a gamble.  In the case of a
file name like `foo.pdf.gz`, the `swish++.conf` file used by `dhelp`
will hit the bug.  This is not a misuse, as the example config file in
`/usr/share/doc/swish++/examples/swish++.conf` also contains similar
`FilterFile` patterns.

I have a fix based on the more recent code at `https://github.com/paul-
j-lucas/swishxx`, with a pull request pending there.  This .dpkg is not
built directly from the github code, but it looks similar enough that
the single commit available at https://github.com/paul-j-
lucas/swishxx/pull/2/commits/1278d000c8161db72e56a72103d755a3547c00b9
probably would fix this problem here.

ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: swish++ 6.1.5-6build1
ProcVersionSignature: Ubuntu 6.14.0-1015.15-oem 6.14.11
Uname: Linux 6.14.0-1015-oem x86_64
ApportVersion: 2.28.1-0ubuntu3.8
Architecture: amd64
CasperMD5CheckResult: pass
CurrentDesktop: ubuntu:GNOME
Date: Sun Nov 16 21:23:05 2025
InstallationDate: Installed on 2025-09-13 (64 days ago)
InstallationMedia: Ubuntu 24.04.3 LTS "Noble Numbat" - Release amd64 
(20250805.1)
SourcePackage: swish++
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: swish++ (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug noble third-party-packages

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2131642

Title:
  index++ crashes on files matching multiple filters

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/swish++/+bug/2131642/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to