mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Cleanup: Move *_loc formatting functions into new format.cpp file
qthelper.cpp is already quite voluminous. Move the recently introduced localized versions of (v)snprintf() and put_format() into their own translation unit. Moreover, adopt C-style semantics for asprintf_loc(). This function will be used to remove fixed-size buffers in core/plannernotes.c. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
36249f2780
commit
5afe1a53d8
8 changed files with 448 additions and 405 deletions
29
core/format.h
Normal file
29
core/format.h
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
#ifndef FORMAT_H
|
||||
#define FORMAT_H
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define __printf(x, y) __attribute__((__format__(__printf__, x, y)))
|
||||
#else
|
||||
#define __printf(x, y)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
#include <QString>
|
||||
__printf(1, 2) QString qasprintf_loc(const char *cformat, ...);
|
||||
__printf(1, 0) QString vqasprintf_loc(const char *cformat, va_list ap);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
__printf(3, 4) int snprintf_loc(char *dst, size_t size, const char *cformat, ...);
|
||||
__printf(3, 0) int vsnprintf_loc(char *dst, size_t size, const char *cformat, va_list ap);
|
||||
__printf(2, 3) int asprintf_loc(char **dst, const char *cformat, ...);
|
||||
__printf(2, 0) int vasprintf_loc(char **dst, const char *cformat, va_list ap);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue