diff --git a/apps/app_sms.c b/apps/app_sms.c index b375a7f07eae7eec33d2bb2438b203ff630efb9e..a6fb5abfca5dbdff3192cc0c75a50ea7df5d7895 100644 --- a/apps/app_sms.c +++ b/apps/app_sms.c @@ -512,11 +512,13 @@ static int packsms(unsigned char dcs, unsigned char *base, unsigned int udhl, un static void packdate(unsigned char *o, time_t w) { struct tm t; + int z; + ast_localtime(&w, &t, NULL); #if defined(__FreeBSD__) || defined(__OpenBSD__) || defined( __NetBSD__ ) || defined(__APPLE__) - int z = -t.tm_gmtoff / 60 / 15; + z = -t.tm_gmtoff / 60 / 15; #else - int z = timezone / 60 / 15; + z = timezone / 60 / 15; #endif *o++ = ((t.tm_year % 10) << 4) + (t.tm_year % 100) / 10; *o++ = (((t.tm_mon + 1) % 10) << 4) + (t.tm_mon + 1) / 10; diff --git a/res/res_features.c b/res/res_features.c index 228908dbaa94070676ab72b044a0b8fb66b74c85..629fea3fbdb085272c11f96352c0e755e613ef59 100644 --- a/res/res_features.c +++ b/res/res_features.c @@ -2838,7 +2838,6 @@ static int load_config(void) AST_RWLIST_WRLOCK(&feature_groups); ctg = NULL; - struct ast_call_feature *feature; while ((ctg = ast_category_browse(cfg, ctg))) { for (i = 0; i < ARRAY_LEN(categories); i++) { if (!strcasecmp(categories[i], ctg)) @@ -2852,6 +2851,8 @@ static int load_config(void) continue; for (var = ast_variable_browse(cfg, ctg); var; var = var->next) { + struct ast_call_feature *feature; + AST_LIST_LOCK(&feature_list); if(!(feature = find_dynamic_feature(var->name)) && !(feature = ast_find_call_feature(var->name))) {