Home | History | Annotate | Download | only in debug
      1 
      2 /*
      3  * Copyright 2012 Google Inc.
      4  *
      5  * Use of this source code is governed by a BSD-style license that can be
      6  * found in the LICENSE file.
      7  */
      8 
      9 #include "GrProgramObj.h"
     10 #include "GrShaderObj.h"
     11 
     12 void GrProgramObj::AttachShader(GrShaderObj *shader) {
     13     shader->ref();
     14     fShaders.push_back(shader);
     15 }
     16 
     17 void GrProgramObj::deleteAction() {
     18 
     19     // shaders are automatically detached from a deleted program. They will only be
     20     // deleted if they were marked for deletion by a prior call to glDeleteShader
     21     for (int i = 0; i < fShaders.count(); ++i) {
     22         fShaders[i]->unref();
     23     }
     24     fShaders.reset();
     25 
     26     this->INHERITED::deleteAction();
     27 }
     28