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
This commit is contained in:
Alexei Gradinari
2018-05-18 17:45:22 -04:00
parent 21dd609e77
commit 39632c7e00

View File

@@ -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 {