| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
This fixes a potential memory leak, and makes the behaviour of
notmuch_database_load_config (somewhat) consistent with
n_d_{open,create} with config.
|
|
This is a bit different than n_d_{open,create}_with_config, since
there are several non-zero status codes where we do want to return a
non-NULL database structure.
|
|
This code previously relied on _finish_open to free the notmuch struct
on errors (except for the case of database == NULL, which was a
potential double free). When we removed those frees from _finish_open,
we introduced a (small) memory leak.
In this commit, fix the memory leak, and harmonize the on-error
behaviour with n_d_open_with_config.
|
|
It seems sensible to harmonize the behaviour with
n_d_open_with_config. In this commit we just assert the desired
behaviour.
|
|
During refactoring for 0.32, the code that set notmuch=NULL on various
errors was moved into _finish_open. This meant that the the code which
relied on that to set *database to NULL on error was no longer
correct. It also introduced a potential double free, since the notmuch
struct was deallocated inside _finish_open (via n_d_destroy).
In this commit we revert to "allocator frees", and leave any cleanup
to the caller of _finish_open. This allows us to get back the
behaviour of setting *database to NULL with a small change. Other
callers of _finish_open will need free notmuch on errors.
|
|
The documentation claims that the database will be set to NULL in this
case, but it is currently not happening. Based on a reproducer [1]
from Austin Ray.
[1]: id:20211021190401.imirxau2ewke6e2m@athena
|
|
This should be treated as fatal by callers, since we didn't succeed in
opening a Xapian database.
|
|
Thanks to jrm on IRC for finding the typo.
|
|
This is required when NOTMUCH_CONFIG has been unset, and is harmless
otherwise.
|
|
|
|
|
|
|
|
|
|
|
|
Looks like a find/replace error in e722b4f4
|
|
Enable the s-expression query parser in Debian.
|
|
|
|
For now putting it in the apt-get line will cause complaints about
missing packages for too many people.
|
|
This is mostly to pacify the release checks. NEWS will be filled in
during the release process.
|
|
One new function (and an enum) was added to the API/ABI.
|
|
|
|
Start release process for 0.34.
|
|
This was missed in the series that added the sexp-query parser and
docs.
|
|
In order to make it easier to keep the whitespace consistent in the
configure script, use the same style defined in devel/STYLE for
C/C++.
Specifically, a line should begin with zero or more tabs followed
by fewer than eight spaces.
Presumably this will be no more difficult for people editing configure
than for people editing the C and C++ code.
|
|
'check-notmuch-commit' is an updated version of a script I have been
using (although not always as consistently as I should) before sending
patches to the list.
Although it requires a bit more tooling, encouraging people to use
check-notmuch-commit might reduce the number of round trips to the
list for style nitpicks.
|
|
As discussed at [1] we have received reports that the implicit check
using cffi.FFI().verify() is not reliable in all environments. Since
we already use pkg-config, and the python dev package should include a
.pc file [2], add an extra check using pkg-config. On at least
Debian, we have to know which version of python dev files with are
looking for, so calculate that first.
[1]: id:87im1g35ey.fsf@tethera.netid:87im1g35ey.fsf@tethera.net,
[2]: checked on Debian and Fedora
|
|
notmuch 0.33.2 release
|
|
|
|
|
|
|
|
As reported in id:87h7pxiek3.fsf@tethera.net, the previous version of
the test is flaky. There is some so-far undebugged interaction between
openssl and gpgsm that causes the keys to fail to import. As a
potential workaround, use the key as exported by gpgsm, and eliminate
openssl from this particular pipeline.
|
|
New customizable variable, notmuch-tree-thread-symbols, that allows
tweaking of how trees in a forest are represented. For instance, one
can now choose to use an hyphen rather than a white space as a prefix,
or replace the character(s) used to draw arrows.
Amended-By: db; delete errant '3'
|
|
These work thanks to the previous wrapping of process creation
primitives.
|
|
Provide safe working directory
|
|
Somewhat predictably, the other code path in
notmuch-call-notmuch--helper also needs to be fixed.
|
|
Provide a safe working directory.
|
|
(At least) notmuch-start-notmuch needs to be updated to set a safe
working directory.
|
|
As with notmuch--process-lines, initial purpose is to provide a safe
binding for default-directory. This is enough to make notmuch-hello
robust against non-existent or corrupt values default-directory, but
probably not other views.
|
|
Initially just set the working directory, to avoid (the implicit)
call-process crashing when the default-directory points to a
non-existent location.
Use of a macro here is over-engineering for this change, but the same
change needs to be applied to several other process creation
primitives.
|
|
This replicates the problem reported in Debian bug #922536.
|
|
Because of the way emacs reports errors, a test form can crash and not
change the main buffer. To work around this, capture both signalled
errors and any other messages.
|
|
notmuch 0.33.1 release
|
|
In principle these tests should pass now.
|
|
|
|
|