aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/Contact.php12
1 files changed, 7 insertions, 5 deletions
diff --git a/include/Contact.php b/include/Contact.php
index f0c7cd737..dedde3d1e 100644
--- a/include/Contact.php
+++ b/include/Contact.php
@@ -128,11 +128,13 @@ function vcard_from_xchan($xchan, $observer = null, $mode = '') {
function abook_toggle_flag($abook,$flag) {
- $r = q("UPDATE abook set abook_flags = (abook_flags & ~%d) where abook_id = %d and abook_channel = %d",
- intval($flag),
- intval($abook['abook_id']),
- intval($abook['abook_channel'])
- );
+ $r = q("UPDATE abook set abook_flags = (abook_flags %s %d) where abook_id = %d and abook_channel = %d",
+ db_getfunc('^'),
+ intval($flag),
+ intval($abook['abook_id']),
+ intval($abook['abook_channel'])
+ );
+
// if unsetting the archive bit, update the timestamps so we'll try to connect for an additional 30 days.