Fix PDF Path object Bezier joins rendering

In the pdf attached to the bug, CFX_AggDeviceDriver::DrawPath()
rendered PDF path objects with sharp & wrong joins.

The issue only occur with bezier curves, changing the following
method call from agg::path_storage::add_path_curve() to
agg::path_storage::add_path() will fix those issues.

The md5 hashes of embedder tests that were dependent on this
wrong behavior are updated. All of those tests were using the
annotation_stamp_with_ap.pdf file. In the ticket, I have attached
a png diff of what changed in this file.

Bug: pdfium:1958
Change-Id: Ida2d0f7a78d41a352540b5782a0848198708103f
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/102430
Reviewed-by: Nigi <nigi@chromium.org>
Commit-Queue: Nigi <nigi@chromium.org>
diff --git a/DEPS b/DEPS
index 13b1443..0ec492c 100644
--- a/DEPS
+++ b/DEPS
@@ -140,7 +140,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling pdfium_tests
   # and whatever else without interference from each other.
-  'pdfium_tests_revision': '08f1b2bf9c1fc585cd7c3eb7f880302a17478d08',
+  'pdfium_tests_revision': '20e9894b12154d257612a2829a4b4a37e057267e',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling resultdb
   # and whatever else without interference from each other.
diff --git a/core/fpdfapi/render/fpdf_progressive_render_embeddertest.cpp b/core/fpdfapi/render/fpdf_progressive_render_embeddertest.cpp
index cda7d91..a51e16e 100644
--- a/core/fpdfapi/render/fpdf_progressive_render_embeddertest.cpp
+++ b/core/fpdfapi/render/fpdf_progressive_render_embeddertest.cpp
@@ -433,9 +433,9 @@
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "a791fdb4f595bb6c4187cc2aeed5e9e8";
 #if BUILDFLAG(IS_APPLE)
-    return "7a209e29caeeab7d2b25b34570a4ace6";
+    return "8170c539e95f22f14eb8f266a5f1bbed";
 #else
-    return "3bbbfc6cc18801906285a232c4a20617";
+    return "d1fd087e59d4dcebf47b56570bdb8c22";
 #endif
   }();
 
diff --git a/core/fxge/agg/fx_agg_driver.cpp b/core/fxge/agg/fx_agg_driver.cpp
index 4668659..a6fcb21 100644
--- a/core/fxge/agg/fx_agg_driver.cpp
+++ b/core/fxge/agg/fx_agg_driver.cpp
@@ -942,7 +942,7 @@
         agg::curve4 curve(pos0.x, pos0.y, pos.x, pos.y, pos2.x, pos2.y, pos3.x,
                           pos3.y);
         i += 2;
-        agg_path.add_path_curve(curve);
+        agg_path.add_path(curve);
       }
     }
     if (points[i].m_CloseFigure)
diff --git a/fpdfsdk/fpdf_annot_embeddertest.cpp b/fpdfsdk/fpdf_annot_embeddertest.cpp
index c1ad3a9..0fc27bc 100644
--- a/fpdfsdk/fpdf_annot_embeddertest.cpp
+++ b/fpdfsdk/fpdf_annot_embeddertest.cpp
@@ -1108,27 +1108,27 @@
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "f671765166acf45d80e833ea3aff8b90";
 #if BUILDFLAG(IS_APPLE)
-    return "e31421f86c61d4e9cda138f15f561ca3";
+    return "34614087e04b729b7b8c37739dcf9af9";
 #else
