@@ -224,11 +224,10 @@ function user_settings_update($event_name, $data) {
224224 unlink ($ settings_file );
225225 }
226226 } else {
227- $ settings_priority = 20 ;
228227 if (isset ($ data [$ use_data ]['priority ' ])) {
229- $ settings_priority = intval ($ data [$ use_data ]['priority ' ]);
230- } elseif ( $ is_domain === true ) {
231- $ settings_priority = 18 ;
228+ $ settings_priority = ( $ is_domain ? 10 : 20 ) + intval ($ data [$ use_data ]['priority ' ]);
229+ } else {
230+ $ settings_priority = ( $ is_domain ? 10 : 20 ) + 5 ;
232231 }
233232
234233 // get policy for entry
@@ -405,8 +404,8 @@ function spamfilter_wblist_update($event_name, $data) {
405404 $ tpl ->newTemplate ('rspamd_wblist.inc.conf.master ' );
406405 $ tpl ->setVar ('list_scope ' , ($ global_filter ? 'global ' : 'spamfilter ' ));
407406 $ tpl ->setVar ('record_id ' , $ record_id );
408- // we need to add 10 to priority to avoid mailbox/domain spamfilter settings overriding white/blacklists
409- $ tpl ->setVar ('priority ' , intval ($ data ['new ' ]['priority ' ]) + ($ global_filter ? 10 : 20 ));
407+ // add 30/40 to priority to avoid collisions and prefer white/blacklists above mailbox/domain spamfilter settings
408+ $ tpl ->setVar ('priority ' , intval ($ data ['new ' ]['priority ' ]) + ($ global_filter ? 30 : 40 ));
410409 $ tpl ->setVar ('from ' , $ filter_from );
411410 $ tpl ->setVar ('recipient ' , $ filter_rcpt );
412411 $ tpl ->setVar ('hostname ' , $ filter ['hostname ' ]);
0 commit comments