When dealing with negative set flags, add a slash to distinguish
from user-defined flags that begin with 0.
$act2 = ($act1 == 'set') ? 'unset' : 'set';
$ret[$act1][] = $tmp;
- $tmp['f'] = '0' . $val['flag'];
+ $tmp['f'] = '0\\' . $val['flag'];
$ret[$act2][] = $tmp;
}
$flag = Horde_Util::getPost('flag');
if ($flag && !empty($indices)) {
$set = true;
- if ($flag[0] == '0') {
- $flag = substr($flag, 1);
+ if (strpos($flag, '0\\') === 0) {
+ $flag = substr($flag, 2);
$set = false;
}
$imp_message = IMP_Message::singleton();
$flag = Horde_Util::getFormData('flag');
if ($flag && !empty($indices_array)) {
$peek = $set = true;
- if ($flag[0] == '0') {
- $flag = substr($flag, 1);
+ if (strpos($flag, '0\\') === 0) {
+ $flag = substr($flag, 2);
$set = false;
}
$imp_message->flag(array($flag), $indices_array, $set);