mirror of
https://github.com/moparisthebest/pacman
synced 2024-12-22 07:48:50 -05:00
Add format attributes to all required functions
Fixes all clang warnings with -Wformat-literal. Also, fix genuine formating issue discovered once adding these attributes and add a cast to prevent a gcc warning. Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
parent
05b0d7e799
commit
3fa2830829
@ -271,8 +271,9 @@ typedef enum _alpm_loglevel_t {
|
||||
} alpm_loglevel_t;
|
||||
|
||||
typedef void (*alpm_cb_log)(alpm_loglevel_t, const char *, va_list);
|
||||
|
||||
int alpm_logaction(alpm_handle_t *handle, const char *prefix,
|
||||
const char *fmt, ...);
|
||||
const char *fmt, ...) __attribute__((format(printf, 3, 4)));
|
||||
|
||||
/**
|
||||
* Events.
|
||||
|
@ -39,8 +39,8 @@
|
||||
* @param fmt output format
|
||||
* @return 0 on success, -1 on error (pm_errno is set accordingly)
|
||||
*/
|
||||
int SYMEXPORT alpm_logaction(alpm_handle_t *handle, const char *prefix, const
|
||||
char *fmt, ...)
|
||||
int SYMEXPORT alpm_logaction(alpm_handle_t *handle, const char *prefix,
|
||||
const char *fmt, ...)
|
||||
{
|
||||
int ret;
|
||||
va_list args;
|
||||
|
@ -218,8 +218,8 @@ int SYMEXPORT alpm_trans_release(alpm_handle_t *handle)
|
||||
if(_alpm_handle_unlock(handle)) {
|
||||
_alpm_log(handle, ALPM_LOG_WARNING, _("could not remove lock file %s\n"),
|
||||
handle->lockfile);
|
||||
alpm_logaction(handle, "warning: could not remove lock file %s\n",
|
||||
handle->lockfile);
|
||||
alpm_logaction(handle, ALPM_CALLER_PREFIX,
|
||||
"warning: could not remove lock file %s\n", handle->lockfile);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -120,7 +120,10 @@ int _alpm_unpack(alpm_handle_t *handle, const char *archive, const char *prefix,
|
||||
alpm_list_t *list, int breakfirst);
|
||||
|
||||
ssize_t _alpm_files_in_directory(alpm_handle_t *handle, const char *path, int full_count);
|
||||
int _alpm_logaction(alpm_handle_t *handle, const char *prefix, const char *fmt, va_list args);
|
||||
|
||||
int _alpm_logaction(alpm_handle_t *handle, const char *prefix, const char *fmt, va_list args)
|
||||
__attribute__((format(printf, 3, 0)));
|
||||
|
||||
int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[]);
|
||||
int _alpm_ldconfig(alpm_handle_t *handle);
|
||||
int _alpm_str_cmp(const void *s1, const void *s2);
|
||||
|
@ -41,6 +41,7 @@ void cb_dl_total(off_t total);
|
||||
void cb_dl_progress(const char *filename, off_t file_xfered, off_t file_total);
|
||||
|
||||
/* callback to handle messages/notifications from pacman library */
|
||||
__attribute__((format(printf, 2, 0)))
|
||||
void cb_log(alpm_loglevel_t level, const char *fmt, va_list args);
|
||||
|
||||
#endif /* _PM_CALLBACK_H */
|
||||
|
@ -871,7 +871,7 @@ static void _display_targets(alpm_list_t *targets, int verbose)
|
||||
}
|
||||
|
||||
/* print to screen */
|
||||
pm_asprintf(&str, _("Packages (%d):"), alpm_list_count(targets));
|
||||
pm_asprintf(&str, _("Packages (%zd):"), alpm_list_count(targets));
|
||||
printf("\n");
|
||||
|
||||
cols = getcols(fileno(stdout));
|
||||
@ -992,7 +992,7 @@ static char *pkg_get_location(alpm_pkg_t *pkg)
|
||||
case PM_OP_SYNC:
|
||||
servers = alpm_db_get_servers(alpm_pkg_get_db(pkg));
|
||||
if(servers) {
|
||||
pm_asprintf(&string, "%s/%s", servers->data,
|
||||
pm_asprintf(&string, "%s/%s", (char *)(servers->data),
|
||||
alpm_pkg_get_filename(pkg));
|
||||
return string;
|
||||
}
|
||||
@ -1443,6 +1443,7 @@ int select_question(int count)
|
||||
|
||||
|
||||
/* presents a prompt and gets a Y/N answer */
|
||||
__attribute__((format(printf, 2, 0)))
|
||||
static int question(short preset, char *fmt, va_list args)
|
||||
{
|
||||
char response[32];
|
||||
|
@ -72,11 +72,11 @@ void print_packages(const alpm_list_t *packages);
|
||||
void select_display(const alpm_list_t *pkglist);
|
||||
int select_question(int count);
|
||||
int multiselect_question(char *array, int count);
|
||||
int yesno(char *fmt, ...);
|
||||
int noyes(char *fmt, ...);
|
||||
int yesno(char *fmt, ...) __attribute__((format(printf, 1, 2)));
|
||||
int noyes(char *fmt, ...) __attribute__((format(printf, 1, 2)));
|
||||
|
||||
int pm_printf(alpm_loglevel_t level, const char *format, ...) __attribute__((format(printf,2,3)));
|
||||
int pm_asprintf(char **string, const char *format, ...);
|
||||
int pm_asprintf(char **string, const char *format, ...) __attribute__((format(printf,2,3)));
|
||||
int pm_vfprintf(FILE *stream, alpm_loglevel_t level, const char *format, va_list args) __attribute__((format(printf,3,0)));
|
||||
int pm_vasprintf(char **string, alpm_loglevel_t level, const char *format, va_list args) __attribute__((format(printf,3,0)));
|
||||
|
||||
|
@ -37,6 +37,7 @@ static void cleanup(int signum)
|
||||
exit(signum);
|
||||
}
|
||||
|
||||
__attribute__((format(printf, 2, 0)))
|
||||
static void output_cb(alpm_loglevel_t level, const char *fmt, va_list args)
|
||||
{
|
||||
if(strlen(fmt)) {
|
||||
|
@ -40,6 +40,7 @@ static void cleanup(int signum)
|
||||
exit(signum);
|
||||
}
|
||||
|
||||
__attribute__((format(printf, 2, 0)))
|
||||
static void output_cb(alpm_loglevel_t level, const char *fmt, va_list args)
|
||||
{
|
||||
if(strlen(fmt)) {
|
||||
|
@ -24,6 +24,7 @@
|
||||
|
||||
#define BASENAME "testpkg"
|
||||
|
||||
__attribute__((format(printf, 2, 0)))
|
||||
static void output_cb(alpm_loglevel_t level, const char *fmt, va_list args)
|
||||
{
|
||||
if(fmt[0] == '\0') {
|
||||
|
Loading…
Reference in New Issue
Block a user