Edit

kc3-lang/angle/src/libANGLE/renderer/SamplerImpl.h

Branch :

  • Show log

    Commit

  • Author : Frank Henigman
    Date : 2017-05-03 23:32:29
    Hash : aa7203ef
    Message : Inherit privately from angle::NonCopyable. Make all inheritance from angle::NonCopyable private so the compiler complains about this (admittedly unlikely) code: class Foo: angle::NonCopyable { virtual ~Foo() { ... } }; angle::NonCopyable *p = new Foo; delete p; In the above code ~Foo() is not called, only ~NonCopyable(), because the latter is not virtual. Making it virtual would add overhead to all derived classes which don't already have a virtual method. Also tighten access in NonCopyable, because we can. BUG=angleproject:2026 Change-Id: Id0dc4d959cfb7bb82cf49382118129abb1d3a4f0 Reviewed-on: https://chromium-review.googlesource.com/495352 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>

  • src/libANGLE/renderer/SamplerImpl.h
  • //
    // Copyright 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.
    //
    
    // SamplerImpl.h: Defines the abstract rx::SamplerImpl class.
    
    #ifndef LIBANGLE_RENDERER_SAMPLERIMPL_H_
    #define LIBANGLE_RENDERER_SAMPLERIMPL_H_
    
    #include "common/angleutils.h"
    
    namespace rx
    {
    
    class SamplerImpl : angle::NonCopyable
    {
      public:
        SamplerImpl() {}
        virtual ~SamplerImpl() {}
    };
    }
    
    #endif  // LIBANGLE_RENDERER_SAMPLERIMPL_H_