)]}'
{
  "log": [
    {
      "commit": "70d8f4f3acbbbc6fbce0e1f1753ba475f2c52dac",
      "tree": "6782bc3aadddba8d5526bd54f56db3e62c96da04",
      "parents": [
        "d962070feb84a95e25d99f0a6ad26fd59d32e60b"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Mon Apr 01 12:57:46 2019 -0400"
      },
      "committer": {
        "name": "Skia Commit-Bot",
        "email": "skia-commit-bot@chromium.org",
        "time": "Tue Apr 02 12:37:56 2019 +0000"
      },
      "message": "SkWuffsCodec: Use drawing to do color correction and scaling\n\nBug: skia:8235 (Wuffs)\nBug: skia:8751 (Color correction)\nBug: skia:8762 (565)\n\nThis was brought up in https://skia-review.googlesource.com/c/skia/+/171645/1/src/codec/SkWuffsCodec.cpp#499\nRemove the SkSwizzler and code that supports it (e.g.\nSkWuffsSpySampler). In its place, use an SkDraw and draw from Wuffs\u0027\nworking buffer into the output pixel memory. This trivially allows\nsupport for 565 and f16, while removing the blend function that was\n8888 specific. The draw operation also takes care of color correction\nand allows arbitrary downscaling.\n\nAdd the intermediate subclass SkScalingCodec, to share methods between\nSkWebpCodec and SkWuffsCodec.\n\nAllowing arbitrary scaling from an SkCodec subclass is a bit of a break\nfrom an original goal of SkCodec, which was to only do what the\nunderlying format supports naturally. Otherwise a client could just use\nSkia to do effectively the same thing in a layer above SkCodec. (e.g.\njpegs can be downscaled by throwing away information during decode,\nwhich libjpeg(-turbo) will do as requested. But gifs don\u0027t scale down\nnaturally in the same way, so SkGifCodec did not support downscaling\nexcept when used with SkAndroidCodec.) But SkCodec has already deviated\nfrom this goals in two ways. With SkAndroidCodec, sampling is done\ninside SkGifCodec (and others) in order to save on memory allocation (we\ncan sample on a single line without allocating memory for the full size\nimage at its original size). (Note that this memory is not saved anyway\nin SkWuffsCodec, because wuffs has its own image buffer.) The second\ndeviation is color correction, which could also be done in a layer\noutside SkCodec. Since SkCodec is already doing this extra work,\nsimplify it.\n\nChange-Id: If9a1698e0c353f60250aef5b6229855e6538a42d\nReviewed-on: https://skia-review.googlesource.com/c/skia/+/194186\nCommit-Queue: Leon Scroggins \u003cscroggo@google.com\u003e\nReviewed-by: Mike Reed \u003creed@google.com\u003e\nReviewed-by: Mike Klein \u003cmtklein@google.com\u003e\nReviewed-by: Nigel Tao \u003cnigeltao@google.com\u003e\n"
    }
  ]
}
