Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(538)

Issue 580863004: Adding 3D lut color filter (Closed)

Created:
6 years, 3 months ago by sugoi1
Modified:
6 years, 2 months ago
CC:
reviews_skia.org, senorblanco, noel
Base URL:
https://skia.googlesource.com/skia.git@master
Project:
skia
Visibility:
Public.

Description

Adding 3D lut color filter Included in this cl is support for 3D textures. BUG=skia: Committed: https://skia.googlesource.com/skia/+/ce686270f533b9d741ef85661ef9d78517a01b86

Patch Set 1 #

Patch Set 2 : New version #

Total comments: 4

Patch Set 3 : Work in progress #

Patch Set 4 : Work in progress (new files added) #

Patch Set 5 : First working version #

Patch Set 6 : As color filter instead of image filter #

Total comments: 3

Patch Set 7 : Replaced SkBitmap with SkData #

Total comments: 3

Patch Set 8 : Added generationID for 3D texture key #

Total comments: 5

Patch Set 9 : Color profile effect using only 2D textures #

Total comments: 18

Patch Set 10 : Added cache and fixed a few comments #

Patch Set 11 : Fixed long lines and added a lut to remove int->float conversions #

Total comments: 15

Patch Set 12 : Added unplremultiply/premultiply in the shader #

Patch Set 13 : Fixed comments and added bench #

Patch Set 14 : Fixed a header #

Total comments: 1

Patch Set 15 : Removed change to SkColorMatrixFilter #

Patch Set 16 : Changed GrTextureImpl for GrTexturePriv #

Patch Set 17 : Update to ToT #

Total comments: 15

Patch Set 18 : Fixed comments #

Total comments: 6

Patch Set 19 : Fixed some comments #

Total comments: 30

Patch Set 20 : Fixed some comments #

Total comments: 6

Patch Set 21 : Fixed some minor stuff #

Patch Set 22 : Registered filter for serialization #

Patch Set 23 : Update to ToT #

Unified diffs Side-by-side diffs Delta from patch set Stats (+716 lines, -0 lines) Patch
A bench/ColorCubeBench.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +112 lines, -0 lines 0 comments Download
A gm/colorcube.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +141 lines, -0 lines 0 comments Download
M gyp/bench.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M gyp/effects.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +2 lines, -0 lines 0 comments Download
M gyp/gmslides.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
A include/effects/SkColorCubeFilter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +79 lines, -0 lines 0 comments Download
A src/effects/SkColorCubeFilter.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +376 lines, -0 lines 0 comments Download
M src/ports/SkGlobalInitialization_chromium.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 chunks +2 lines, -0 lines 0 comments Download
M src/ports/SkGlobalInitialization_default.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 chunks +2 lines, -0 lines 0 comments Download

Messages

