From: Junio C Hamano Date: Thu, 18 Apr 2013 17:25:57 GMT Subject: Re: [PATCH v3 07/13] utf8.c: add reencode_string_len() that can handle NULs in string Message-ID: <7vobdb7ntm.fsf@alter.siamese.dyndns.org> In-Reply-To: <1366100702-31745-8-git-send-email-pclouds@gmail.com> Nguyễn Thái Ngọc Duy writes: > diff --git a/utf8.h b/utf8.h > index d3da96f..a43ef9a 100644 > --- a/utf8.h > +++ b/utf8.h > @@ -17,12 +17,25 @@ void strbuf_add_wrapped_bytes(struct strbuf *buf, const char *data, int len, > int indent, int indent2, int width); > > #ifndef NO_ICONV > -char *reencode_string_iconv(const char *in, size_t insz, iconv_t conv); > -char *reencode_string(const char *in, const char *out_encoding, const char *in_encoding); > +char *reencode_string_iconv(const char *in, size_t insz, > + iconv_t conv, int *outsz); > +char *reencode_string_len(const char *in, int insz, > + const char *out_encoding, > + const char *in_encoding, > + int *outsz); > #else > -#define reencode_string(a,b,c) NULL > +#define reencode_string_len(a,b,c,d,e) NULL > #endif > > +static inline char *reencode_string(const char *in, > + const char *out_encoding, > + const char *in_encoding) > +{ > + return reencode_string_len(in, strlen(in), > + out_encoding, in_encoding, > + NULL); > +} > + > int mbs_chrlen(const char **text, size_t *remainder_p, const char *encoding); > > #endif Nicely done.