)]}'
{
  "commit": "231e7e159130091907ebf4bdc7d420e1706f24f4",
  "tree": "e26ccd92464ca5a08e94264aaba1349520c2a668",
  "parents": [
    "82cad2c707358476f6850a7877c23f411aa0b3d7"
  ],
  "author": {
    "name": "fineaskotnikov",
    "email": "fineaskotnikov@gmail.com",
    "time": "Fri Oct 28 20:23:20 2022 +0000"
  },
  "committer": {
    "name": "Pdfium LUCI CQ",
    "email": "pdfium-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Oct 28 20:23:20 2022 +0000"
  },
  "message": "Optimization of decoding large JPX images\n\nWe do not use large scales when decoding jpx images:\nThe JPEG2000 image is presented as a set of layers of different scales.\nWith the cp_reduce parameter, we tell OpenJPEG to ignore \u003ccp_reduce\u003e of\nthe largest scales. We define the number of layers to ignore as the\nlogarithm of the ratio the real image size to the requested page size.\n\nThis allows us not to waste time when decoding large scales on large\npictures.\nWe assume that it is possible to ignore all scales that are larger than\nthe requested rendering size.\n\nBug: pdfium:1924\n\nChange-Id: I791aa63343f5c32657708003212c8007040e3bc8\nReviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/99970\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\nReviewed-by: Tom Sepez \u003ctsepez@chromium.org\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "38c43923a4908de2570c94bb8969c3a774e664dc",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_dib.cpp",
      "new_id": "c55aa58630fe1ba3546de24372ebba056d729685",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_dib.cpp"
    },
    {
      "type": "modify",
      "old_id": "7b99d0ca7d851b0be70c4e7a29f4ada338ddf82d",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_dib.h",
      "new_id": "8b54cb55fa54a20220a7a8c44db274b52f2e5212",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_dib.h"
    },
    {
      "type": "modify",
      "old_id": "73565dc4e58d1021434af90610c6b44e663d8eba",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_image.cpp",
      "new_id": "7694ccdbd919873ee817d2c6a797ab59dc42cbda",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_image.cpp"
    },
    {
      "type": "modify",
      "old_id": "f8d0038ee76072fcdcb459b030cc7c27b61577c9",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_image.h",
      "new_id": "cb1e198e1b5c1cc08ff32608655a5b7d6d7ec6ef",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_image.h"
    },
    {
      "type": "modify",
      "old_id": "e8f9637414fdf9b2b647e69304e803b9b3a65d73",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_imageloader.cpp",
      "new_id": "cec04271c2c23dab9870bb535c07458a45138864",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_imageloader.cpp"
    },
    {
      "type": "modify",
      "old_id": "aa080a7d941ced681df44cbc183deec6407d9f4e",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_imageloader.h",
      "new_id": "1b892691e48510f6dff02858eb0218f7c6a3daf3",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_imageloader.h"
    },
    {
      "type": "modify",
      "old_id": "b4f0435249706880969225fec1ee038facee6ed3",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_pageimagecache.cpp",
      "new_id": "4664095a72c6ff9ec2141872efe8a140feabfc44",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_pageimagecache.cpp"
    },
    {
      "type": "modify",
      "old_id": "320fcbee4b593d857bebe14a79a16d9d56389fab",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/page/cpdf_pageimagecache.h",
      "new_id": "8a78579260479e3f85ff755a9dd6b6523aa04346",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/page/cpdf_pageimagecache.h"
    },
    {
      "type": "modify",
      "old_id": "66ec1399478f6741237b0533734751be6c14ec19",
      "old_mode": 33188,
      "old_path": "core/fpdfapi/render/cpdf_imagerenderer.cpp",
      "new_id": "d6d4a97c4e493b394bc0320f805084eca5b1e694",
      "new_mode": 33188,
      "new_path": "core/fpdfapi/render/cpdf_imagerenderer.cpp"
    },
    {
      "type": "modify",
      "old_id": "6e070a2abc315b97622722936e48dafade49376e",
      "old_mode": 33188,
      "old_path": "core/fxcodec/jpx/cjpx_decoder.cpp",
      "new_id": "c2468be6ca1c490efe14d2daf63034fa743b2238",
      "new_mode": 33188,
      "new_path": "core/fxcodec/jpx/cjpx_decoder.cpp"
    },
    {
      "type": "modify",
      "old_id": "74fc7c96d2e21fdbe4deb0654c35e72c2a999800",
      "old_mode": 33188,
      "old_path": "core/fxcodec/jpx/cjpx_decoder.h",
      "new_id": "46047352edc9f447d743427853c083dcc563e41f",
      "new_mode": 33188,
      "new_path": "core/fxcodec/jpx/cjpx_decoder.h"
    },
    {
      "type": "modify",
      "old_id": "e64651e611f410a059b707740a1dab366d30b50d",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_editimg.cpp",
      "new_id": "6fb3c31a5761f353d5689451dc4c68d627908708",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_editimg.cpp"
    },
    {
      "type": "modify",
      "old_id": "74c78319bf04c4c7b3892aa71d0c6289f6335fba",
      "old_mode": 33188,
      "old_path": "fpdfsdk/fpdf_thumbnail.cpp",
      "new_id": "250f73295e3f0083b5ba089ace25ac26a94d33bb",
      "new_mode": 33188,
      "new_path": "fpdfsdk/fpdf_thumbnail.cpp"
    },
    {
      "type": "modify",
      "old_id": "6b117cbad8785bbef545a06da027d7a0566cecdd",
      "old_mode": 33188,
      "old_path": "testing/fuzzers/pdf_jpx_fuzzer.cc",
      "new_id": "0282f1c6764fd20570c9610b5dc09e1b9f502421",
      "new_mode": 33188,
      "new_path": "testing/fuzzers/pdf_jpx_fuzzer.cc"
    }
  ]
}
