)]}'
{
  "commit": "09166ad552d71fe536e1c500c208c65b2c136fe8",
  "tree": "afc555dcd6d58d9cbb20f14b00b12463005798d4",
  "parents": [
    "b68f6ed42ae977c178357383cbacd17c0616f4be"
  ],
  "author": {
    "name": "Lei Zhang",
    "email": "thestig@chromium.org",
    "time": "Thu Mar 19 11:20:36 2026 -0700"
  },
  "committer": {
    "name": "Pdfium LUCI CQ",
    "email": "pdfium-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Mar 19 11:20:36 2026 -0700"
  },
  "message": "Reland \"Stop trying to destroy PartitionAlloc\"\n\nThis is a reland of commit f8e0f053178d9030b9e3878d780bc75f70518e1c\nAvoid exit-time destructors this time.\n\nOriginal change\u0027s description:\n\u003e Stop trying to destroy PartitionAlloc\n\u003e\n\u003e Attempting to destroy and reinitialize PartitionAlloc results in\n\u003e PartitionAlloc leaking address space. So destroying PartitionAlloc to\n\u003e \"fix a memory leak\" actually makes the situation worse in PA-enabled\n\u003e builds where PDFium gets repeatedly destroyed and reinitialized.\n\u003e\n\u003e Delete FX_InitializeMemoryAllocators() and FX_DestroyMemoryAllocators()\n\u003e and update their callers. Then make the PartitionAllocator instances\n\u003e initialized on first use again. This approximately reverts\n\u003e https://pdfium-review.googlesource.com/116751 without re-introducing\n\u003e NoDestructor usage.\n\u003e\n\u003e Change FPDFViewEmbedderTest.RepeatedInitDestroy to loop more than 4096\n\u003e times to show this works. While only changing the test, as seen in\n\u003e https://pdfium-review.googlesource.com/144731, results in\n\u003e pdfium_embeddertests crashes.\n\u003e\n\u003e Bug: 42270890\n\u003e Change-Id: I79f9c2fa5adf0e0f9c8b8bf30332c96966ed2c96\n\u003e Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/145070\n\u003e Commit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\n\u003e Reviewed-by: Tom Sepez \u003ctsepez@chromium.org\u003e\n\nBug: 42270890\nChange-Id: I53b91f6957783b33c1074b839d22b7922e4cfd5e\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/145111\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\nReviewed-by: Tom Sepez \u003ctsepez@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fa7132c6b3459f4918b297d2a9f6c101b1966993",
      "old_mode": 33188,
      "old_path": "core/fxcrt/fx_memory.h",
      "new_id": "9191dc863d9e7c0f79d49883be861323b6184d89",
      "new_mode": 33188,
      "new_path": "core/fxcrt/fx_memory.h"
    },
    {
      "type": "modify",
      "old_id": "93cc7c6e983ee85e2973085c62ded8fdef45528c",
      "old_mode": 33188,
      "old_path": "core/fxcrt/fx_memory_malloc.cpp",
      "new_id": "82bb273e67caba22c184e95c7424c0de2dc1899a",
      "new_mode": 33188,
      "new_path": "core/fxcrt/fx_memory_malloc.cpp"
    },
    {
      "type": "modify",
      "old_id": "52dccbd23e60001056d63ee493447bde561f00c9",
      "old_mode": 33188,
      "old_path": "core/fxcrt/fx_memory_pa.cpp",
      "new_id": "43f5d7f5610101d26eae2d8f853c43673bd54bd7",
      "new_mode": 33188,
      "new_path": "core/fxcrt/fx_memory_pa.cpp"
    },
    {
      "type": "modify",
      "old_id": "f747fe11c3ae8d48f8d8e30a5f68487c7a436283",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_view.cpp",
      "new_id": "c808459f44443ce0c072539ada72bf92d2bb6a24",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_view.cpp"
    },
    {
      "type": "modify",
      "old_id": "723577182aaf90e6ae4faf7fb8c64df5118f2616",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_view_embeddertest.cpp",
      "new_id": "833fb8f049445bdaf5e50041c5b96beae50336f0",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_view_embeddertest.cpp"
    },
    {
      "type": "modify",
      "old_id": "41342ddea47dd5d042712de9c018d64b604eaabe",
      "old_mode": 33188,
      "old_path": "testing/embedder_test_main.cpp",
      "new_id": "d220e3141f766353d964afd3d796650a3a05ff91",
      "new_mode": 33188,
      "new_path": "testing/embedder_test_main.cpp"
    },
    {
      "type": "modify",
      "old_id": "035e12ba312e65caa1d362d70f179419cba48b2d",
      "old_mode": 33188,
      "old_path": "testing/image_diff/image_diff.cpp",
      "new_id": "3e3e3d2d6de33e850446baadd5b7f513db3f783c",
      "new_mode": 33188,
      "new_path": "testing/image_diff/image_diff.cpp"
    },
    {
      "type": "modify",
      "old_id": "28476b032da840c60221de486eff7c383124d78b",
      "old_mode": 33188,
      "old_path": "testing/unit_test_main.cpp",
      "new_id": "af254cbcf6395a2711ddcd49843b79c904281a1f",
      "new_mode": 33188,
      "new_path": "testing/unit_test_main.cpp"
    }
  ]
}
