1
0
mirror of https://github.com/djcb/mu.git synced 2024-06-22 07:06:48 +02:00
Commit Graph

471 Commits

Author SHA1 Message Date
djcb
a81270583f Add unit-test for multi-to/cc recipients
To check for the report in Issue #826.
2016-05-15 16:21:20 +03:00
Jun Hao
f998a0ad1e mu: expose content id to attachment plist 2016-05-07 09:07:11 +08:00
djcb
c46dda206f mu: fix a few mem leaks 2016-05-06 22:08:12 +03:00
djcb
66f205f6c5 mu: improve filename escaping
Sanitize attachment-names by replacing all control characters, '/' and
':'' by '-', but leave spaces alone.
2016-03-15 06:59:35 +02:00
djcb
acd00a0b3f mu: add user-agent property to msg plist
Add a user-agent property to the full message sexps (i.e., the ones
available in mu4e-view). This property contains either the User-Agent or
X-Mailer string (and is absent otherwise)
2016-03-14 22:53:42 +02:00
djcb
68f5dc3973 mu: Change default max msg size to 500 Mb
Seems people are getting really big mails these days, so let's up the
default (which is also what mu4e uses) to 500 Mb (which should be enough
for everyone, always)
2016-03-13 19:07:49 +02:00
djcb
775eb3f715 mu: write contacts-cache a bit sooner
Write the changes to the cache file after any indexing operation, so `mu
cfind` gets new contacts a bit sooner.
2016-02-21 19:48:21 +02:00
djcb
02e26c9cb4 mu: attachment names are already quoted
Fixes #796.
2016-02-15 20:14:24 +02:00
djcb
8d4b866383 Fix some compiler warnings 2016-02-14 12:13:11 +02:00
Nicolas Richard
f9d174af57 mu: escape the name of the part 2016-02-10 15:03:31 +01:00
djcb
413d0e1f49 fix make-dist
Silence a few tests that pass, but not with make-dist. Obviously, this
needs some more investigation.
2016-01-20 20:18:07 +02:00
djcb
02620af4c2 mu/mu4e: improve in contacts completion
mu: cleanup server side; make sure not to loose 'personal' flag when
    seeing same contact in non-personal context
mu4e: tweak the sorting algorithm a bit to take the personal flag into
    account
2015-12-30 15:33:27 +02:00
djcb
b21eabf954 mu: overwrite duplicate target files
over write target files when moving (when they seem to be the
same). Should make the case where you have copies a bit smoother.
2015-12-24 16:06:51 +02:00
Ævar Arnfjörð Bjarmason
f7245d2372 mu-store: Silence confusing code that's throwing a clang warning
Doing:

    !access(...) == 0

Is equivalent to:

    (!access(...)) == 0

Not:

    !(access(...) == 0)

