replicant-frameworks_native/services/surfaceflinger
Jesse Hall afe2b1fadd surfaceflinger: don't close fence fds after passing to queueBuffer
ANativeWindow::queueBuffer takes ownership of the fence fd passed to
it, and will close it before returning. SurfaceFlinger's screenshot
code was also closing the syncFd it passed to queueBuffer. Most of the
time this meant the second close() silently failed, but in a rare race
condition the file descriptor could be reused between the two
close()s.

Bug: 17946343
Change-Id: Ib74fcb1dce52cc21328059c99b7c4c76f41aa3a5
2014-10-21 11:11:53 -07:00
..
DisplayHardware
Effects
EventLog
RenderEngine
tests
Android.mk
Barrier.h
Client.cpp
Client.h
clz.h
Colorizer.h
DdmConnection.cpp
DdmConnection.h
DisplayDevice.cpp
DisplayDevice.h
DispSync.cpp
DispSync.h
EventControlThread.cpp
EventControlThread.h
EventThread.cpp
EventThread.h
FrameTracker.cpp
FrameTracker.h
Layer.cpp
Layer.h
LayerDim.cpp
LayerDim.h
main_surfaceflinger.cpp
MessageQueue.cpp
MessageQueue.h
MODULE_LICENSE_APACHE2
MonitoredProducer.cpp
MonitoredProducer.h
SurfaceFlinger.cpp surfaceflinger: don't close fence fds after passing to queueBuffer 2014-10-21 11:11:53 -07:00
SurfaceFlinger.h
SurfaceFlingerConsumer.cpp
SurfaceFlingerConsumer.h
Transform.cpp
Transform.h