Summary | Vacation filter - save and enable |
Queue | Ingo |
Queue Version | HEAD |
Type | Bug |
State | No Feedback |
Priority | 2. Medium |
Owners | |
Requester | dgehl (at) inverse (dot) ca |
Created | 11/19/2007 (6443 days ago) |
Due | |
Updated | 01/16/2008 (6385 days ago) |
Assigned | 11/19/2007 (6443 days ago) |
Resolved | 01/16/2008 (6385 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
bug 4370.bug #5901.screen and seeing if both are saved?
screen and seeing if both are saved?
To Jan or another developer: seems like with all of the
Prefs::singleton() calls it's possible something is getting mixed up
with shutdown functions. If that's the case I wonder if skipping the
singleton in _retrieve() and _store() and just doing factory - and
maybe adding an explicit store() call, since it is a store method -
and then unset($prefs), might help.
I don't have the backends set up to test this right now.
or is it an old version? What prefs backend are you using?
is a postgresql database using the sql driver
State ⇒ Feedback
is it an old version? What prefs backend are you using?
Priority ⇒ 2. Medium
State ⇒ Unconfirmed
Queue ⇒ Ingo
Summary ⇒ Vacation filter - save and enable
Type ⇒ Bug
How to reproduce the problem:
- click on filters
- click on vacation
- change the subject or the test
- click on "save and enable"
Result:
- new message is in place in sieve
- no change has been made in the vacation preference in the
preferences postgres database backend
If I click only on 'Save' instead of 'Save and Enabled', the script is
saved correctly.
The problem leading to the bug is that when I click 'Save and Enable',
first the 'vacation' preference is set, then the 'filter' preference (to
enable the vacation message). Unfortunately, when the preference
'store' method is
executed, only the 'filter' preference is saved, but not the 'vacation' one.
The problem can be circumvented by adding an explicit preferences
'store' call at the end of the _store method in lib/Storage/prefs.php
as follows:
$prefs->store();