Add a helper to copy a ByteString to a buffer

We have a few repetitive patterns similar to:
  if (buffer && len <= buflen)
    memcpy(buffer, byteString.c_str(), len);
  return len;

Replace them with a new helper, NulTerminateMaybeCopyAndReturnLength().
Add tests for the new helper.

Bug: pdfium:1514
Change-Id: I0d35cc775f6963833524c2eab1847aafa8e29a10
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/68695
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Daniel Hosseinian <dhoss@chromium.org>
diff --git a/fpdfsdk/BUILD.gn b/fpdfsdk/BUILD.gn
index 9eb9562..e0a9983 100644
--- a/fpdfsdk/BUILD.gn
+++ b/fpdfsdk/BUILD.gn
@@ -108,6 +108,7 @@
 
 pdfium_unittest_source_set("unittests") {
   sources = [
+    "cpdfsdk_helpers_unittest.cpp",
     "fpdf_annot_unittest.cpp",
     "fpdf_catalog_unittest.cpp",
     "fpdf_doc_unittest.cpp",