This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] manual: Various fixes to the mbstouwcs example


On 04/05/2018 12:08 PM, Andreas Schwab wrote:
On Apr 05 2018, Florian Weimer <fweimer@redhat.com> wrote:

@@ -7,22 +8,46 @@
  wchar_t *
  mbstouwcs (const char *s)
  {
-  size_t len = strlen (s);
-  wchar_t *result = malloc ((len + 1) * sizeof (wchar_t));
+  /* Include the NUL terminator in the conversion.  */
+  size_t len = strlen (s) + 1;
+  wchar_t *result = reallocarray (NULL, len + 1, sizeof (wchar_t));

I still think that result[len] is never used.  The conversion of a
multibyte string with len bytes can generate at most len wide
characters.

Oh, right, I'm adding 1 twice.  Fixed locally.

Any further comments?

Thanks,
Florian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]