| Index: dm/DMBenchTask.cpp
 | 
| diff --git a/dm/DMBenchTask.cpp b/dm/DMBenchTask.cpp
 | 
| index 7cd2fdcb03d89fd5d7d1652842a070adcd95ef93..9bdbbf29744c0f1d08943ebd75b9d6f7ff47008d 100644
 | 
| --- a/dm/DMBenchTask.cpp
 | 
| +++ b/dm/DMBenchTask.cpp
 | 
| @@ -33,11 +33,13 @@ GpuBenchTask::GpuBenchTask(const char* config,
 | 
|                             TaskRunner* tasks,
 | 
|                             BenchRegistry::Factory factory,
 | 
|                             GrContextFactory::GLContextType contextType,
 | 
| +                           GrGLStandard gpuAPI,
 | 
|                             int sampleCount)
 | 
|      : GpuTask(reporter, tasks)
 | 
|      , fBench(factory(NULL))
 | 
|      , fName(bench_name(fBench->getName(), config))
 | 
|      , fContextType(contextType)
 | 
| +    , fGpuAPI(gpuAPI)
 | 
|      , fSampleCount(sampleCount) {}
 | 
|  
 | 
|  bool NonRenderingBenchTask::shouldSkip() const {
 | 
| @@ -74,8 +76,12 @@ void GpuBenchTask::draw(GrContextFactory* grFactory) {
 | 
|                                           fBench->getSize().y(),
 | 
|                                           kN32_SkColorType,
 | 
|                                           kPremul_SkAlphaType);
 | 
| -    SkAutoTUnref<SkSurface> surface(NewGpuSurface(grFactory, fContextType, info, fSampleCount));
 | 
| -
 | 
| +    SkAutoTUnref<SkSurface> surface(NewGpuSurface(grFactory, fContextType, fGpuAPI, info,
 | 
| +                                                  fSampleCount));
 | 
| +    if (!surface) {
 | 
| +        this->fail("Could not create context for the config and the api.");
 | 
| +        return;
 | 
| +    }
 | 
|      fBench->preDraw();
 | 
|      fBench->draw(1, surface->getCanvas());
 | 
|  }
 | 
| 
 |