Total messages: 76 (11 generated)
sugoi1
Hi Brian and Mike, I haven't written much yet, this cl isn't close to ready, ...
6 years, 3 months ago (2014-09-18 01:27:55 UTC) #2
bsalomon
If 3D textures are useful I've got no qualms about adding support. One particular thing: ...
6 years, 3 months ago (2014-09-18 14:45:59 UTC) #3
sugoi1
On 2014/09/18 14:45:59, bsalomon wrote: > If 3D textures are useful I've got no qualms ...
6 years, 3 months ago (2014-09-18 23:38:10 UTC) #4
bsalomon
https://codereview.chromium.org/580863004/diff/20001/src/gpu/gl/GrGLCaps.cpp File src/gpu/gl/GrGLCaps.cpp (right): https://codereview.chromium.org/580863004/diff/20001/src/gpu/gl/GrGLCaps.cpp#newcode602 src/gpu/gl/GrGLCaps.cpp:602: Need tests for support on OpenGL, not just GLES. ...
6 years, 3 months ago (2014-09-19 13:47:04 UTC) #5
sugoi1
I'm ready for a 1st review Right now, 3D luts of size N*N*N are packed ...
6 years, 3 months ago (2014-09-24 19:12:49 UTC) #6
sugoi1
https://codereview.chromium.org/580863004/diff/100001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/100001/src/effects/SkColorProfileFilter.cpp#newcode84 src/effects/SkColorProfileFilter.cpp:84: const_cast<SkColorProfileFilter*>(this)->initProcessingLuts(); Hi Mike and Brian, I have an issue ...
6 years, 3 months ago (2014-09-24 19:38:42 UTC) #7
bsalomon
https://codereview.chromium.org/580863004/diff/100001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/100001/include/effects/SkColorProfileFilter.h#newcode37 include/effects/SkColorProfileFilter.h:37: SkBitmap fColorCube; I don't think SkBitmap is the right ...
6 years, 3 months ago (2014-09-24 20:29:44 UTC) #8
sugoi1
https://codereview.chromium.org/580863004/diff/100001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/100001/include/effects/SkColorProfileFilter.h#newcode37 include/effects/SkColorProfileFilter.h:37: SkBitmap fColorCube; On 2014/09/24 20:29:44, bsalomon wrote: > I ...
6 years, 3 months ago (2014-09-24 20:44:27 UTC) #9
reed1
Is there a need/desire to have the 3d array be refcounted? If so, seems like ...
6 years, 3 months ago (2014-09-24 20:47:50 UTC) #10
sugoi1
On 2014/09/24 20:47:50, reed1 wrote: > Is there a need/desire to have the 3d array ...
6 years, 3 months ago (2014-09-24 20:54:51 UTC) #11
sugoi1
On 2014/09/24 20:54:51, sugoi1 wrote: > On 2014/09/24 20:47:50, reed1 wrote: > > Is there ...
6 years, 3 months ago (2014-09-24 20:55:52 UTC) #12
bsalomon
On 2014/09/24 20:54:51, sugoi1 wrote: > On 2014/09/24 20:47:50, reed1 wrote: > > Is there ...
6 years, 3 months ago (2014-09-24 21:20:27 UTC) #13
bsalomon
On 2014/09/24 21:20:27, bsalomon wrote: > static_cast<GrPathRange*>(ctx->findAndRefCachedResource(resourceKey))); this shouldn't use GrPathRange, obviously. I pasted existing ...
6 years, 3 months ago (2014-09-24 21:22:00 UTC) #14
sugoi1
On 2014/09/24 21:22:00, bsalomon wrote: > On 2014/09/24 21:20:27, bsalomon wrote: > > > > ...
6 years, 3 months ago (2014-09-24 22:17:57 UTC) #15
sugoi1
Here's the new version with SkData instead of SkBitmap https://codereview.chromium.org/580863004/diff/120001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/120001/src/effects/SkColorProfileFilter.cpp#newcode55 src/effects/SkColorProfileFilter.cpp:55: ...
6 years, 2 months ago (2014-09-25 20:21:56 UTC) #16
sugoi1
https://codereview.chromium.org/580863004/diff/120001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/120001/src/effects/SkColorProfileFilter.cpp#newcode293 src/effects/SkColorProfileFilter.cpp:293: key.fData64[1] = fCubeDimension; On 2014/09/25 20:21:56, sugoi1 wrote: > ...
6 years, 2 months ago (2014-09-25 21:04:59 UTC) #17
sugoi1
https://codereview.chromium.org/580863004/diff/140001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/140001/src/effects/SkColorProfileFilter.cpp#newcode25 src/effects/SkColorProfileFilter.cpp:25: int32_t SkNextColorProfileGenerationID() { Added SkNextColorProfileGenerationID(), similar to SkNextPixelRefGenerationID(), to ...
6 years, 2 months ago (2014-09-25 21:27:46 UTC) #18
bsalomon
I'm starting to think that adding 3D textures might warrant its own CL independent of ...
6 years, 2 months ago (2014-09-26 14:23:51 UTC) #19
Stephen White
On 2014/09/26 14:23:51, bsalomon wrote: > I'm starting to think that adding 3D textures might ...
6 years, 2 months ago (2014-09-26 14:58:28 UTC) #20
sugoi1
On 2014/09/26 14:23:51, bsalomon wrote: > I'm starting to think that adding 3D textures might ...
6 years, 2 months ago (2014-09-26 15:35:32 UTC) #21
sugoi1
On 2014/09/26 14:58:28, Stephen White wrote: > On 2014/09/26 14:23:51, bsalomon wrote: > > I'm ...
6 years, 2 months ago (2014-09-26 15:44:08 UTC) #22
bsalomon
On 2014/09/26 15:44:08, sugoi1 wrote: > On 2014/09/26 14:58:28, Stephen White wrote: > > On ...
6 years, 2 months ago (2014-09-26 15:48:25 UTC) #23
sugoi1
On 2014/09/26 15:44:08, sugoi1 wrote: > On 2014/09/26 14:58:28, Stephen White wrote: > > On ...
6 years, 2 months ago (2014-09-26 15:50:46 UTC) #24
bsalomon
On 2014/09/26 15:50:46, sugoi1 wrote: > On 2014/09/26 15:44:08, sugoi1 wrote: > > On 2014/09/26 ...
6 years, 2 months ago (2014-09-26 15:54:57 UTC) #25
sugoi1
Reduced this cl to contain only the color filter and removed changes related to 3D ...
6 years, 2 months ago (2014-09-29 19:06:00 UTC) #26
Stephen White
https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp#newcode69 src/effects/SkColorProfileFilter.cpp:69: SkAutoMutexAcquire ama(fInitMutex); I'm concerned about the cost of taking ...
6 years, 2 months ago (2014-09-29 19:16:23 UTC) #28
bsalomon
https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp#newcode322 src/effects/SkColorProfileFilter.cpp:322: key.fData32[0] = fGenerationID; I think you have to zero ...
6 years, 2 months ago (2014-09-29 19:27:28 UTC) #29
Stephen White
https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp#newcode87 src/effects/SkColorProfileFilter.cpp:87: SkScalar index = SkScalarMul(i, scale); OTOH, this looks to ...
6 years, 2 months ago (2014-09-29 19:28:41 UTC) #30
reed1
https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp#newcode69 src/effects/SkColorProfileFilter.cpp:69: SkAutoMutexAcquire ama(fInitMutex); On 2014/09/29 19:16:23, Stephen White wrote: > ...
6 years, 2 months ago (2014-09-29 19:34:18 UTC) #31
sugoi1
https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp#newcode69 src/effects/SkColorProfileFilter.cpp:69: SkAutoMutexAcquire ama(fInitMutex); On 2014/09/29 19:34:17, reed1 wrote: > On ...
6 years, 2 months ago (2014-09-29 21:47:49 UTC) #32
sugoi1
Fixed lines over 100 char and added a lut to avoid int->float conversions.
6 years, 2 months ago (2014-09-30 15:41:19 UTC) #33
bsalomon
https://codereview.chromium.org/580863004/diff/200001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/200001/src/effects/SkColorProfileFilter.cpp#newcode323 src/effects/SkColorProfileFilter.cpp:323: // Note that input alpha is not modified by ...
6 years, 2 months ago (2014-09-30 15:49:06 UTC) #34
sugoi1
https://codereview.chromium.org/580863004/diff/200001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/200001/src/effects/SkColorProfileFilter.cpp#newcode323 src/effects/SkColorProfileFilter.cpp:323: // Note that input alpha is not modified by ...
6 years, 2 months ago (2014-09-30 16:38:52 UTC) #35
sugoi1
https://codereview.chromium.org/580863004/diff/200001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/200001/src/effects/SkColorProfileFilter.cpp#newcode323 src/effects/SkColorProfileFilter.cpp:323: // Note that input alpha is not modified by ...
6 years, 2 months ago (2014-09-30 16:52:21 UTC) #36
reed1
Why is fCache ref-counted? It is lazily initialized ... can it be lazily allocated? (SkLazyPtr?) ...
6 years, 2 months ago (2014-09-30 17:07:35 UTC) #38
Stephen White
https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp File src/effects/SkColorProfileFilter.cpp (right): https://codereview.chromium.org/580863004/diff/160001/src/effects/SkColorProfileFilter.cpp#newcode87 src/effects/SkColorProfileFilter.cpp:87: SkScalar index = SkScalarMul(i, scale); On 2014/09/29 21:47:49, sugoi1 ...
6 years, 2 months ago (2014-09-30 17:17:19 UTC) #40
sugoi1
https://codereview.chromium.org/580863004/diff/200001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/200001/include/effects/SkColorProfileFilter.h#newcode16 include/effects/SkColorProfileFilter.h:16: static SkColorProfileFilter* Create(SkData* cubeData, int cubeDimension); On 2014/09/30 17:07:34, ...
6 years, 2 months ago (2014-09-30 20:13:50 UTC) #41
sugoi1
Once again updated to ToT to follow the GrFragmentProcessor API changes. PTAL!
6 years, 2 months ago (2014-10-03 19:32:45 UTC) #42
Stephen White
Thanks for writing the bench! https://codereview.chromium.org/580863004/diff/320001/bench/ColorProfileBench.cpp File bench/ColorProfileBench.cpp (right): https://codereview.chromium.org/580863004/diff/320001/bench/ColorProfileBench.cpp#newcode22 bench/ColorProfileBench.cpp:22: fSize = SkISize::Make(1024, 768); ...
6 years, 2 months ago (2014-10-03 19:40:49 UTC) #43
bsalomon
https://codereview.chromium.org/580863004/diff/320001/bench/ColorProfileBench.cpp File bench/ColorProfileBench.cpp (right): https://codereview.chromium.org/580863004/diff/320001/bench/ColorProfileBench.cpp#newcode13 bench/ColorProfileBench.cpp:13: bool fInitialized; Trivial, but this is the same as ...
6 years, 2 months ago (2014-10-03 19:45:00 UTC) #44
sugoi1
https://codereview.chromium.org/580863004/diff/320001/bench/ColorProfileBench.cpp File bench/ColorProfileBench.cpp (right): https://codereview.chromium.org/580863004/diff/320001/bench/ColorProfileBench.cpp#newcode13 bench/ColorProfileBench.cpp:13: bool fInitialized; On 2014/10/03 19:45:00, bsalomon wrote: > Trivial, ...
6 years, 2 months ago (2014-10-06 15:04:54 UTC) #45
Stephen White
https://codereview.chromium.org/580863004/diff/340001/bench/ColorProfileBench.cpp File bench/ColorProfileBench.cpp (right): https://codereview.chromium.org/580863004/diff/340001/bench/ColorProfileBench.cpp#newcode62 bench/ColorProfileBench.cpp:62: SkCanvas canvas(fBitmap); Probably not a huge deal, but this ...
6 years, 2 months ago (2014-10-06 16:40:41 UTC) #46
sugoi1
https://codereview.chromium.org/580863004/diff/340001/bench/ColorProfileBench.cpp File bench/ColorProfileBench.cpp (right): https://codereview.chromium.org/580863004/diff/340001/bench/ColorProfileBench.cpp#newcode62 bench/ColorProfileBench.cpp:62: SkCanvas canvas(fBitmap); On 2014/10/06 16:40:40, Stephen White wrote: > ...
6 years, 2 months ago (2014-10-06 17:18:41 UTC) #47
bsalomon
gpu lgtm https://codereview.chromium.org/580863004/diff/320001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/320001/include/effects/SkColorProfileFilter.h#newcode39 include/effects/SkColorProfileFilter.h:39: class ColorProfileCache { I don't fully grok ...
6 years, 2 months ago (2014-10-06 17:26:17 UTC) #48
Stephen White
LGTM
6 years, 2 months ago (2014-10-06 17:49:23 UTC) #49
Noel Gordon
Like this btw, and some questions. https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h#newcode14 include/effects/SkColorProfileFilter.h:14: class SK_API SkColorProfileFilter ...
6 years, 2 months ago (2014-10-07 05:01:04 UTC) #51
reed1
https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h#newcode14 include/effects/SkColorProfileFilter.h:14: class SK_API SkColorProfileFilter : public SkColorFilter { On 2014/10/07 ...
6 years, 2 months ago (2014-10-07 13:41:05 UTC) #52
sugoi1
https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h File include/effects/SkColorProfileFilter.h (right): https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h#newcode14 include/effects/SkColorProfileFilter.h:14: class SK_API SkColorProfileFilter : public SkColorFilter { On 2014/10/07 ...
6 years, 2 months ago (2014-10-07 15:44:51 UTC) #53
reed1
https://codereview.chromium.org/580863004/diff/380001/include/effects/SkColorCubeFilter.h File include/effects/SkColorCubeFilter.h (right): https://codereview.chromium.org/580863004/diff/380001/include/effects/SkColorCubeFilter.h#newcode16 include/effects/SkColorCubeFilter.h:16: // cubeData must containt a 3D data in the ...
6 years, 2 months ago (2014-10-07 16:20:49 UTC) #54
sugoi1
https://codereview.chromium.org/580863004/diff/380001/include/effects/SkColorCubeFilter.h File include/effects/SkColorCubeFilter.h (right): https://codereview.chromium.org/580863004/diff/380001/include/effects/SkColorCubeFilter.h#newcode16 include/effects/SkColorCubeFilter.h:16: // cubeData must containt a 3D data in the ...
6 years, 2 months ago (2014-10-07 21:19:52 UTC) #55
reed1
lgtm Sometime we should document exactly how a colorcube works in this impl... 1. How ...
6 years, 2 months ago (2014-10-08 11:57:50 UTC) #56
reed1
More documentation requests: Which axis is Red -vs- Green -vs- Blue (i.e. how should the ...
6 years, 2 months ago (2014-10-08 11:59:39 UTC) #57
sugoi1
On 2014/10/08 11:59:39, reed1 wrote: > More documentation requests: > > Which axis is Red ...
6 years, 2 months ago (2014-10-08 12:11:02 UTC) #58
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/580863004/400001
6 years, 2 months ago (2014-10-08 12:12:19 UTC) #60
commit-bot: I haz the power
Try jobs failed on following builders: Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-Shared-Trybot on tryserver.skia (http://108.170.220.120:10117/builders/Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-Shared-Trybot/builds/985)
6 years, 2 months ago (2014-10-08 12:19:38 UTC) #62
Noel Gordon
On 2014/10/07 15:44:51, sugoi1 wrote: > https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h > File include/effects/SkColorProfileFilter.h (right): > > https://codereview.chromium.org/580863004/diff/360001/include/effects/SkColorProfileFilter.h#newcode14 > ...
6 years, 2 months ago (2014-10-08 13:05:05 UTC) #63
reed1
> And the format should RGBA little-endian on any platform. It has to be enough ...
6 years, 2 months ago (2014-10-08 13:10:21 UTC) #64
sugoi1
On 2014/10/08 13:05:05, Noel Gordon wrote: > Would it be possible to support RGB and ...
6 years, 2 months ago (2014-10-08 14:41:59 UTC) #65
Noel Gordon
On 2014/10/08 14:41:59, sugoi1 wrote: > On 2014/10/08 13:05:05, Noel Gordon wrote: > > Would ...
6 years, 2 months ago (2014-10-08 15:51:08 UTC) #66
Noel Gordon
On 2014/10/08 13:10:21, reed1 wrote: > > And the format should RGBA little-endian on any ...
6 years, 2 months ago (2014-10-08 16:24:56 UTC) #67
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/580863004/420001
6 years, 2 months ago (2014-10-08 18:56:33 UTC) #69
commit-bot: I haz the power
Failed to apply the patch.
6 years, 2 months ago (2014-10-09 01:19:04 UTC) #71
Noel Gordon
LGTM and #56 btw, nice stuff sugoi.
6 years, 2 months ago (2014-10-09 12:16:03 UTC) #73
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/580863004/440001
6 years, 2 months ago (2014-10-09 12:19:21 UTC) #75
commit-bot: I haz the power
6 years, 2 months ago (2014-10-09 12:27:29 UTC) #76
Message was sent while issue was closed.
Committed patchset #23 (id:440001) as ce686270f533b9d741ef85661ef9d78517a01b86

Powered by Google App Engine
This is Rietveld 408576698