summaryrefslogtreecommitdiffstats
path: root/libs/gui
Commit message (Collapse)AuthorAgeFilesLines
* resolved conflicts for 7534e4e6 to lmp-mr1-ub-devNaveen Leekha2015-09-241-2/+2
| | | | Change-Id: I543df164076b44578b14d41031800bb62b81586d
* am 73887c08: am b414255f: Initialize local variables to avoid data leakNaveen Leekha2015-09-241-1/+1
|\ | | | | | | | | * commit '73887c0864c9a928db6f66bd48c5aea4d31d9a8b': Initialize local variables to avoid data leak
| * am b414255f: Initialize local variables to avoid data leakNaveen Leekha2015-09-241-1/+1
| |\ | | | | | | | | | | | | * commit 'b414255f53b560a06e642251535b019327ba0d7b': Initialize local variables to avoid data leak
| | * Initialize local variables to avoid data leakNaveen Leekha2015-09-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The uninitialized local variables pick up whatever the memory content was there on stack. This data gets sent to the remote process in case of a failed transaction, which is a security issue. Fixed. (Partial manual merge of master change 12ba0f57d028a9c8f4eb3afddc326b70677d1e0c. Rest to automerge from klp-dev) For b/23696300 Change-Id: I704c9fab327b3545c58e8a9a96ac542eb7469c2a
* | | Merge "libgui: Allow an IGBProducer to disable allocation"Dan Stoza2015-04-244-22/+108
|\ \ \
| * | | libgui: Allow an IGBProducer to disable allocationDan Stoza2015-04-234-22/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a new method IGBP::allowAllocation, which controls whether dequeueBuffer is permitted to allocate a new buffer. If allocation is disallowed, dequeueBuffer will block or return an error as it normally would (as controlled by *ControlledByApp). If there are free buffers, but they are not of the correct dimensions, format, or usage, they may be freed if a more suitable buffer is not found first. Bug: 19801715 Change-Id: I0d604958b78b2fd775c2547690301423f9a52165
* | | | Merge "libgui: Change BufferQueue to use free lists"Dan Stoza2015-04-243-39/+116
|\ \ \ \ | |/ / /
| * | | libgui: Change BufferQueue to use free listsDan Stoza2015-04-233-39/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BufferQueue used to choose free buffers by scanning through its array of slots and picking one based on timestamp. This changes that mechanism to use a pair of free lists: one with buffers attached and one without. This makes it easier to choose either type of free slot depending on the needs of the current operation. Fixes an issue with the first version of this change, found in bugs 20482952, 20443314, and 20464549. Bug: 13175420 Change-Id: I9b6e83cfe8f9b4329a976025cb8e291d51fb6d4a
* | | | Merge "libgui: Fix some bitrot/warnings in tests"Dan Stoza2015-04-239-77/+108
|\ \ \ \
| * | | | libgui: Fix some bitrot/warnings in testsDan Stoza2015-04-209-77/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These tests hadn't been run in a while and had accumulated some rot. This fixes most of the compile warnings and some tests which fail incorrectly, but 2 failures remain on N6. Change-Id: I7fee78cd058a32f4d7df40ec9f899ff767f68517
* | | | | Merge "libui/libgui: Fix errors in parceling"Dan Stoza2015-04-231-52/+81
|\ \ \ \ \ | |/ / / / | | / / / | |/ / / |/| | |
| * | | libui/libgui: Fix errors in parcelingDan Stoza2015-04-201-52/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BufferItem and GraphicBuffer were not parceling correctly, which had not been noticed because the libgui tests (specifically, one that tests placing a BufferQueue in a separate process from the IGBP/C) had not been run recently. This change fixes the errors found in those classes. Change-Id: Ie224361a534a79115a3481d83ff97f21d154d4f5
* | | | Merge "Revert "libgui: Change BufferQueue to use free lists""Dan Stoza2015-04-223-113/+39
|\ \ \ \
| * | | | Revert "libgui: Change BufferQueue to use free lists"Dan Stoza2015-04-223-113/+39
| |/ / / | | | | | | | | | | | | | | | | | | | | This reverts commit 8dddc990103b71137be2a6365a26b1ac36598e68. Change-Id: I0b0fed9f1394c6f6ae812f6c562ead4473a8226e
* | | | libgui: Fix CPU rendering on SurfaceDan Stoza2015-04-211-4/+6
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the surface damage code went in, it incorrectly assumed that if an application was doing CPU rendering, it would be using lock and unlockAndPost instead of dequeue and queue, so it repurposed the dirty region too aggressively. This change keeps it from clobbering the dirty region if a CPU producer is attached. Bug: 20431815 Change-Id: Id4dfd71378311ea822f0289f6de2d20a7bd84014
* | | libgui: Change BufferQueue to use free listsDan Stoza2015-04-173-39/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BufferQueue used to choose free buffers by scanning through its array of slots and picking one based on timestamp. This changes that mechanism to use a pair of free lists: one with buffers attached and one without. This makes it easier to choose either type of free slot depending on the needs of the current operation. Bug: 13175420 Change-Id: Ic8398e7511bd11a60a1c82e3ad2ee271c9822be1
* | | libgui: Pass surface damage through BufferQueueDan Stoza2015-04-154-3/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds support for passing surface damage all of the way down from the EGL interface through the consumer side of the BufferQueue. Depends on system/core change Ie645e6a52b37b5c1b3be19481e8348570d1aa62c Bug: 11239309 Change-Id: I4457ea826e9ade4ec187f973851d855b7b93a31b
* | | libgui: Plumb detachBuffer through ConsumerBaseDan Stoza2015-04-071-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | Exposes IGraphicBufferConsumer::detachBuffer as a ConsumerBase method. attachBuffer is not currently exposed, because all current clients will be recycling buffers through the allocator. Bug: 19628705 Change-Id: I3e519767fa43d5d880c1d5695e31b60f6ad588af
* | | DO NOT MERGE libgui: Plumb attach/detach through SurfaceDan Stoza2015-04-021-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Exposes the attachBuffer and detachNextBuffer calls from IGraphicBufferProducer to the public Surface interface. Also moves the version of connect that takes a producer callback from protected to public. Bug: 19628705 Change-Id: I9ebc3013c4d9c84c4e8ef150c00e03f8af80319e (cherry picked from commit c14ecb9de243af8864610fd3c74342e3ca2cb4bc)
* | | DO NOT MERGE libgui: Remove IGBC::BufferItemDan Stoza2015-03-207-257/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes IGraphicBufferConsumer::BufferItem. Depends on the following changes: I187b3a7d05196b6289596afac8fb9a9d4aebff76 I0ddd38df37500cfd6b21d1e768ed14e39c5cd9fc Cherry-pick of Id1fa56d092188f2cb712768d5d2fc6a9027fb73c Change-Id: I3edf0db8fba656fd78e18a5a7f1137f0fb6b237d
* | | DO NOT MERGE libgui: Prepare for IGBC::BufferItem removalDan Stoza2015-03-1910-13/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, there are two instances of BufferItem: one inside of IGraphicBufferConsumer, and a standalone one inside of libgui. They only differ in the name of one of the fields, and we want to remove the IGBC version. This changes things so that client code may be incrementally switched over to the libgui version. This is a squashed commit containing the following changes: I64f495105f56cbf5803cea4aa6b072ea29b70cf5 I1394e693314429ada93427889f10b7b01c948053 I9c3bc8037fa9438d4d9080b8afb694219ef2f71f I699ed0a6837076867ca756b28d1ffb2238f7a0d9 Iac8425e1241774304a131da2fb9dec6e82922f13 Change-Id: Ic4d51f5df6dbc70b376d13fceba2335b9bae4f3d
* | | DO NOT MERGE Add dataSpace to buffer queues; remove old format enums.Eino-Ville Talvala2015-03-1917-32/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Wire up new dataSpace parameter through buffer queue stack - Update tests to include the parameter - Switch eglApi to using dataSpace to indicate sRGB gamma/linear difference - Remove RAW_SENSOR in favor of RAW16 - Remove use of sRGB format enums - Add default dataspace to buffer queue core - Add query for default dataspace Cherry pick of I070bd2e7c56506055c419004c29e2e3feac725df Change-Id: I461952389c18051176c6b75e664f20ad369f5760
* | | Merge "Surface: Permit an IProducerListener on connect"Dan Stoza2015-03-191-1/+5
|\ \ \
| * | | Surface: Permit an IProducerListener on connectDan Stoza2015-03-181-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows clients of Surface to provide an IProducerListener callback object to Surface::connect, which will be passed down to the underlying IGraphicBufferProducer. Cherry pick of I5ea5229bf3a329bf02c6bd20e7247039c75d136b Change-Id: I6f8f52c72654e4cee649721383819bafe378f964
* | | | libgui: Only allow one return from useFenceSyncDan Stoza2015-03-191-1/+2
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An #ifdef was causing multiple returns in this function, which was triggering an unreachable code error on some build targets. This adds an #else to ensure that only one return is exposed in any given build. Cherry pick of I9ed7c3e769bc9094ad31d810944227d1d8302886 Change-Id: Ibddc5706159d168031d1805fcce3eedc068296cf
* | | GLConsumer: Fix unsigned subtraction during cropDan Stoza2015-03-181-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since some variables had been switched from signed to unsigned, there was a section of code that was guaranteed to be incorrect because it effectively did 'if (a < b) { c = a - b; }'. This change fixes it. Cherry pick of I9cdd6c9a0179801addebb5d6dc1fbaddf8f53c62 Bug: 19346631 Change-Id: Id13a46f74c9ae7278463ce22b586f4dc21b5e453
* | | libgui: Enable -Weverything and -WerrorDan Stoza2015-03-1829-406/+517
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. Cherry pick of I034abec27bf4020d84af60d7acc1939c59986dd6 plus a couple of minor changes to CpuConsumer.cpp to make it work with a prior change: Uncomment CC_LOGV on line 46 Change C-style cast to static_cast on line 71 Change-Id: Iaec610477ea0122317b0578fb74caf2383d4cf08
* | | am b9bb1f13: Merge "Add support for SENSOR_TYPE_WRIST_TILT_GESTURE" into ↵Nick Vaccaro2015-02-111-0/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | lmp-mr1-modular-dev * commit 'b9bb1f139bd1cbf3b3faa002b509f3f0a167e20b': Add support for SENSOR_TYPE_WRIST_TILT_GESTURE
| * | | Add support for SENSOR_TYPE_WRIST_TILT_GESTURENick Vaccaro2015-02-071-0/+7
| |/ / | | | | | | | | | Change-Id: I7e5516de805618df41de0f9b06805002e32708c3
* | | am 94ee9b59: Merge "CpuConsumer: lock buffers that could be YUV as ycbcr" ↵Lajos Molnar2015-01-291-37/+58
|\ \ \ | |/ / | | | | | | | | | | | | | | | into lmp-mr1-dev * commit '94ee9b5916903e6ee23bb1ce8f688900a4eb6f65': CpuConsumer: lock buffers that could be YUV as ycbcr
| * | CpuConsumer: lock buffers that could be YUV as ycbcrLajos Molnar2015-01-281-37/+58
| | | | | | | | | | | | | | | Bug: 17906609 Change-Id: Ic71af69ec3b19ab1224ed3ad5e0a97c60e81cda6
* | | am a59d7a6a: Merge "GUI: Remove unused variables"Andreas Gampe2014-12-093-6/+2
|\ \ \ | | | | | | | | | | | | | | | | * commit 'a59d7a6a66a2b8dcb2d00dbd6371fa89ae45ab04': GUI: Remove unused variables
| * | | GUI: Remove unused variablesAndreas Gampe2014-12-083-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For build-system CFLAGS clean-up, remove unused variables. Bug: 18632512 Change-Id: I79fdcf830683d7278f4bf114cfb76a26da1b88ff
| * | | libgui: Enable -Weverything and -WerrorDan Stoza2014-12-0529-407/+519
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. This is a squashed commit based on an initial change with a couple of fixes to avoid breaking certain targets. The source commits are: d723bd7669b4fc88dc282d8bf8ba5ecb2849d22f 00d504c06ea034befe143e6b8cb34d004670ed02 429ba89cd293633d2f882165066b422c96597df2 Change-Id: I034abec27bf4020d84af60d7acc1939c59986dd6
| * | | Fix crash when user provides large values in the Parcel.Michael Lentine2014-12-052-4/+18
| | | | | | | | | | | | | | | | | | | | Bug: 18102648 Change-Id: Ie6a24718e586a34424238363de80f9545951514f (cherry-picked from commit 8afa1c4ab86d724feb7716e153b7835385534590)
* | | | am 5588d900: Merge "Enable clang for libui/libgui/surfaceflinger"Dan Albert2014-12-053-6/+9
|\ \ \ \ | |/ / / | | | | | | | | | | | | * commit '5588d9000cd1ef217185c9001d6b5ecd84db9741': Enable clang for libui/libgui/surfaceflinger
| * | | Enable clang for libui/libgui/surfaceflingerDan Stoza2014-12-043-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables clang and C++11 for libui/libgui/surfaceflinger, and eliminates all compile-time warnings. Change-Id: Ie237fdb5ae44f2bfcddaa884f9c65ec3f08ae50f (cherry picked from commit f10c46ef855b6410b20ebd8b1351d4d78d8eca8e)
* | | | am 55f71bc0: Merge "Replace IInterface::asBinder() with a static"Marco Nelissen2014-11-1712-22/+22
|\ \ \ \ | |/ / / | | | | | | | | | | | | * commit '55f71bc0800b9ec7a779c5d30d5a90e074c2526b': Replace IInterface::asBinder() with a static
| * | | Replace IInterface::asBinder() with a staticMarco Nelissen2014-11-1712-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | so we can do NULL checks again, and update calls to IInterface::asBinder() to use the new static version. Change-Id: Ia7b10eb38ca55b72278bfd33d3bf647f338b4e6a
* | | | am 98d20f82: Merge "Add a BufferItem parameter to onFrameAvailable" into ↵Dan Stoza2014-11-0712-27/+62
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | lmp-mr1-dev * commit '98d20f82ca8979b30c81df9639f54ab11e1951f9': Add a BufferItem parameter to onFrameAvailable
| * | | Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-devDan Stoza2014-11-0712-27/+62
| |\ \ \
| | * | | Add a BufferItem parameter to onFrameAvailableDan Stoza2014-11-0712-27/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passes the BufferItem for the queued buffer to the onFrameAvailable callback so the consumer can track the BufferQueue's contents. Also adds an onFrameReplaced callback, which is necessary if the consumer wants to do anything more than simple queue length tracking. Bug: 18111837 Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
* | | | | am c6f93a43: Merge "Add missing include to fix libc++ build."Dan Albert2014-11-071-0/+2
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | * commit 'c6f93a43d636b0ad16b75adf664c6a33d30b39dd': Add missing include to fix libc++ build.
| * | | | Add missing include to fix libc++ build.Dan Albert2014-11-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was previously committed, but I guess it got lost in the merge queue. Bug: 15193147 Change-Id: Ic0e5d90ab403fb833d6a3bb7c55d279c56534869
| * | | | am 649bafb7: Merge "bufferqueue: workaround: allow NULL fence with ↵Jesse Hall2014-10-201-1/+6
| |\ \ \ \ | | | |_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | queueBuffer (DO NOT MERGE)" into lmp-dev * commit '649bafb7ba2c3204295bc3451ff7af7e28e714ed': bufferqueue: workaround: allow NULL fence with queueBuffer (DO NOT MERGE)
| * | | | am 9cc84950: Merge "Don\'t check if this == NULL."Dan Albert2014-10-151-1/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * commit '9cc849500df0bba42d3ed19b90c38ff1dffd2262': Don't check if this == NULL.
| * \ \ \ \ am a7eb4b74: Merge "Fix sockfd leakage in SensorService." into lmp-devAravind Akella2014-10-031-9/+13
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'a7eb4b74f74423dafd88adf94a7984ae927c3a23': Fix sockfd leakage in SensorService.
| * \ \ \ \ \ am f05ef4e5: Merge "Surface: cancel the dequeued buffer when requestBuffer ↵Jesse Hall2014-10-021-0/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fails" into lmp-dev * commit 'f05ef4e542c3041379025e16497ff23710de5dbf': Surface: cancel the dequeued buffer when requestBuffer fails
| * \ \ \ \ \ \ am 6ee97e74: Merge "Fix a null dereference."Dan Albert2014-09-231-1/+1
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6ee97e74d2c972dec2aa6a2f231b718eae54898f': Fix a null dereference.
| * \ \ \ \ \ \ \ resolved conflicts for merge of 67d8bd66 to lmp-dev-plus-aospLajos Molnar2014-09-181-0/+29
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I2e9aab90ac53bb32630598f50cc26f6e46acf6d6