| Index: include/gpu/GrContextFactory.h
|
| diff --git a/include/gpu/GrContextFactory.h b/include/gpu/GrContextFactory.h
|
| index f09bad932b8aa75b8d43fb6b6a47a5a4f50c1206..1f1f89df14d1995f5751f15b13c4508ce968539f 100644
|
| --- a/include/gpu/GrContextFactory.h
|
| +++ b/include/gpu/GrContextFactory.h
|
| @@ -88,8 +88,7 @@ public:
|
| }
|
| }
|
|
|
| - GrContextFactory() {
|
| - }
|
| + GrContextFactory() { }
|
|
|
| ~GrContextFactory() { this->destroyContexts(); }
|
|
|
| @@ -105,9 +104,12 @@ public:
|
| /**
|
| * Get a GrContext initialized with a type of GL context. It also makes the GL context current.
|
| */
|
| - GrContext* get(GLContextType type) {
|
| -
|
| + GrContext* get(GLContextType type, GrGLStandard forcedGpuAPI = kNone_GrGLStandard) {
|
| for (int i = 0; i < fContexts.count(); ++i) {
|
| + if (forcedGpuAPI != kNone_GrGLStandard &&
|
| + forcedGpuAPI != fContexts[i].fGLContext->gl()->fStandard)
|
| + continue;
|
| +
|
| if (fContexts[i].fType == type) {
|
| fContexts[i].fGLContext->makeCurrent();
|
| return fContexts[i].fGrContext;
|
| @@ -141,7 +143,7 @@ public:
|
| if (!glCtx.get()) {
|
| return NULL;
|
| }
|
| - if (!glCtx.get()->init(kBogusSize, kBogusSize)) {
|
| + if (!glCtx.get()->init(forcedGpuAPI, kBogusSize, kBogusSize)) {
|
| return NULL;
|
| }
|
|
|
|
|