-    return "980e7636d864f7f7d323a31ad4e8fa04";
+    return "31a94d22460171cd83169daf6a6956ee";
 #endif
   }();
   const char* md5_two_paths = []() {
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "7d2db46e1ae6bcf88d18d334af309551";
 #if BUILDFLAG(IS_APPLE)
-    return "58d932492f9d485d6a4bc0ba76c04557";
+    return "6cdaf6b3e5145f435d8ccae6db5cf9af";
 #else
-    return "4c779c394b6790f8cf80305b566b663b";
+    return "ed49fefef45f14121f8150cde10006c4";
 #endif
   }();
   const char* md5_new_annot = []() {
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "92bfb06058ff608571a3baf65f7fc05d";
 #if BUILDFLAG(IS_APPLE)
-    return "61f9ad13f2fd235753db198cf9704773";
+    return "55dab4f158fdc284e439b88c4306373c";
 #else
-    return "97effd68dcf86273f68d126d6b45152e";
+    return "cc08493b1f079803930388ecc703be9d";
 #endif
   }();
 
@@ -1329,18 +1329,18 @@
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "4ba31e174d873b3fda1d7a160d4a0e85";
 #if BUILDFLAG(IS_APPLE)
-    return "c6fcbceb2f079bef10458ac60db3a10c";
+    return "17ac49518eabbb6a7632a547269c40a3";
 #else
-    return "62c2706511cb50e32e7caeb82b1d3d49";
+    return "e79446398d4508bc2cb47e6cf2a677ed";
 #endif
   }();
   const char* md5_modified_image = []() {
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "5806fadc1a192bc4bb07511a0711c957";
 #if BUILDFLAG(IS_APPLE)
-    return "8068eb568e5c1c5fbe84e98f7a980ac3";
+    return "ce68959f74242d588af7fb82be5ba0ab";
 #else
-    return "83093ce9fac746db69fbd2fb394434ac";
+    return "425646a517a23104b9ef22881a19b3e2";
 #endif
   }();
 
@@ -1422,9 +1422,9 @@
 #if BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_ARM64)
     return "0c3448974a4e8da2395da917935e5de1";
 #elif BUILDFLAG(IS_APPLE) && !defined(ARCH_CPU_ARM64)
-    return "57a0fb3fba33e17de26bcde4c40b9a75";
+    return "5d449d36926c9f212c6cdb6c276d18cc";
 #else
-    return "1c4198c38f890c208c5cbaad57be4dc6";
+    return "a9532f555aca2fd099e2107fa40b61e6";
 #endif
   }();
   const char* md5_modified_text = []() {
@@ -1433,9 +1433,9 @@
 #if BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_ARM64)
     return "9cf1c024a9d2d356bcdd14cb71a32324";
 #elif BUILDFLAG(IS_APPLE) && !defined(ARCH_CPU_ARM64)
-    return "072574999f2e3f36774ee0b5bc94d4dd";
+    return "8c992808db99dbe3d74006358a671f05";
 #else
-    return "cfa78d01406865f41f486bd34a8b9f7b";
+    return "03cae68322d6a6ba120e738ab325408c";
 #endif
   }();
 
@@ -1569,9 +1569,9 @@
     if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
       return "2b9078043cd6130fef4e8542dcda943e";
 #if BUILDFLAG(IS_APPLE)
-    return "cd90315b250dfe08265ce0ac335c5f76";
+    return "52e93c54796f7f7167edf64e81d12bd7";
 #else
-    return "c4fb6911f2a87f490be196f8898de738";
+    return "5143f9a98beb7b00ff40b89110a1089f";
 #endif
   }();
 
diff --git a/testing/embedder_test_constants.cpp b/testing/embedder_test_constants.cpp
index ac2a667..9e8caee 100644
--- a/testing/embedder_test_constants.cpp
+++ b/testing/embedder_test_constants.cpp
@@ -13,9 +13,9 @@
   if (CFX_DefaultRenderDevice::SkiaIsDefaultRenderer())
     return "a31381406d0b95049e418720750b78dd";
 #if BUILDFLAG(IS_APPLE)
-  return "d243b5d64752be0f45b86df7bd2e2708";
+  return "0521eaa52fe2aa43aafd3e4495f63f0b";
 #else
-  return "cdde6c161679ab10b07c38c1ef04b7e8";
+  return "5f19ddad9d48f5b7b87ee7d92f577db6";
 #endif
 }