And throws this warning under clang:

    mu-store.cc:77:6: warning: logical not is only applied to the left hand
    side of this comparison [-Wlogical-not-parentheses]
            if (!access(xpath, F_OK) == 0) {
                ^                    ~~
    mu-store.cc:77:6: note: add parentheses after the '!' to evaluate the
    comparison first
            if (!access(xpath, F_OK) == 0) {
                ^
                 (                       )
    mu-store.cc:77:6: note: add parentheses around left hand side expression
    to silence this warning
            if (!access(xpath, F_OK) == 0) {
                ^
                (                   )

It ends up doing what the author intended anyway since access() returns
-1 on error, and !-1 == 0, but just do the more obvious check and check
that we don't get 0 here with !=.
2015-12-15 12:40:40 +01:00
djcb
3cf96899ef mu: decode mailing-list headers
MIME-decode mailing list headers, too. Also add a unit test. This fixes
issue #728.
2015-12-15 07:21:26 +02:00
djcb
6df9322257 Fix typo near get_new_basename
And clear op the function a bit.
2015-11-18 15:55:34 +02:00
djcb
539bd9be19 Fix message file creation
Make sure we 0-pad the numeric parts in message file names; this was
breaking some unit test.
2015-11-18 09:50:36 +02:00
djcb
fe8b3430c6 mu: optimize indexing (get_uid_term)
Some users were report seeing get_uid_term high in the profiles; so
optimize this:

- make mu_util_get_hash a static inline function (used by get_uid_term)
- don't use 'realpath' in get_uid_term, seem that's the main culprit
- some slight faster string handling there too.
2015-11-17 10:55:56 +02:00
djcb
50d25ce0e0 mu: use '.msgpart' as extension
We were using '.part', but some desktop software interprets that as a
partial download.
2015-10-24 11:45:50 +03:00
djcb
0678d31056 mu: special-case text/calendar parts
Set the name for (otherwise unnamed) mime-parts of type text/calendar to
"vcal-<n>.vcs"; this allows for easier processing with external tools.
2015-10-21 08:06:40 +03:00
djcb
67f74d44b0 cosmetic 2015-10-07 10:34:55 +03:00
djcb
a350e2047d Change format for filenames
It seems some tools try to interpret the filename of message files,
even though they shouldn't:
   "Do not try to extract information from unique names."

In particular, they seem to interpret the first part of the name (before
the first dot) as the # of seconds since the Unix epoch (ie.,
time(NULL)). That's not what mu/mu4e put there.

So, let's conform a bit more to the expected filename (as per the
maildir spec), so we're not confusing those tools.
2015-10-02 17:43:38 +03:00
Dirk-Jan C. Binnema
4774429ad6 Merge pull request #668 from ptroja/minor
Minor whitespace and comment fixes
2015-09-26 10:29:11 +03:00
Adam Sampson
b44039eda9 Ensure tests have unique names.
glib 2.46 complains if this isn't the case:
(test-mu-str:28790): GLib-ERROR **: duplicate test case path: /mu-str/mu-str-esc-to-list
2015-09-23 12:01:19 +01:00
djcb
518b160025 mu: fix make distcheck
We were not including some of the test files in the tarballs; add them.
2015-09-22 12:03:44 +03:00
Piotr Trojanek
d35d21a812 Misleading comment removed
Removed a comment which seemed to be copy-pasted from
add_terms_values_str. It did not applied to add_terms_values_msgid.
2015-09-22 09:09:39 +01:00
Piotr Trojanek
804a25d668 minor whitespace fixes 2015-09-22 09:09:39 +01:00
djcb
fd557aeac8 mu: add in-reply-to/references to non-body sexp
Add the in-reply-to and references fields to the header-only sexps.
2015-07-05 20:46:11 +03:00
attila
a0640a0532 Fix call to c_str() that sometimes dumps core on OpenBSD i386-current
The core dump only seems to occur if mu4e-headers-include-related is
set to t.

Apparently, std::string's c_str() method is confusing to many
people, c.f.
  http://stackoverflow.com/questions/22330250/how-to-return-a-stdstring-c-str

The answer seems to be that the pointer c_str() returns may not be
valid past the current statement; returning it, or even using it
subsequently can have you sending a wild pointer into e.g. g_strdup().

In short, it seems idioms like this are okay:

    return g_strcmp0 (s1.c_str(), s2.c_str()) < 0;

Whereas idioms like this are not:

    const char *msgid (iter->msgid().c_str());

    return msgid ? g_strdup (msgid) : NULL;

At least in my environment by the time we get to g_strdup() the
pointer returned by c_str() is wild and points at garbage.  Since
g_strdup() returns NULL if passed NULL, it seems collapsing it into a
single line is not only possible but necessary.

I've looked at all of the calls to c_str() in mu and it appears to
me this was the one remaining one that was bad.
2015-07-02 15:14:29 -05:00
attila
f5a5cde965 Fix core dump in mu-server (at least) for cmd:extract index:0 ... 2015-06-30 16:28:26 -05:00
djcb
7eb244b3b0 mu: don't use __FUNCTION__, use __func__
__FUNCTION__ is deprecated and gives compilation warnings. __func__ is
standardized in c99.
2015-04-22 21:06:31 +03:00
djcb
455582401e date-parsing: don't lowercase date range strings
Allow them to be received unmolested in mu_date_parse_hdwmy
2015-03-22 10:24:14 +02:00
djcb
3c104dfdf4 mu: deactivate unit test for mu_util_dir_expand
The test fails in some cases with interesting directory setups, although
the function does work. So de-activate the test for now, until we come
up with a better one.
2015-03-15 13:26:56 +02:00
djcb
9d8dfcaedd Merge branch 'master' of github.com:djcb/mu 2015-03-06 00:14:59 +02:00
djcb
baebd53fb8 Fix a core dump under OpenBSD
Based on a patch by StAlphonsos
2015-03-06 00:12:34 +02:00
djcb
d3457ec56c fix compiler warning 2015-02-21 14:18:24 -08:00
Sebastien Le Maguer
2e027c57ed fix for #587 2015-02-20 14:50:11 +01:00
Foivos S. Zakkak
3cfb5b0795 Add FIXME comment for lost "signed" flag 2015-02-16 02:12:16 +02:00
Foivos S. Zakkak
edd463186e Fix handling of only signed messages 2015-02-16 01:56:11 +02:00
Foivos S. Zakkak
8456c1c2dc Fix #280
Since `parent` is not really used as a parent, I use it as the last
visited encrypted part while going down the parts-tree.

At the decryption of a part (`mu_msg_crypto_decrypt_part`) I check,
through the GMimeDecryptResult, for signatures (`check_decrypt_result`)
and add them to the part (`tag_with_sig_status`).  Any nested parts hold
that encrypted part as their parent.  Finally at `handle_part`, for each
part I check if it a descendent of an encrypted part.  If so, I proceed
checking for signatures and adding them to the `msgpart`.
2015-02-16 01:19:32 +02:00
djcb
c6dd538975 mu-msg-part.c: some cosmetic changes 2014-10-19 11:38:49 +03:00
Foivos S. Zakkak
8f8bc52023 Revert "Do not handle signature parts after verification"
This reverts commit 6e9b9ad2d0.

Unfortunately the reverted commit breaks the Signature field for
encrypted and, at the same time, signed messages.

TODO: details button in the Signatures field does not work for such
cases because the signature is encrypted.

Conflicts:
	lib/mu-msg-part.c
2014-10-19 03:39:32 +03:00
Foivos S. Zakkak
2d843ca887 Add Decryption field
Add a decryption field of the form

Decryption: 2 part(s) decrypted 1 part(s) failed

Meaning that 2 encrypted mime parts where successfully decrypted and 1
part failed.  Note that the number 2 refers to the number of
successfully decrypted mime parts and not the number of successfully
decrypted encryptes multiparts, i.e., if an encrypted multipart
contains 4 parts and decryption is successful the field will be

Decryption: 4 part(s) decrypted

TODO: Add details button listing the names and indexes of the
decrypted (or not) mime-parts
2014-10-19 03:27:58 +03:00
Dirk-Jan C. Binnema
ae75060b6a Merge pull request #498 from zakkak/skip_signatures
Do not handle signature parts after verification
2014-10-18 13:16:44 +03:00
Foivos S. Zakkak
6e9b9ad2d0 Do not handle signature parts after verification
Since signatures are not listed as attachments there is no reason to
handle them after the verification.
2014-10-18 12:44:33 +03:00
Foivos S. Zakkak
a79cd23cd1 Improve decrypt failure handling
On failure to decrypt, list the encrypted part as an attachment
2014-10-18 12:33:20 +03:00
Foivos S. Zakkak
c40522b632 Fix #494. Start indexing from 1 instead of 0 2014-10-17 15:53:32 +03:00
Dirk-Jan C. Binnema
ee7eb9c142 Merge pull request #487 from zakkak/master
Fix encrypted multiparts and attachments indexing
2014-10-14 11:46:39 +03:00
Foivos S. Zakkak
a6a58b65f1 Remove left over argument from merge 2014-10-13 13:27:47 +03:00
djcb
ace922317f threader: try to handle pathless messages 2014-10-13 09:56:39 +03:00
Foivos S. Zakkak
6f50298667 Fix encrypted multiparts and attachments indexing
Pull request #483 does not handle encrypted multiparts properly.  It
used to just verify the signature and not process the parts of the
multipart.  This commit resolves this issue.

Additionally it did not index attachments properly and in the case of a
multipart directly containing more than one multiparts resulted on non
unique indexing of attachments/parts.  This commit resolves this issue
as well.
2014-10-12 22:43:58 +03:00
djcb
ac023b74a7 mu-msg-crypto: give better error when gpg is not found
also fixes some other warnings
2014-10-11 14:05:08 +03:00
djcb
99f08c50c4 mu-threader: debugging for some reported problem in find_or_create 2014-10-11 14:04:17 +03:00
Foivos S. Zakkak
51037be7fb Fix #186 Part 3
This patch fixes the attachment extraction (open, save, temp) when using
`mu4e`.  `mu4e` used to not notify the mu-server about the
mu4e-decryption-policy.  As a result mu-server did not decrypt the
attachments for extract, open, or temp.
2014-10-10 18:34:57 +03:00
Foivos S. Zakkak
29e53d2eba Fix gpg decryption (#186)
After a multipart/encrypted part gets decrypted the result is usually a
`multipart/mixed` part (see enigmail).

Before this commit mime multiparts where handled only by
`g_mime_message_foreach`.  As a result the decrypted mime multiparts
where not processed.

This patch handles mime multiparts explicitly by removing the
`g_mime_message_foreach` invocations.  This might come at the cost of
reduced maintainability, in the case of radical gmime changes.  However,
gmime is pretty stable and that scenario is highly unlikely.

TODO: After decryption make any attachments available
2014-10-10 07:48:24 +03:00
djcb
ff25bf1a25 Don't use g_clear_pointer yet, it's too new.
Do it the old way.
2014-09-26 15:22:07 +03:00
djcb
3c7061338d Rework getting database version (#469)
It seems we don't get the correct database version in some case with
some compilers, optimization flags. Suspecting some stale ->c_str().
2014-09-23 07:32:39 +03:00
Jakub Sitnicki
c9cb27be11 mu: Make mu_container_splice_grandchildren() do only one thing
Don't kill the resultant childless container when promoting its
children. This unifies the behavior of mu_container_splice_*()
functions.
2014-08-15 10:11:21 +02:00
Jakub Sitnicki
bb0cc542b8 mu: Prune empty containers from the root set after splicing their children
When the root set contains only one empty container with one child
first promote the child container to the root set and only then
remove the empty parent container so that the root set never goes
empty.

Also make mu_container_splice_children() do only one thing, that is
promote one container's children to be another container's siblings.
The resultant childless container is no longer removed by this
function.

Fixes #460.
2014-08-15 10:10:39 +02:00
Jakub Sitnicki
ede481d4c0 mu: Test splicing child containers when there is only one thread
This test reproduces a regression introduced by commit 97101f1f82
("mu: Prune empty container when an only child gets promoted to the
root set").

When the results of a mu-find query contain only a one thread:

$ mu find --threads --fields 'd s' ''
Sat 09 Aug 2014 07:00:00 PM CEST [mu4e] Test Message
  `-> Sat 09 Aug 2014 08:30:00 PM CEST Re: [mu4e] Test Message

... and we narrow down the query in such a way that the root message
gets excluded, then a crash occurs:

$ mu find --threads --fields 'd s' '' date:2014-08-09/20:00..2014-08-09/21:00
**
ERROR:mu-container.c:117:mu_container_append_siblings: assertion failed: (c)
Aborted (core dumped)

Reported-by: Josiah Schwab <jschwab@gmail.com>
2014-08-15 10:10:39 +02:00
Jakub Sitnicki
32f5c8b1f6 mu: Sort containers by comparing their subtree leaders
Traverse the container tree depth first and for each container find
the node in the subtree rooted at this container which comes first in
the descending sort order. Remember it as the subtree leader. Then,
while sorting siblings, compare their subtree leaders instead of the
sibling containers themselves.

IOW, make threads containing the newest message float to the top when
sorting by date in the descending order.

There is no significant performance degradation when sorting a
mailbox with ~16k messages:

$ mu find maildir:/INBOX | wc -l
16503

Current state:

$ perf stat --event=task-clock --repeat=10 -- \
  mu find maildir:/INBOX -n 1 -t > /dev/null

 Performance counter stats for 'mu find maildir:/INBOX -n 1 -t' (10 runs):

       1231.761588      task-clock (msec)         #    0.996 CPUs utilized            ( +-  1.02% )

       1.236209133 seconds time elapsed                                          ( +-  1.08% )

With patch applied:

$ perf stat --event=task-clock --repeat=10 -- \
  mu find maildir:/INBOX -n 1 -t > /dev/null

 Performance counter stats for 'mu find maildir:/INBOX -n 1 -t' (10 runs):

       1459.883316      task-clock (msec)         #    0.998 CPUs utilized            ( +-  0.72% )

       1.462540088 seconds time elapsed                                          ( +-  0.77% )

This implements https://github.com/djcb/mu/issues/164.
2014-07-15 07:25:51 +02:00
Jakub Sitnicki
619fb86885 mu: Update container's pointer to last sibling when converting from a list 2014-07-15 07:25:51 +02:00
Jakub Sitnicki
97101f1f82 mu: Prune empty container when an only child gets promoted to the root set 2014-07-15 07:25:51 +02:00
Jakub Sitnicki
f724f4a57d mu: Consider an empty container to be less than anything else
Reasoning being that, arguably, it is the least surprising thing to do.
2014-07-15 07:25:50 +02:00
Jakub Sitnicki
dc3be515af mu: Extract function for comparing two containers 2014-07-15 07:25:50 +02:00
Jakub Sitnicki
d93b8135a6 Revert "* bugfix for issue 164"
This reverts commit c7b28419ab.

The reverted change fails to sort threads correctly when there is an
empty container, serving as a parent to orphan messages, in the thread
tree as demonstrated by the test in commit f49296759e ("tests:
threads: Test if orphan message promotes its thread").

Also, the reverted commit introduces a performance hit. The time it
takes to sort threads has increased roughly by a factor of 4.

Current state:

$ perf stat --event=task-clock --repeat=10 -- \
  mu find maildir:/INBOX -n 1 -t > /dev/null

 Performance counter stats for 'mu find maildir:/INBOX -n 1 -t' (10 runs):

       4967.692519      task-clock (msec)         #    1.000 CPUs utilized            ( +-  0.14% )

       4.969247128 seconds time elapsed                                          ( +-  0.14% )

With the reverted patch applied:

$ perf stat --event=task-clock --repeat=10 -- \
  mu find maildir:/INBOX -n 1 -t > /dev/null

 Performance counter stats for 'mu find maildir:/INBOX -n 1 -t' (10 runs):

       1231.761588      task-clock (msec)         #    0.996 CPUs utilized            ( +-  1.02% )

       1.236209133 seconds time elapsed                                          ( +-  1.08% )

The benchmark was ran on a maildir with ~16k messages:

$ mu find maildir:/INBOX | wc -l
16503
2014-07-15 07:24:56 +02:00
Jakub Sitnicki
856a651d38 tests: threads: Test if grandchild message promotes only its subthread 2014-07-15 07:24:47 +02:00
Jakub Sitnicki
cbfe28b885 tests: threads: Test if grandchild message promotes its thread 2014-07-15 07:24:21 +02:00
Jakub Sitnicki
b0357a2d7a tests: threads: Test if child message doesn't promote its thread 2014-07-15 07:23:53 +02:00
Jakub Sitnicki
c5d4f7f338 tests: threads: Test if 2nd child message promotes its subthread 2014-07-15 07:22:53 +02:00
Jakub Sitnicki
22927a7dcf tests: threads: Test if 1st child message promotes its thread 2014-07-15 07:22:11 +02:00
David C Sterratt
f0510fbf35 Potential fix for issue #433: make check fails on Scientific Linux 6 2014-06-05 14:07:13 +01:00
Alex Bennée
29a16d7ae1 lib/mu-str.c: squash white space ctrl chars to spaces
When processing multiple lines for a subject line separated by TAB
characters we don't want to eliminate the control character totally but
replace it with a simple space. I've left the control handling as before
for non-white space characters.

Signed-off-by: Alex Bennée <alex@bennee.com>
2014-05-06 10:04:26 +01:00
djcb
0c18a0b816 * mu: store date as 0 if it does not exist; this allows searching 2014-03-22 18:51:39 +02:00
omfgroflbbq
c7b28419ab * bugfix for issue 164 2014-03-20 16:22:50 +01:00
djcb
3edf950fc2 * mu_str_asciify_in_place: fix test to decide whether to replace 2014-02-15 13:20:17 +02:00
djcb
599d641034 * lib: fix broken unit test 2014-01-15 21:27:18 +02:00
djcb
0277967b53 * mu-store-read: cleanup function a bit
(fruitlessly trying to track down
       https://code.google.com/p/mu0/issues/detail?id=80)
2013-12-21 10:14:31 -08:00
djcb
c48d290699 * minor update 2013-12-21 10:01:04 -08:00
djcb
0364433cc1 * minor 2013-12-01 20:21:44 +02:00
djcb
c36030a086 * handle message-ids a bit specially, update unit tests 2013-10-13 20:05:29 +03:00
djcb
edfdef44a4 index: improve error message when file does not seem to be an email 2013-10-13 19:58:25 +03:00
djcb
c898265ee5 * use timegm instead of the tzset hack 2013-10-07 00:50:36 +03:00
djcb
cdb1af046f * fix the mu_util_fputs_encoded/bsd heisenbug
it seems g_locale_from_utf8 behaves a bit differently on bsd/macosx,
  causing a segfault (but when run under gdb!). this code path was hit
  for messages with encoding problems in non-utf8 locales
2013-09-07 18:39:00 +03:00
djcb
af55f4cf9e * update mu_date_str_to_time_t for macos
at macos this function /seemed/ to massively leak, when looking at the
  valgrind output on macos (but not linux). with this update, this
  leak(?) is gone.
2013-09-07 13:12:28 +03:00
djcb
827dfbecdb * mu-date: small optimization 2013-09-07 12:57:53 +03:00
djcb
13bad9a889 * better error message for some broken queries 2013-09-07 09:43:33 +03:00
djcb
c30ffeea72 * small cleanups (macos) 2013-08-25 20:05:57 +03:00
djcb
f89447e65c * mu_util_fputs_encoded: updated; perhaps helps with freebsd crash? 2013-08-14 21:59:31 +03:00
djcb
885554757a * mu: some improvement in script handling 2013-07-23 22:23:27 +03:00
djcb
b7324d5af6 * cleanup: drop gmime-2.4 support 2013-07-21 14:44:44 +03:00
djcb
b17f26537b * mu: unbreak unit test after flag changes (fixes #247) 2013-07-07 10:46:35 +03:00
djcb
312c3a4b20 * cosmetic 2013-07-03 21:56:42 +03:00
djcb
3c3cd31607 * mu-str: fix a leak 2013-07-03 21:56:04 +03:00
djcb
1fcedf742c * mu-mgs-store: support the MU_FLAG_LIST flag 2013-07-03 21:55:41 +03:00
djcb
3eb748737c * mu-msg-file: set the MU_FLAG_LIST flag, if the message looks like an ML-message 2013-07-03 21:55:17 +03:00
djcb
81c3e11c48 * mu-flags: add MU_FLAG_LIST, clean-up code a bit 2013-07-03 21:54:08 +03:00
djcb
7fe37334b5 * cosmetics 2013-06-24 22:44:36 +03:00
djcb
97909566df * mu-contacts, mu-msg-file: better deal with contacts with control chars 2013-06-24 22:42:18 +03:00
djcb
6783e448aa * mu-str: add mu_str_remove_ctrl_in_place 2013-06-24 22:41:34 +03:00
djcb
bfe74d1d11 * mu: add the backend for freq information for contacts 2013-06-16 23:02:19 +03:00
djcb
42604fee00 * lib: mu-contacts: store frequency 2013-06-16 13:14:39 +03:00
djcb
fa514435ea * merge branch 'master' of github.com:djcb/mu 2013-06-13 23:56:35 +03:00
djcb
13efc74793 * mu-query: better handle empty lhs/rhs in date intervals 2013-06-03 22:29:50 +03:00
djcb
844790a2df * lib: mu date: better handling of date fields in newer xapians 2013-06-01 07:40:15 -07:00
djcb
d57b109557 * mu-str: treat '..' in non-range fields differently 2013-06-01 06:07:29 -07:00
djcb
e7c63cee47 * update some unit tests 2013-05-30 06:15:22 -07:00
djcb
b136ca0411 * try harder to match special strings 2013-05-29 07:33:17 -07:00
djcb
e97ec2d51c * fix matching backslashes, add some tests 2013-05-27 05:49:43 -07:00
djcb
bdf7ca65c7 * test-mu-maildir: fix regexp 2013-05-27 05:48:19 -07:00
djcb
c50c0695e4 * fix CSV quoting (fields with commas) 2013-05-27 04:23:49 -07:00
djcb
3dae623879 * add mu_str_replace 2013-05-26 11:16:02 -07:00
djcb
ad6b3d8f0f * add unit test for the optional message file renaming 2013-05-25 19:28:40 +03:00
djcb
7cb3bb9e36 * lib: make renaming messages upon moving them optional 2013-05-25 19:27:54 +03:00
djcb
33e6bf0184 * mu-str: comment-out debug print 2013-05-23 07:47:39 +03:00
djcb
2ae389afe1 * typo 2013-05-22 00:07:01 +03:00
djcb
89bdaafb15 * create a new filename (basename) when copying 2013-05-22 00:06:10 +03:00
djcb
10b64bb654 * cosmetic 2013-05-21 08:05:14 +03:00
djcb
e70101f058 * lib: fix compiler warning 2013-05-20 05:15:11 +03:00
djcb
59f855b39b * lib: add mu_str_parse_arglist + unit tests 2013-05-20 05:14:35 +03:00
djcb
a2eef4fa41 * handle invalid utf8; fixes #211 (hopefully) 2013-05-15 21:36:27 +03:00
djcb
f270847182 * lib: fix body layout 2013-05-15 00:42:33 +03:00
djcb
00d0cb0f28 * the query parser update (few commits back) fixes #210 too, this is unit test for it. 2013-05-15 00:17:36 +03:00
djcb
f787f3b9ee * lib: cleanup header fields a bit more; fixes #209 2013-05-15 00:08:38 +03:00
djcb
24fa47dbef * cosmetics 2013-05-15 00:05:21 +03:00
djcb
50fc992ae2 * fix list parsing 2013-05-13 23:01:53 +03:00
djcb
4174ac7ed2 * fix a few compiler warnings 2013-05-13 22:30:27 +03:00
djcb
ba2a56a9dd * lib: fix list parsing 2013-05-13 00:26:14 +03:00
djcb
5d069e786f * lib: updates for mu-msg-field / mu-str updates 2013-05-13 00:03:47 +03:00
djcb
31c3c3cfda * mu-msg-fields.[ch]: cleanup a bit 2013-05-13 00:03:06 +03:00
djcb
ea67447a98 * some cleanups 2013-05-13 00:02:39 +03:00
djcb
d26f3c0bae * mu-str: simplify, cleanup string pre-processing functions 2013-05-13 00:01:49 +03:00
djcb
5c95a1851d * lib: update comment 2013-05-04 14:14:58 +03:00
djcb
057fa6430e * mu: fix duplicate detection 2013-04-30 21:53:16 +03:00
djcb
7d48ed53a7 * mu: (re)add special handling for '$' (fixes #193) 2013-04-28 21:54:25 +03:00
djcb
3327a5566f * minor 2013-04-18 20:31:42 +03:00
djcb
f8719ba263 * mu: treat as \ as special, too 2013-04-18 20:31:28 +03:00
djcb
55acd92bd9 * mu: fix some valgrind reports 2013-04-18 00:12:37 +03:00
djcb
88520e45ec * mu-store-write: fix small leak 2013-04-17 00:16:26 +03:00
djcb
a5001acff0 * mu: more 'fixing'/'massaging' of queries 2013-04-17 00:09:08 +03:00
djcb
8c0b7eb92a * mu-msg-part: don't free wrapper, we don't own it 2013-04-17 00:07:05 +03:00
djcb
7c53aa327c * mu: handle addresses thay go beyond xapian's max term length (fixes issue #183)
(we truncate them)
2013-04-09 22:01:36 +03:00
djcb
3dc98724b3 * mu: provide fake-msgids for messages without; this fixes the problem where e.g. draft messages
were not visible when using --include-related
2013-04-09 21:20:25 +03:00
djcb
21a216acd2 * cosmetic 2013-04-07 16:05:10 +03:00
djcb
26b184c710 * mu-store-priv: when rebuilding, remove the contacts-cache file, too 2013-04-07 16:04:49 +03:00
djcb
f19500a1eb * mu-str: fix potential leak 2013-04-07 16:04:20 +03:00
djcb
a8489dc048 * mu-msg: initialize potentially uninitialized var 2013-04-07 16:04:00 +03:00
djcb
4cfeb201af * mu-contacts: convert the domain part of ascii-domains to lowercase 2013-04-07 16:03:25 +03:00
djcb
1f24e224a9 * more more copyright year updates 2013-03-30 11:38:01 +02:00
djcb
855e81db99 * update copyright years 2013-03-30 11:32:07 +02:00