mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-07-07 20:06:36 +02:00
Merge branch '1.9.3' of tasktools.org:task into 1.9.3
This commit is contained in:
commit
191d8ef355
4 changed files with 21 additions and 6 deletions
|
@ -647,7 +647,7 @@ void Task::validate () const
|
|||
if (has ("wait"))
|
||||
{
|
||||
Date wait (::atoi (get ("wait").c_str ()));
|
||||
if (wait > due)
|
||||
if (wait < due)
|
||||
throw std::string ("A 'wait' date must be after a 'due' date.");
|
||||
}
|
||||
|
||||
|
|
|
@ -95,18 +95,32 @@ void handleRecurrence ()
|
|||
{
|
||||
if (mask.length () <= i)
|
||||
{
|
||||
mask += '-';
|
||||
changed = true;
|
||||
|
||||
Task rec (*t); // Clone the parent.
|
||||
rec.set ("uuid", uuid ()); // New UUID.
|
||||
rec.setStatus (Task::pending); // Shiny.
|
||||
rec.set ("parent", t->get ("uuid")); // Remember mom.
|
||||
|
||||
char dueDate[16];
|
||||
sprintf (dueDate, "%u", (unsigned int) d->toEpoch ());
|
||||
rec.set ("due", dueDate); // Store generated due date.
|
||||
|
||||
if (t->get ("wait").size())
|
||||
{
|
||||
Date old_wait (atoi (t->get ("wait").c_str ()));
|
||||
Date old_due (atoi (t->get ("due").c_str ()));
|
||||
Date due (*d);
|
||||
sprintf (dueDate, "%u", (unsigned int) (due + (old_wait - old_due)).toEpoch ());
|
||||
rec.set ("wait", dueDate);
|
||||
rec.setStatus (Task::waiting);
|
||||
mask += 'W';
|
||||
}
|
||||
else
|
||||
{
|
||||
mask += '-';
|
||||
rec.setStatus (Task::pending);
|
||||
}
|
||||
|
||||
char indexMask[12];
|
||||
sprintf (indexMask, "%u", (unsigned int) i);
|
||||
rec.set ("imask", indexMask); // Store index into mask.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue