unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
blob 7e4eca48fe6ec93a6249b6e254428fc0f5d2b3a7 1042 bytes (raw)
name: lib/parse-time-vrp.cc 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 

#include "database-private.h"
#include "parse-time-vrp.h"
#include "parse-time-string.h"

#define PREFIX "date:"

/* See *ValueRangeProcessor in xapian-core/api/valuerangeproc.cc */
Xapian::valueno
ParseTimeValueRangeProcessor::operator() (std::string &begin, std::string &end)
{
    time_t t, now;

    /* Require date: prefix in start of the range... */
    if (STRNCMP_LITERAL (begin.c_str (), PREFIX))
	return Xapian::BAD_VALUENO;

    /* ...and remove it. */
    begin.erase (0, sizeof (PREFIX) - 1);

    /* Use the same 'now' for begin and end. */
    if (time (&now) == (time_t) -1)
	return Xapian::BAD_VALUENO;

    if (!begin.empty ()) {
	if (parse_time_string (begin.c_str (), &t, &now, PARSE_TIME_ROUND_DOWN))
	    return Xapian::BAD_VALUENO;

	begin.assign (Xapian::sortable_serialise ((double) t));
    }

    if (!end.empty ()) {
	if (parse_time_string (end.c_str (), &t, &now, PARSE_TIME_ROUND_UP_INCLUSIVE))
	    return Xapian::BAD_VALUENO;

	end.assign (Xapian::sortable_serialise ((double) t));
    }

    return valno;
}

debug log:

solving 7e4eca4 ...
found 7e4eca4 in https://yhetil.org/notmuch/c2da03e2ff6827478378364d27914e462cc847d8.1350164594.git.jani@nikula.org/ ||
	https://yhetil.org/notmuch/f21b8702728457c087478b26700e9448bc16c61d.1350854171.git.jani@nikula.org/

applying [1/1] https://yhetil.org/notmuch/c2da03e2ff6827478378364d27914e462cc847d8.1350164594.git.jani@nikula.org/
diff --git a/lib/parse-time-vrp.cc b/lib/parse-time-vrp.cc
new file mode 100644
index 0000000..7e4eca4

Checking patch lib/parse-time-vrp.cc...
Applied patch lib/parse-time-vrp.cc cleanly.

skipping https://yhetil.org/notmuch/f21b8702728457c087478b26700e9448bc16c61d.1350854171.git.jani@nikula.org/ for 7e4eca4
index at:
100644 7e4eca48fe6ec93a6249b6e254428fc0f5d2b3a7	lib/parse-time-vrp.cc

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).