Edit

kc3-lang/angle/src/libGLESv2/Error.cpp

Branch :

  • Show log

    Commit

  • Author : Shannon Woods
    Date : 2014-09-02 17:09:08
    Hash : 8e7d7a30
    Message : Fix use of references with va_start BUG=angle:736 va_start behavior is undefined if the second parameter is a function, array, or reference type. clang produces a warning for this, while MSVC does not. Change-Id: I0bc2805e312e3542aac816f10a257e2f1cfad128 Reviewed-on: https://chromium-review.googlesource.com/216010 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Tested-by: Nico Weber <thakis@chromium.org>

  • src/libGLESv2/Error.cpp
  • //
    // 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.
    //
    
    // Error.cpp: Implements the gl::Error class which encapsulates an OpenGL error
    // and optional error message.
    
    #include "libGLESv2/Error.h"
    
    #include "common/angleutils.h"
    
    #include <cstdarg>
    
    namespace gl
    {
    
    Error::Error(GLenum errorCode)
        : mCode(errorCode),
          mMessage()
    {
    }
    
    Error::Error(GLenum errorCode, const char *msg, ...)
        : mCode(errorCode),
          mMessage()
    {
        va_list vararg;
        va_start(vararg, msg);
        mMessage = FormatString(msg, vararg);
        va_end(vararg);
    }
    
    Error::Error(const Error &other)
        : mCode(other.mCode),
          mMessage(other.mMessage)
    {
    }
    
    Error &Error::operator=(const Error &other)
    {
        mCode = other.mCode;
        mMessage = other.mMessage;
        return *this;
    }
    
    }