diff --git a/include/dba.php b/include/dba.php index 93df40b401..3f4d814821 100644 --- a/include/dba.php +++ b/include/dba.php @@ -776,7 +776,7 @@ class dba { $params[] = $value; } - self::e($sql, $params); + return self::e($sql, $params); } /** diff --git a/include/items.php b/include/items.php index 98b40f1eeb..285a5745aa 100644 --- a/include/items.php +++ b/include/items.php @@ -719,11 +719,15 @@ function item_store($arr, $force_parent = false, $notify = false, $dontcache = f $conv = dba::fetch_first("SELECT `protocol` FROM `conversation` WHERE `item-uri` = ?", $conversation['item-uri']); if (dbm::is_result($conv)) { // Replace the conversation entry when the new one is better - if (($conv['protocol'] == 0) OR ($conv['protocol'] > $conversation['protocol'])) { - dba::update('conversation', $conversation, array('item-uri' => $conversation['item-uri'])); + if ((($conv['protocol'] == 0) OR ($conv['protocol'] > $conversation['protocol'])) AND ($conversation['protocol'] > 0)) { + if (!dba::update('conversation', $conversation, array('item-uri' => $conversation['item-uri']))) { + logger('Conversation: update for '.$conversation['item-uri'].' from '.$conv['protocol'].' to '.$conversation['protocol'].' failed', LOGGER_DEBUG); + } } } else { - dba::insert('conversation', $conversation); + if (!dba::insert('conversation', $conversation)) { + logger('Conversation: insert for '.$conversation['item-uri'].' (protocol '.$conversation['protocol'].') failed', LOGGER_DEBUG); + } } }