resolved conflicts for merge of 4037c458
to master
Change-Id: I8a2e73b7ba48b790054e0ab99f81b2693244389e
This commit is contained in:
commit
41a0ef3e28
|
@ -41,14 +41,14 @@ LOCAL_CFLAGS := -DLOG_TAG=\"SurfaceFlinger\"
|
|||
LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
|
||||
|
||||
ifeq ($(TARGET_BOARD_PLATFORM),omap4)
|
||||
LOCAL_CFLAGS += -DHAS_CONTEXT_PRIORITY
|
||||
LOCAL_CFLAGS += -DHAS_CONTEXT_PRIORITY
|
||||
endif
|
||||
ifeq ($(TARGET_BOARD_PLATFORM),s5pc110)
|
||||
LOCAL_CFLAGS += -DHAS_CONTEXT_PRIORITY
|
||||
LOCAL_CFLAGS += -DHAS_CONTEXT_PRIORITY
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET_DISABLE_TRIPLE_BUFFERING),true)
|
||||
LOCAL_CFLAGS += -DTARGET_DISABLE_TRIPLE_BUFFERING
|
||||
LOCAL_CFLAGS += -DTARGET_DISABLE_TRIPLE_BUFFERING
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS),true)
|
||||
|
@ -56,7 +56,7 @@ ifeq ($(TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS),true)
|
|||
endif
|
||||
|
||||
ifneq ($(NUM_FRAMEBUFFER_SURFACE_BUFFERS),)
|
||||
LOCAL_CFLAGS += -DNUM_FRAMEBUFFER_SURFACE_BUFFERS=$(NUM_FRAMEBUFFER_SURFACE_BUFFERS)
|
||||
LOCAL_CFLAGS += -DNUM_FRAMEBUFFER_SURFACE_BUFFERS=$(NUM_FRAMEBUFFER_SURFACE_BUFFERS)
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET_RUNNING_WITHOUT_SYNC_FRAMEWORK),true)
|
||||
|
@ -93,21 +93,23 @@ LOCAL_CFLAGS += -fvisibility=hidden -Werror=format
|
|||
LOCAL_CPPFLAGS := -std=c++11
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
liblog \
|
||||
libdl \
|
||||
libhardware \
|
||||
libutils \
|
||||
libEGL \
|
||||
libGLESv1_CM \
|
||||
libGLESv2 \
|
||||
libbinder \
|
||||
libui \
|
||||
libgui \
|
||||
libpowermanager
|
||||
libcutils \
|
||||
liblog \
|
||||
libdl \
|
||||
libhardware \
|
||||
libutils \
|
||||
libEGL \
|
||||
libGLESv1_CM \
|
||||
libGLESv2 \
|
||||
libbinder \
|
||||
libui \
|
||||
libgui \
|
||||
libpowermanager
|
||||
|
||||
LOCAL_MODULE := libsurfaceflinger
|
||||
|
||||
LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
###############################################################
|
||||
|
@ -121,15 +123,15 @@ LOCAL_CFLAGS := -DLOG_TAG=\"SurfaceFlinger\"
|
|||
LOCAL_CPPFLAGS := -std=c++11
|
||||
|
||||
LOCAL_SRC_FILES := \
|
||||
main_surfaceflinger.cpp
|
||||
main_surfaceflinger.cpp
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
libsurfaceflinger \
|
||||
libcutils \
|
||||
liblog \
|
||||
libbinder \
|
||||
libutils \
|
||||
libdl
|
||||
libsurfaceflinger \
|
||||
libcutils \
|
||||
liblog \
|
||||
libbinder \
|
||||
libutils \
|
||||
libdl
|
||||
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := libsigchain
|
||||
|
||||
|
@ -139,6 +141,8 @@ ifdef TARGET_32_BIT_SURFACEFLINGER
|
|||
LOCAL_32_BIT_ONLY := true
|
||||
endif
|
||||
|
||||
LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
||||
###############################################################
|
||||
|
@ -155,11 +159,13 @@ LOCAL_SRC_FILES := \
|
|||
DdmConnection.cpp
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
liblog \
|
||||
libdl
|
||||
libcutils \
|
||||
liblog \
|
||||
libdl
|
||||
|
||||
LOCAL_MODULE := libsurfaceflinger_ddmconnection
|
||||
|
||||
LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
endif # libnativehelper
|
||||
|
|
|
@ -44,6 +44,18 @@
|
|||
using namespace android;
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
#ifdef EGL_ANDROID_swap_rectangle
|
||||
static constexpr bool kEGLAndroidSwapRectangle = true;
|
||||
#else
|
||||
static constexpr bool kEGLAndroidSwapRectangle = false;
|
||||
#endif
|
||||
|
||||
#if !defined(EGL_EGLEXT_PROTOTYPES) || !defined(EGL_ANDROID_swap_rectangle)
|
||||
// Dummy implementation in case it is missing.
|
||||
inline void eglSetSwapRectangleANDROID (EGLDisplay, EGLSurface, EGLint, EGLint, EGLint, EGLint) {
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Initialize the display to the specified values.
|
||||
*
|
||||
|
@ -84,7 +96,6 @@ DisplayDevice::DisplayDevice(
|
|||
*/
|
||||
|
||||
EGLSurface surface;
|
||||
EGLint w, h;
|
||||
EGLDisplay display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
|
||||
if (config == EGL_NO_CONFIG) {
|
||||
config = RenderEngine::chooseEglConfig(display, format);
|
||||
|
@ -188,19 +199,14 @@ void DisplayDevice::flip(const Region& dirty) const
|
|||
{
|
||||
mFlinger->getRenderEngine().checkErrors();
|
||||
|
||||
EGLDisplay dpy = mDisplay;
|
||||
EGLSurface surface = mSurface;
|
||||
|
||||
#ifdef EGL_ANDROID_swap_rectangle
|
||||
if (mFlags & SWAP_RECTANGLE) {
|
||||
const Region newDirty(dirty.intersect(bounds()));
|
||||
const Rect b(newDirty.getBounds());
|
||||
eglSetSwapRectangleANDROID(dpy, surface,
|
||||
b.left, b.top, b.width(), b.height());
|
||||
if (kEGLAndroidSwapRectangle) {
|
||||
if (mFlags & SWAP_RECTANGLE) {
|
||||
const Region newDirty(dirty.intersect(bounds()));
|
||||
const Rect b(newDirty.getBounds());
|
||||
eglSetSwapRectangleANDROID(mDisplay, mSurface,
|
||||
b.left, b.top, b.width(), b.height());
|
||||
}
|
||||
}
|
||||
#else
|
||||
(void) dirty; // Eliminate unused parameter warning
|
||||
#endif
|
||||
|
||||
mPageFlipCount++;
|
||||
}
|
||||
|
|
|
@ -63,7 +63,6 @@ Layer::Layer(SurfaceFlinger* flinger, const sp<Client>& client,
|
|||
mTextureName(-1U),
|
||||
mPremultipliedAlpha(true),
|
||||
mName("unnamed"),
|
||||
mDebug(false),
|
||||
mFormat(PIXEL_FORMAT_NONE),
|
||||
mTransactionFlags(0),
|
||||
mQueuedFrames(0),
|
||||
|
@ -666,7 +665,6 @@ void Layer::clearWithOpenGL(
|
|||
|
||||
void Layer::drawWithOpenGL(const sp<const DisplayDevice>& hw,
|
||||
const Region& /* clip */, bool useIdentityTransform) const {
|
||||
const uint32_t fbHeight = hw->getHeight();
|
||||
const State& s(getDrawingState());
|
||||
|
||||
computeGeometry(hw, mMesh, useIdentityTransform);
|
||||
|
|
|
@ -361,7 +361,6 @@ private:
|
|||
uint32_t mTextureName; // from GLES
|
||||
bool mPremultipliedAlpha;
|
||||
String8 mName;
|
||||
mutable bool mDebug;
|
||||
PixelFormat mFormat;
|
||||
|
||||
// these are protected by an external lock
|
||||
|
|
|
@ -43,12 +43,6 @@ GLES11RenderEngine::GLES11RenderEngine() {
|
|||
glDisable(GL_DITHER);
|
||||
glDisable(GL_CULL_FACE);
|
||||
|
||||
struct pack565 {
|
||||
inline uint16_t operator() (int r, int g, int b) const {
|
||||
return (r<<11)|(g<<5)|b;
|
||||
}
|
||||
} pack565;
|
||||
|
||||
const uint16_t protTexData[] = { 0 };
|
||||
glGenTextures(1, &mProtectedTexName);
|
||||
glBindTexture(GL_TEXTURE_2D, mProtectedTexName);
|
||||
|
|
|
@ -48,12 +48,6 @@ GLES20RenderEngine::GLES20RenderEngine() :
|
|||
glPixelStorei(GL_UNPACK_ALIGNMENT, 4);
|
||||
glPixelStorei(GL_PACK_ALIGNMENT, 4);
|
||||
|
||||
struct pack565 {
|
||||
inline uint16_t operator() (int r, int g, int b) const {
|
||||
return (r<<11)|(g<<5)|b;
|
||||
}
|
||||
} pack565;
|
||||
|
||||
const uint16_t protTexData[] = { 0 };
|
||||
glGenTextures(1, &mProtectedTexName);
|
||||
glBindTexture(GL_TEXTURE_2D, mProtectedTexName);
|
||||
|
|
|
@ -283,7 +283,6 @@ status_t RenderEngine::BindImageAsFramebuffer::getStatus() const {
|
|||
|
||||
static status_t selectConfigForAttribute(EGLDisplay dpy, EGLint const* attrs,
|
||||
EGLint attribute, EGLint wanted, EGLConfig* outConfig) {
|
||||
EGLConfig config = NULL;
|
||||
EGLint numConfigs = -1, n = 0;
|
||||
eglGetConfigs(dpy, NULL, 0, &numConfigs);
|
||||
EGLConfig* const configs = new EGLConfig[numConfigs];
|
||||
|
|
|
@ -388,7 +388,6 @@ void SurfaceFlinger::init() {
|
|||
ALOGI( "SurfaceFlinger's main thread ready to run. "
|
||||
"Initializing graphics H/W...");
|
||||
|
||||
status_t err;
|
||||
Mutex::Autolock _l(mStateLock);
|
||||
|
||||
// initialize EGL for the default display
|
||||
|
@ -3096,9 +3095,10 @@ void SurfaceFlinger::renderScreenImplLocked(
|
|||
RenderEngine& engine(getRenderEngine());
|
||||
|
||||
// get screen geometry
|
||||
const uint32_t hw_w = hw->getWidth();
|
||||
const uint32_t hw_h = hw->getHeight();
|
||||
const bool filtering = reqWidth != hw_w || reqWidth != hw_h;
|
||||
const int32_t hw_w = hw->getWidth();
|
||||
const int32_t hw_h = hw->getHeight();
|
||||
const bool filtering = static_cast<int32_t>(reqWidth) != hw_w ||
|
||||
static_cast<int32_t>(reqWidth) != hw_h;
|
||||
|
||||
// if a default or invalid sourceCrop is passed in, set reasonable values
|
||||
if (sourceCrop.width() == 0 || sourceCrop.height() == 0 ||
|
||||
|
@ -3111,13 +3111,13 @@ void SurfaceFlinger::renderScreenImplLocked(
|
|||
if (sourceCrop.left < 0) {
|
||||
ALOGE("Invalid crop rect: l = %d (< 0)", sourceCrop.left);
|
||||
}
|
||||
if (static_cast<uint32_t>(sourceCrop.right) > hw_w) {
|
||||
if (sourceCrop.right > hw_w) {
|
||||
ALOGE("Invalid crop rect: r = %d (> %d)", sourceCrop.right, hw_w);
|
||||
}
|
||||
if (sourceCrop.top < 0) {
|
||||
ALOGE("Invalid crop rect: t = %d (< 0)", sourceCrop.top);
|
||||
}
|
||||
if (static_cast<uint32_t>(sourceCrop.bottom) > hw_h) {
|
||||
if (sourceCrop.bottom > hw_h) {
|
||||
ALOGE("Invalid crop rect: b = %d (> %d)", sourceCrop.bottom, hw_h);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue