mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-12-22 17:34:54 +01:00
Fix printf for when uint64_t != unsigned long long int
Thanks to Michal Sojka <sojkam1@fel.cvut.cz> for pointing out the correct fix, which I verified in the freely-available WG14/N1124 draft (from the C99 working group) which is available here: http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1124.pdf
This commit is contained in:
parent
9439b217c3
commit
e0a8dee8bc
2 changed files with 10 additions and 1 deletions
|
@ -21,6 +21,15 @@
|
|||
#ifndef NOTMUCH_DATABASE_PRIVATE_H
|
||||
#define NOTMUCH_DATABASE_PRIVATE_H
|
||||
|
||||
/* According to WG14/N1124, a C++ implementation won't provide us a
|
||||
* macro like PRIx64 (which gives a printf format string for
|
||||
* formatting a uint64_t as hexadecimal) unless we define
|
||||
* __STDC_FORMAT_MACROS before including inttypes.h. That's annoying,
|
||||
* but there it is.
|
||||
*/
|
||||
#define __STDC_FORMAT_MACROS
|
||||
#include <inttypes.h>
|
||||
|
||||
#include "notmuch-private.h"
|
||||
|
||||
#include <xapian.h>
|
||||
|
|
|
@ -1306,7 +1306,7 @@ _notmuch_database_generate_thread_id (notmuch_database_t *notmuch)
|
|||
|
||||
notmuch->last_thread_id++;
|
||||
|
||||
sprintf (thread_id, "%016llx", notmuch->last_thread_id);
|
||||
sprintf (thread_id, "%016" PRIx64, notmuch->last_thread_id);
|
||||
|
||||
db->set_metadata ("last_thread_id", thread_id);
|
||||
|
||||
|
|
Loading…
Reference in a new issue