From 39632c7e001ba93d1746f3b1aab9082362122881 Mon Sep 17 00:00:00 2001 From: Alexei Gradinari Date: Fri, 18 May 2018 17:45:22 -0400 Subject: [PATCH] config.c: Fix successful DELETE treated as failure The config engine destroy_func callback function returns the number of rows deleted or -1 on error. But the function ast_destroy_realtime_fields treated non-zero return values as error. ASTERISK-27863 Change-Id: Ied02b38e8196cb03043e609a0679feebd288d17b --- main/config.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main/config.c b/main/config.c index 2684fc08bf..d0447fcd3b 100644 --- a/main/config.c +++ b/main/config.c @@ -3568,7 +3568,7 @@ int ast_destroy_realtime_fields(const char *family, const char *keyfield, const for (i = 1; ; i++) { if ((eng = find_engine(family, i, db, sizeof(db), table, sizeof(table)))) { - if (eng->destroy_func && !(res = eng->destroy_func(db, table, keyfield, lookup, fields))) { + if (eng->destroy_func && ((res = eng->destroy_func(db, table, keyfield, lookup, fields)) >= 0)) { break; } } else {