)]}' { "commit": "fb6165ff8f8ad1d7725f63e509eb7f7543df231e", "tree": "3231f9790fd9d70d1954e7d7c912072fdb3cf2de", "parents": [ "1886471c3432dee4d9a9be5678a757dde8717652" ], "author": { "name": "Henrique Nakashima", "email": "hnakashima@chromium.org", "time": "Tue Oct 10 16:13:08 2017 -0400" }, "committer": { "name": "Chromium commit bot", "email": "commit-bot@chromium.org", "time": "Tue Oct 10 20:23:26 2017 +0000" }, "message": "Fix dangling pointer to ID array in CPDF_SecurityHandler.\n\nThis was caused by breaking the reference from CPDF_SecurityHandler to\nCPDF_Parser in https://pdfium-review.googlesource.com/c/pdfium/+/15290\n\nThe reference was replaced with a reference to the ID Array and a copy\nof the password. The issue is that when parsing PDFs with multiple\ntrailers, the trailer containing the ID array may be replaced and\ndestroyed in CPDF_Parser::TrailerData::SetMainTrailer() after being\npassed to CPDF_SecurityHandler, which would then have a dangling\npointer to it.\n\nThis CL changes the CPDF_SecurityHandler to hold a copy of the original\nfile ID instead of all the ID Array.\n\nBug: chromium:771479,chromium:772376\nChange-Id: Id98100502093d890fc2fe6a3da139f910daf38f4\nReviewed-on: https://pdfium-review.googlesource.com/15910\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nReviewed-by: Tom Sepez \u003ctsepez@chromium.org\u003e\nReviewed-by: Ryan Harrison \u003crharrison@chromium.org\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "26202ec3eeef9fcc2bb31a6c686825b95c0664f6", "old_mode": 33188, "old_path": "core/fpdfapi/parser/cpdf_security_handler.cpp", "new_id": "ca0891a729613d800a752fa55757043c304801da", "new_mode": 33188, "new_path": "core/fpdfapi/parser/cpdf_security_handler.cpp" }, { "type": "modify", "old_id": "15be5057059d5f9ddb325faba64c04efc31d6d67", "old_mode": 33188, "old_path": "core/fpdfapi/parser/cpdf_security_handler.h", "new_id": "0ae2cfe66cab18b1cd10fbd85e93aafd35bbc01e", "new_mode": 33188, "new_path": "core/fpdfapi/parser/cpdf_security_handler.h" } ] }