return extra_path;
}
-static void add_addon_pkgs_name(char *pkgs, char *name, size_t size)
+static void add_addon_pkgs_name(char *pkgs, char *name)
{
- if (strlen(pkgs) == 0) {
- strncpy(pkgs, name, size);
+ int len = strlen(pkgs);
+ if (len == 0) {
+ strncpy(pkgs, name, MAX_PKG_LIST-1);
} else {
- snprintf(pkgs, size, "%s, %s", pkgs, name);
+ char pkg[MAX_PKG_LIST];
+ snprintf(pkg, MAX_PKG_LIST, ", %s", name);
+ strncat(pkgs,pkg,MAX_PKG_LIST-len-1);
}
}
}
pkg_count++;
- add_addon_pkgs_name(pkgs, sub_dir_entry->d_name, sizeof(pkgs));
- add_addon_pkgs_name(pkg_list, sub_dir_entry->d_name, sizeof(pkg_list));
+ add_addon_pkgs_name(pkgs, sub_dir_entry->d_name);
+ add_addon_pkgs_name(pkg_list, sub_dir_entry->d_name);
LOG_TRACE("reading addon sub directory: %s\n", sub_dir_entry->d_name);
}
}