Edit

kc3-lang/angle/src/libGLESv2/renderer/d3d/MemoryBuffer.h

Branch :

  • Show log

    Commit

  • Author : Jamie Madill
    Date : 2014-09-19 13:17:51
    Hash : ee009b8e
    Message : Fix a NULL dereference on buffer initialization. In some cases, where the user would create a buffer with NULL (empty) data, we would attempt to dereference NULL when drawing with the buffer as a vertex attribute. BUG=angle:749 Change-Id: Ied5ecbab4608c85890cdf7cc32a8dae46989e33b Reviewed-on: https://chromium-review.googlesource.com/219090 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>

  • src/libGLESv2/renderer/d3d/MemoryBuffer.h
  • //
    // Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    
    #ifndef LIBGLESV2_RENDERER_D3D_MEMORYBUFFER_H_
    #define LIBGLESV2_RENDERER_D3D_MEMORYBUFFER_H_
    
    #include <cstddef>
    #include <cstdint>
    
    namespace rx
    {
    
    class MemoryBuffer
    {
      public:
        MemoryBuffer();
        ~MemoryBuffer();
    
        bool resize(size_t size);
        size_t size() const;
        bool empty() const { return mSize == 0; }
    
        const uint8_t *data() const;
        uint8_t *data();
    
      private:
        size_t mSize;
        uint8_t *mData;
    };
    
    }
    
    #endif // LIBGLESV2_RENDERER_D3D_MEMORYBUFFER_H