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 "GrBufferObj.h" 10 allocate(GrGLsizeiptr size,const GrGLchar * dataPtr)11void GrBufferObj::allocate(GrGLsizeiptr size, const GrGLchar *dataPtr) { 12 GrAlwaysAssert(size >= 0); 13 14 // delete pre-existing data 15 delete[] fDataPtr; 16 17 fSize = size; 18 fDataPtr = new GrGLchar[size]; 19 if (dataPtr) { 20 memcpy(fDataPtr, dataPtr, fSize); 21 } 22 // TODO: w/ no dataPtr the data is unitialized - this could be tracked 23 } 24 deleteAction()25void GrBufferObj::deleteAction() { 26 27 // buffers are automatically unmapped when deleted 28 this->resetMapped(); 29 30 this->INHERITED::deleteAction(); 31 } 32