Index: dm/DMSrcSink.cpp |
diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp |
index a4fb028eb01621eba89fbb5ba3dddaae89cb4d8f..2503dc35cec207602df6e50d9f66a518d108f2d1 100644 |
--- a/dm/DMSrcSink.cpp |
+++ b/dm/DMSrcSink.cpp |
@@ -789,12 +789,14 @@ Error NullSink::draw(const Src& src, SkBitmap*, SkWStream*, SkString*) const { |
DEFINE_bool(gpuStats, false, "Append GPU stats to the log for each GPU task?"); |
GPUSink::GPUSink(GrContextFactory::GLContextType ct, |
- GrGLStandard api, |
+ GrContextFactory::GLContextOptions options, |
+ GrGLStandard gpuAPI, |
int samples, |
bool diText, |
bool threaded) |
: fContextType(ct) |
- , fGpuAPI(api) |
+ , fContextOptions(options) |
+ , fGpuAPI(gpuAPI) |
, fSampleCount(samples) |
, fUseDIText(diText) |
, fThreaded(threaded) {} |
@@ -810,24 +812,26 @@ DEFINE_bool(batchClip, false, "Clip each GrBatch to its device bounds for testin |
DEFINE_bool(batchBounds, false, "Draw a wireframe bounds of each GrBatch."); |
Error GPUSink::draw(const Src& src, SkBitmap* dst, SkWStream*, SkString* log) const { |
- GrContextOptions options; |
+ GrContextOptions grOptions; |
if (FLAGS_imm) { |
- options.fImmediateMode = true; |
+ grOptions.fImmediateMode = true; |
} |
if (FLAGS_batchClip) { |
- options.fClipBatchToBounds = true; |
+ grOptions.fClipBatchToBounds = true; |
} |
+ |
if (FLAGS_batchBounds) { |
- options.fDrawBatchBounds = true; |
+ grOptions.fDrawBatchBounds = true; |
} |
- src.modifyGrContextOptions(&options); |
+ src.modifyGrContextOptions(&grOptions); |
- GrContextFactory factory(options); |
+ GrContextFactory factory(grOptions); |
const SkISize size = src.size(); |
const SkImageInfo info = |
SkImageInfo::Make(size.width(), size.height(), kN32_SkColorType, kPremul_SkAlphaType); |
SkAutoTUnref<SkSurface> surface( |
- NewGpuSurface(&factory, fContextType, fGpuAPI, info, fSampleCount, fUseDIText)); |
+ NewGpuSurface(&factory, fContextType, fContextOptions, fGpuAPI, info, fSampleCount, |
+ fUseDIText)); |
if (!surface) { |
return "Could not create a surface."; |
} |