Correction

- Committed too many chunks in the last modification.
This commit is contained in:
Paul Beckingham 2010-10-23 11:29:00 -04:00
parent 79a4f666aa
commit 0a5e380bbf
4 changed files with 18 additions and 7 deletions

View file

@ -30,6 +30,7 @@ The following submitted code, packages or analysis, and deserve special thanks:
Kevin Owens Kevin Owens
Mick Koch Mick Koch
Kathryn Andersen Kathryn Andersen
Alexander Schremmer
Thanks to the following, who submitted detailed bug reports and excellent Thanks to the following, who submitted detailed bug reports and excellent
suggestions: suggestions:
@ -59,6 +60,5 @@ suggestions:
Seneca Cunningham Seneca Cunningham
Dirk Deimeke Dirk Deimeke
Michelle Crane Michelle Crane
Alexander Schremmer
Elizabeth Maxson Elizabeth Maxson

View file

@ -77,15 +77,12 @@
worked. worked.
+ Fixed bug #466, which gave the wrong error message when a custom report + Fixed bug #466, which gave the wrong error message when a custom report
was missing a direction indicator for the sort order. was missing a direction indicator for the sort order.
+ Fixed bug #467, where recurring tasks were not honoring wait values.
+ Fixed bug #470, which caused task to not support the color 'none'. + Fixed bug #470, which caused task to not support the color 'none'.
+ Fixed bug #476, so that task now issues a warning when a wait date falls + Fixed bug #476, so that task now issues a warning when a wait date falls
after a due date (thanks to T. Charles Yun). after a due date (thanks to T. Charles Yun).
+ Fixed bug #480, which didn't properly support @ characters in tags. This + Fixed bug #480, which didn't properly support @ characters in tags. This
also now supports $ and #. also now supports $ and #.
+ Fixed bug #489, which caused the filter 'tags.none:' to fail. + Fixed bug #489, which caused the filter 'tags.none:' to fail.
+ Fixed bug $493, which made waiting, recurring tasks invisible (thanks to
Alexander Schremmer).
+ Fixed bug #494, causing imported text files to ultimately lack uuids + Fixed bug #494, causing imported text files to ultimately lack uuids
(thanks to Elizabeth Maxson). (thanks to Elizabeth Maxson).
+ Fixed problem with command line configuration overrides that had no + Fixed problem with command line configuration overrides that had no

View file

@ -647,7 +647,7 @@ void Task::validate () const
if (has ("wait")) if (has ("wait"))
{ {
Date wait (::atoi (get ("wait").c_str ())); 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."); throw std::string ("A 'wait' date must be after a 'due' date.");
} }

View file

@ -95,18 +95,32 @@ void handleRecurrence ()
{ {
if (mask.length () <= i) if (mask.length () <= i)
{ {
mask += '-';
changed = true; changed = true;
Task rec (*t); // Clone the parent. Task rec (*t); // Clone the parent.
rec.set ("uuid", uuid ()); // New UUID. rec.set ("uuid", uuid ()); // New UUID.
rec.setStatus (Task::pending); // Shiny.
rec.set ("parent", t->get ("uuid")); // Remember mom. rec.set ("parent", t->get ("uuid")); // Remember mom.
char dueDate[16]; char dueDate[16];
sprintf (dueDate, "%u", (unsigned int) d->toEpoch ()); sprintf (dueDate, "%u", (unsigned int) d->toEpoch ());
rec.set ("due", dueDate); // Store generated due date. 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]; char indexMask[12];
sprintf (indexMask, "%u", (unsigned int) i); sprintf (indexMask, "%u", (unsigned int) i);
rec.set ("imask", indexMask); // Store index into mask. rec.set ("imask", indexMask); // Store index into mask.