Kaynağa Gözat

LibC: Automatically append null terminator in vswprintf

safarp 3 yıl önce
ebeveyn
işleme
b0b8d14a2c
1 değiştirilmiş dosya ile 4 ekleme ve 0 silme
  1. 4 0
      Userland/Libraries/LibC/wstdio.cpp

+ 4 - 0
Userland/Libraries/LibC/wstdio.cpp

@@ -207,6 +207,10 @@ int vswprintf(wchar_t* __restrict wcs, size_t max_length, wchar_t const* __restr
         ++length_so_far;
     },
         wcs, fmt, args);
+    if (length_so_far < max_length)
+        wcs[length_so_far] = L'\0';
+    else
+        wcs[max_length - 1] = L'\0';
     return static_cast<int>(length_so_far);
 }