Pierre Habouzit [Wed, 29 Nov 2006 23:27:54 +0000 (00:27 +0100)]
add m_dirname that implement a non broken libgen-like function.
Pierre Habouzit [Wed, 29 Nov 2006 21:21:16 +0000 (22:21 +0100)]
simplifications around mutt_is_message_type
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Wed, 29 Nov 2006 01:16:30 +0000 (02:16 +0100)]
post ? -post : 0
that was a good one
Pierre Habouzit [Wed, 29 Nov 2006 01:10:17 +0000 (02:10 +0100)]
various code simplifications.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Tue, 28 Nov 2006 23:55:06 +0000 (00:55 +0100)]
make some code yet more simple, using the VERY good semantics of snprintf
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Tue, 28 Nov 2006 22:36:01 +0000 (23:36 +0100)]
remove reallocs, free and fix makedoc compilation
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Tue, 28 Nov 2006 22:28:05 +0000 (23:28 +0100)]
that was in fact a memcpy, nice try
Julien Danjou [Tue, 28 Nov 2006 17:59:29 +0000 (18:59 +0100)]
Use good m_ functions, because it smell like a flower, version 2.
This is a whole bunch of update for using more m_* functions.
Some calculation should be checked, maybe I made some mistakes.
Not good at math.
There is also some _CHECKED__ comments removed because I got
my head checked by a jumbot jet.
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Tue, 28 Nov 2006 18:47:29 +0000 (19:47 +0100)]
"gpg-sign" is not a valid token, this was a typo.
also drop some very old mutt things, just use x-action, the rest will be
re-parsed, too bad.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Mon, 27 Nov 2006 09:49:09 +0000 (10:49 +0100)]
force rfc2047_parameters to be set to yes, and non configureable.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sun, 26 Nov 2006 23:23:52 +0000 (00:23 +0100)]
Use m_functions(), you'll be fresh-faced.
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 23:27:43 +0000 (00:27 +0100)]
remove a mutt-ng thing that makes no sense at all.
rework OPTWEED handling a bit.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 23:02:35 +0000 (00:02 +0100)]
lots of simplifications.
add pattern.h
always set strict_mime off, we want to do a MUA that understands other,
right ? just keep the parse of that option for now, to avoid barfing
hopelessly on old mutt's config files
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 22:16:24 +0000 (23:16 +0100)]
more automake stuff
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 22:13:15 +0000 (23:13 +0100)]
more tweaks and fixes.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 22:03:59 +0000 (23:03 +0100)]
build system tweaks.
update-po.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 21:58:49 +0000 (22:58 +0100)]
always build support for mixmaster.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 21:10:38 +0000 (22:10 +0100)]
some code simplifications.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sun, 26 Nov 2006 19:26:57 +0000 (20:26 +0100)]
Remove unused code
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sun, 26 Nov 2006 19:46:23 +0000 (20:46 +0100)]
Use m_strncmp instead of strncmp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sun, 26 Nov 2006 17:52:15 +0000 (18:52 +0100)]
m_strisempty is better, isn't it ?
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 17:40:06 +0000 (18:40 +0100)]
simplify mutt_write_references.
wibble
Pierre Habouzit [Sun, 26 Nov 2006 17:09:23 +0000 (18:09 +0100)]
make mutt_match_spam_list a generic rx function: rx_list_match2 that does
the same as rx_list_match + expand a template into the given buffer.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 16:38:21 +0000 (17:38 +0100)]
move more functions in file.c
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 16:31:33 +0000 (17:31 +0100)]
mutt_expand_file_fmt -> m_quotefile_fmt in file.c
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 26 Nov 2006 16:19:39 +0000 (17:19 +0100)]
wibble.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:19:03 +0000 (18:19 +0100)]
Use better error msgs for tempfile
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:19:02 +0000 (18:19 +0100)]
Better error msg in gpgme
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:19:01 +0000 (18:19 +0100)]
Use bette error msg too
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:19:00 +0000 (18:19 +0100)]
Replace mutt_perror with good error msgs
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:57 +0000 (18:10 +0100)]
Tag unused attributes
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:56 +0000 (18:10 +0100)]
Kill shadow declaratin of brk
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:55 +0000 (18:10 +0100)]
Tag unused and kill mktemp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:54 +0000 (18:10 +0100)]
Fix shadow declaration and tag unused attribute
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:53 +0000 (18:10 +0100)]
Mark unused attributes
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:52 +0000 (18:10 +0100)]
Mark flags as unused
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:51 +0000 (18:10 +0100)]
Kill another mktemp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:50 +0000 (18:10 +0100)]
mutt_*mktemp--
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:49 +0000 (18:10 +0100)]
Use m_tempfile and better errors msg
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:48 +0000 (18:10 +0100)]
Fix typo
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 17:10:47 +0000 (18:10 +0100)]
Use m_tempfile()
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 25 Nov 2006 01:01:36 +0000 (02:01 +0100)]
get the sloccount under 63000 lines :P
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 25 Nov 2006 00:58:27 +0000 (01:58 +0100)]
wibble
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 25 Nov 2006 00:53:36 +0000 (01:53 +0100)]
drop the stupid xterm.h header.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 25 Nov 2006 00:46:46 +0000 (01:46 +0100)]
various fixes, remove an adv_mktemp
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 25 Nov 2006 00:32:52 +0000 (01:32 +0100)]
fclose -> m_fclose
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sat, 25 Nov 2006 00:09:57 +0000 (01:09 +0100)]
Use m_tempfile instead of mutt_mktemp (again and again)
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 25 Nov 2006 00:10:19 +0000 (01:10 +0100)]
small fixes, style and cosmetics.
Julien Danjou [Fri, 24 Nov 2006 23:46:11 +0000 (00:46 +0100)]
Use m_tempfile instead of mutt_mktemp
And crypt_write is static
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 24 Nov 2006 23:52:37 +0000 (00:52 +0100)]
safe_fclose -> m_fclose, and is now inlined.
Pierre Habouzit [Fri, 24 Nov 2006 23:47:26 +0000 (00:47 +0100)]
revert bogus patch part.
Julien Danjou [Fri, 24 Nov 2006 23:22:42 +0000 (00:22 +0100)]
Clean up code and use m_tempfile instead of mutt_mktemp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 24 Nov 2006 23:24:40 +0000 (00:24 +0100)]
remove some mutt_mktemp
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 24 Nov 2006 23:01:43 +0000 (00:01 +0100)]
I'm such a fool
YES WE DO WANT TO WRITE IN OUR TEMPORARY FILES.
*g*
Pierre Habouzit [Fri, 24 Nov 2006 22:42:16 +0000 (23:42 +0100)]
small leftover
Julien Danjou [Fri, 24 Nov 2006 22:29:14 +0000 (23:29 +0100)]
Use m_tempfile instead of mutt_mktemp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Fri, 24 Nov 2006 22:29:13 +0000 (23:29 +0100)]
Use m_tempfile instead of mutt_mktemp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 24 Nov 2006 22:34:37 +0000 (23:34 +0100)]
mutt_mktemp--
Pierre Habouzit [Fri, 24 Nov 2006 15:31:33 +0000 (16:31 +0100)]
put old m_snsubst into file.c as m_file_fmt.
implement m_temp{fd,file} functions to replace mutt_(adv_)mktemp, that
work like that:
m_tempFOO(dst, dstlen, tmpdir, fmt).
it returns either a fd or a FILE* (check it's properly >= 0 or !NULL !!!)
and put the chose name in the buffer dst of size dstlen.
tmpdir is the directory where to create files.
fmp is a file format, where we strip any directory part, then use the
remains like that:
- if there is a %s specifier, fmt is used as a simple file format
specifier, and %s is substituted with a temporary file name.
- if there is no %s specifier, fmt is supposed to be a file name we
want to take as model, meaning we just want to copy its extension.
So if you pass "foo.jpg" as a fmt, the resulting file name will end
in .jpg
mark mutt_(adv_)?mktemp functions as obsolete, and currently
reimplement them with m_temp* functions as a proof of concept.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 24 Nov 2006 00:39:11 +0000 (01:39 +0100)]
fix completely braindead rfc2047 parsing, that choke on something as
stupid as:
=?UTF-8?Q?foobar??=
this is totally valid, and we choke on this because of the ? in that
string. it's not ambiguous, so deal with it correctly, and get "foobar?"
as a result instead of =?UTF-8?....?=
Pierre Habouzit [Sun, 19 Nov 2006 16:06:30 +0000 (17:06 +0100)]
fix regression in mutt_is_application_pgp \o/
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Sun, 19 Nov 2006 12:45:19 +0000 (13:45 +0100)]
Fix regression with comma handling in buffy
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 19 Nov 2006 02:13:55 +0000 (03:13 +0100)]
exit SPAM_LIST, just extend rx_t with the needed informations.
push some things into the rx lib.
horrors--.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sun, 19 Nov 2006 01:14:57 +0000 (02:14 +0100)]
move functions around.
replace mutt_expand_fmt with m_snsubst that has a more coherent API now.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sun, 19 Nov 2006 00:41:16 +0000 (01:41 +0100)]
simplify mutt_expand_path
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 22:51:45 +0000 (23:51 +0100)]
simplifications
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 22:16:36 +0000 (23:16 +0100)]
statics
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 22:10:19 +0000 (23:10 +0100)]
remove -Inntp
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 22:05:15 +0000 (23:05 +0100)]
small rewrites
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 21:09:47 +0000 (22:09 +0100)]
simplifications.
fix a bug in mutt_gen_msgid
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 21:01:19 +0000 (22:01 +0100)]
hide one more function
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 20:58:29 +0000 (21:58 +0100)]
details
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 20:53:00 +0000 (21:53 +0100)]
create the lib-mx now
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 20:34:47 +0000 (21:34 +0100)]
rework compress_info type a bit.
avoid ugly casts.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 20:16:58 +0000 (21:16 +0100)]
hide some useless things
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 18:15:58 +0000 (19:15 +0100)]
remove mx_{pop,nntp,imap}.[hc]
those prevented good modularization.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 17:45:50 +0000 (18:45 +0100)]
we always want to DOTLOCK mboxes.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 17:33:55 +0000 (18:33 +0100)]
remove useless things
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 17:19:58 +0000 (18:19 +0100)]
*oops* I forgot to add those.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 17:10:36 +0000 (18:10 +0100)]
drop the horrible list2_t for good.
replace them with ad-hoc typed arrays since buffy quite need'em
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 16:07:30 +0000 (17:07 +0100)]
I don't care about systems where atimes are broken.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 14:25:19 +0000 (15:25 +0100)]
list2_t --
also note that the way synonyms are handled is completely naive.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 14:14:09 +0000 (15:14 +0100)]
make the dump be an almost valid .rc file.
add candy for vim users, you can now vi <(madmutt -t) :]
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 14:10:59 +0000 (15:10 +0100)]
list2_t --
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 13:55:19 +0000 (14:55 +0100)]
list2_t --
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 13:44:55 +0000 (14:44 +0100)]
drop list2_t from sendlib.c as well.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 13:15:06 +0000 (14:15 +0100)]
no more list2_t for mx's anymore either.
also drop the stupid mx_*_reg functions, rather use exter const mx_t's.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Julien Danjou [Sat, 18 Nov 2006 11:13:57 +0000 (12:13 +0100)]
Clean buffy.c and init.c
- Use useful variable in init
- We don't need to use Context since s is already the path we want
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 11:59:17 +0000 (12:59 +0100)]
make rx_t be chaine-able so that we can get rid of list2_t (stage 1).
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Sat, 18 Nov 2006 11:58:21 +0000 (12:58 +0100)]
missing statics
Pierre Habouzit [Sat, 18 Nov 2006 11:11:28 +0000 (12:11 +0100)]
merge OPS that do not need to be split anymore.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Fri, 17 Nov 2006 21:13:01 +0000 (22:13 +0100)]
less warnigs
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Fri, 17 Nov 2006 21:09:13 +0000 (22:09 +0100)]
useless file.
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Pierre Habouzit [Fri, 17 Nov 2006 21:03:38 +0000 (22:03 +0100)]
more moves and dead code
Signed-off-by: Pierre Habouzit <madcoder@madism.org>
Julien Danjou [Fri, 17 Nov 2006 17:17:10 +0000 (18:17 +0100)]
Simplify sidebar code
- Remove useless argument from sidebar_*() functions
- Include some missing header files and declares some
functions as static
- Rename some var :-/
- Remove a useless argument 'fd' for USE_DOTLOCK
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Fri, 17 Nov 2006 17:35:09 +0000 (18:35 +0100)]
Remove useless imap_cmd_running()
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Fri, 17 Nov 2006 17:35:08 +0000 (18:35 +0100)]
Remove useless var
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Fri, 17 Nov 2006 15:44:40 +0000 (16:44 +0100)]
Fix a bug when changing folder
If we press 'c' it prompts for local mailbox if no other
mailboxes have new mail. It should return null instead, like
mutt does.
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Fri, 17 Nov 2006 17:17:12 +0000 (18:17 +0100)]
Fix multiple compilation warnings
- Include lib-*/*.h where missing
- Put some static and const stuff
- Change _mutt_mktemp to mutt_mktemp
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Julien Danjou [Fri, 17 Nov 2006 17:17:11 +0000 (18:17 +0100)]
Rename pop_query_d to pop_query and remove useless arg
Signed-off-by: Julien Danjou <julien@danjou.info>
Signed-off-by: Pierre Habouzit <madcoder@debian.org>