projects
/
apps
/
madmutt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
less horrible strncpy's
[apps/madmutt.git]
/
mbyte.c
diff --git
a/mbyte.c
b/mbyte.c
index
1ff911c
..
6c9a76c
100644
(file)
--- a/
mbyte.c
+++ b/
mbyte.c
@@
-15,11
+15,12
@@
# include "config.h"
#endif
# include "config.h"
#endif
+#include <lib-lib/macros.h>
+
#include "mutt.h"
#include "mbyte.h"
#include "charset.h"
#include "mutt.h"
#include "mbyte.h"
#include "charset.h"
-#include "lib/intl.h"
#include <errno.h>
#include <errno.h>
@@
-91,7
+92,7
@@
void mutt_set_charset (char *charset)
static size_t wcrtomb_iconv (char *s, wchar_t wc, iconv_t cd)
{
char buf[MB_LEN_MAX];
static size_t wcrtomb_iconv (char *s, wchar_t wc, iconv_t cd)
{
char buf[MB_LEN_MAX];
-
ICONV_CONST
char *ib;
+
const
char *ib;
char *ob;
size_t ibl, obl, r;
char *ob;
size_t ibl, obl, r;
@@
-102,14
+103,14
@@
static size_t wcrtomb_iconv (char *s, wchar_t wc, iconv_t cd)
ib = buf;
ob = s;
obl = MB_LEN_MAX;
ib = buf;
ob = s;
obl = MB_LEN_MAX;
- r =
iconv
(cd, &ib, &ibl, &ob, &obl);
+ r =
my_iconv
(cd, &ib, &ibl, &ob, &obl);
}
else {
ib = "";
ibl = 1;
ob = buf;
obl = sizeof (buf);
}
else {
ib = "";
ibl = 1;
ob = buf;
obl = sizeof (buf);
- r =
iconv
(cd, &ib, &ibl, &ob, &obl);
+ r =
my_iconv
(cd, &ib, &ibl, &ob, &obl);
}
return ob - s;
}
}
return ob - s;
}
@@
-138,7
+139,7
@@
size_t mbrtowc_iconv (wchar_t * pwc, const char *s, size_t n,
mbstate_t * ps, iconv_t cd)
{
static mbstate_t mbstate;
mbstate_t * ps, iconv_t cd)
{
static mbstate_t mbstate;
-
ICONV_CONST
char *ib, *ibmax;
+
const
char *ib, *ibmax;
char *ob, *t;
size_t ibl, obl, k, r;
char bufi[8], bufo[6];
char *ob, *t;
size_t ibl, obl, k, r;
char bufi[8], bufo[6];
@@
-168,10
+169,10
@@
size_t mbrtowc_iconv (wchar_t * pwc, const char *s, size_t n,
ibl = 1;
for (;;) {
ibl = 1;
for (;;) {
- r =
iconv
(cd, &ib, &ibl, &ob, &obl);
+ r =
my_iconv
(cd, &ib, &ibl, &ob, &obl);
if (ob > bufo && (!k || ib > bufi + k)) {
/* we have a character */
if (ob > bufo && (!k || ib > bufi + k)) {
/* we have a character */
-
memset (ps, 0, sizeof (*ps)
);
+
p_clear(ps, 1
);
utf8rtowc (pwc, bufo, ob - bufo, &mbstate);
return (pwc && *pwc) ? (ib - (k ? bufi + k : s)) : 0;
}
utf8rtowc (pwc, bufo, ob - bufo, &mbstate);
return (pwc && *pwc) ? (ib - (k ? bufi + k : s)) : 0;
}
@@
-188,7
+189,7
@@
size_t mbrtowc_iconv (wchar_t * pwc, const char *s, size_t n,
}
else {
/* save the state and give up */
}
else {
/* save the state and give up */
-
memset (ps, 0, sizeof (*ps)
);
+
p_clear(ps, 1
);
if (ibl <= sizeof (mbstate_t)) /* need extra condition here! */
memcpy (ps, ib, ibl);
return (size_t) (-2);
if (ibl <= sizeof (mbstate_t)) /* need extra condition here! */
memcpy (ps, ib, ibl);
return (size_t) (-2);
@@
-215,7
+216,7
@@
size_t mbrtowc (wchar_t * pwc, const char *s, size_t n, mbstate_t * ps)
return mbrtowc_iconv (pwc, s, n, ps, charset_to_utf8);
else {
if (!s) {
return mbrtowc_iconv (pwc, s, n, ps, charset_to_utf8);
else {
if (!s) {
-
memset (ps, 0, sizeof (*ps)
);
+
p_clear(ps, 1
);
return 0;
}
if (!n)
return 0;
}
if (!n)