From 86da61bc8f63e3956f99de52e2b9d8fe99b71e9a Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Tue, 18 Dec 2007 22:06:06 +0000 Subject: [PATCH] delete repeat keys in db git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6882 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/mod/applications/mod_limit/mod_limit.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/mod/applications/mod_limit/mod_limit.c b/src/mod/applications/mod_limit/mod_limit.c index 3e4ff9372c..ea7ce73556 100644 --- a/src/mod/applications/mod_limit/mod_limit.c +++ b/src/mod/applications/mod_limit/mod_limit.c @@ -425,17 +425,21 @@ SWITCH_STANDARD_APP(db_function) if (!strcasecmp(argv[0], "insert")) { + sql = switch_mprintf("delete from db_data where realm='%q' and data_key='%q'", argv[1], argv[2]); + switch_assert(sql); + limit_execute_sql(sql, globals.mutex); + switch_safe_free(sql); + sql = switch_mprintf("insert into db_data values('%q','%q','%q','%q');", globals.hostname, argv[1], argv[2], argv[3]); } else if (!strcasecmp(argv[0], "delete")) { sql = switch_mprintf("delete from db_data where realm='%q' and data_key='%q'", argv[1], argv[2]); } + switch_assert(sql); + limit_execute_sql(sql, globals.mutex); + switch_safe_free(sql); + return; - if (sql) { - limit_execute_sql(sql, globals.mutex); - switch_safe_free(sql); - return; - } error: switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "USAGE: db %s\n", DB_USAGE); @@ -470,6 +474,7 @@ SWITCH_STANDARD_API(group_api_function) } sql = switch_mprintf("delete from group_data where groupname='%q' and url='%q';", argv[1], argv[2]); assert(sql); + limit_execute_sql(sql, NULL); switch_safe_free(sql); sql = switch_mprintf("insert into group_data values('%q','%q','%q');", globals.hostname, argv[1], argv[2]);