summaryrefslogtreecommitdiffstats
path: root/Source/WebCore
Commit message (Collapse)AuthorAgeFilesLines
...
* | am 4d33d9fb: am 5fe0a0be: Merge "Crash on Orange media portal"John Reck2012-08-311-0/+6
|\ \ | |/ |/| | | | | * commit '4d33d9fbe70f0b56bd2c9bf8e6269ae21b4a5521': Crash on Orange media portal
| * am 5fe0a0be: Merge "Crash on Orange media portal"John Reck2012-08-311-0/+6
| |\ | | | | | | | | | | | | * commit '5fe0a0bed6096da8fb7beef2708c36972d67b723': Crash on Orange media portal
| | * Crash on Orange media portalAnders Edenbrandt2012-08-311-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Visit orange.deezer.com, press tab marked "My Music". Browser crashes every time. Pressing the button will trigger a re-layout of the page. This in turn will cause some rendering nodes of type RenderLayer to be removed from the rendering tree. When such a node is removed, it is important to also update certain lists in ancestor nodes that may hold references to this node. A node that may hold such a reference is identified as being a "stacking context". However, in Android, when the symbol ENABLE_COMPOSITED_FIXED_ELEMENTS is defined, the definition of what is a stacking context is expanded. In this case, a node that is a stacking context and holds references to descendants, changes one of the conditions that form part of Android's expanded stacking context definition. So, now it is no longer a stacking context, but the reference list is not deleted/updated. When the descendant node is removed a search for an ancestral stacking context is made, but it will not find this node since it is no longer a stacking context. The solution is to make sure that the list of references is updated/cleared whenever the node changes a condition that may cause its status as a stacking context to also change. Change-Id: If5a7b63715020bc3d23749a7c09003a86d90e28d
* | | am f2b8b88d: am 51619153: Merge "Fix memory leak caused by CSSRuleList wrapper"Jean-Baptiste Queru2012-08-2816-38/+50
|\ \ \ | |/ / | | | | | | | | | * commit 'f2b8b88d1a8fefaf6de6c6bce24ae092abdf9584': Fix memory leak caused by CSSRuleList wrapper
| * | am 51619153: Merge "Fix memory leak caused by CSSRuleList wrapper"Jean-Baptiste Queru2012-08-2816-38/+50
| |\ \ | | |/ | | | | | | | | | * commit '5161915319ca55318d2ef68a84b735f01c3d202f': Fix memory leak caused by CSSRuleList wrapper
| | * Fix memory leak caused by CSSRuleList wrapperxqian62012-08-2416-38/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Accessing cssrulelist in javascript will create a new CSSRuleList object and wrapper JS object. The wrapper JS object will be added into hidden array in parent JS object which is alive during the whole execution. Thus memory leak happens (CSSRuleList in webkit, wrapper object and weak global handle in v8). Cherry pick 2 patches from upstream solves the problem: http://trac.webkit.org/changeset/90949 This patch changes hidden reference from array to named property. So new wrapper will replace old wrappper. But the memory leak still exists because the CSSRuleList wrapper will be added into an object group of current document. So they will still be alive during execution. http://trac.webkit.org/changeset/91256 This patch avoids to adding CSSRuleList wrapper into document object group. Combined with the first patch, it can resolve the memory leak problem. Change-Id: Icb523db52963726f27b6c02596822cfb6e8d5049 Author: Vitaly Repeshko <vitalyr@chromium.org> Signed-off-by: Xi Qian <xi.qian@intel.com> Signed-off-by: Shuo Gao <shuo.gao@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Author-tracking-BZ: 32630
| * | am 465864a6: DO NOT MERGE Null checkJohn Reck2012-08-131-1/+1
| |\ \ | | | | | | | | | | | | | | | | * commit '465864a6d72a2505b7a725ddaadfff05cdece8fc': DO NOT MERGE Null check
| | * | DO NOT MERGE Null checkJohn Reck2012-08-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cherry pick Bug: 6975836 Fixes a crash in find on page Change-Id: I20e1597f2f3a381ee693c1bcef944243ca654110
| * | | am 28c43cfa: DO NOT MERGE Fix memory leakJohn Reck2012-08-091-0/+6
| |\ \ \ | | |/ / | | | | | | | | | | | | * commit '28c43cfac56492d4d307386c44ab9a1121f7d3bf': DO NOT MERGE Fix memory leak
| | * | DO NOT MERGE Fix memory leakJohn Reck2012-08-091-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cherry pick Bug: 6952980 GraphicsContext::createOffscreenContext creates an instance of both PlatformGraphicsSkia and GraphicsContext for ImageBuffer. However, ImageBuffer will only call delete on the GraphicsContext. In normal GC usage, the PlatformGraphicsContext's lifecycle is longer than the GCs, and is cleaned up by itself. This will result in leaking the PlatformGraphicsSkia context, though. We need to make sure to call delete on the PlatformGraphicsSkia context if we were initialized with the deleteUs() flag, which is used to indicate just this scenario. Change-Id: If908dcb44e99568b92ee63d6337ce9f84adc9adf
* | | | Don't track the opaque area of small drawing operationsChris Craik2012-08-241-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoids region & matrix computation work for small ops. Area value of 750 determined empirically. Change-Id: Iffc041ff69cd47c152ae4f71a474f4f6ccdc0bc5
* | | | Only use the clipping painter when painting to a bitmap.Chris Craik2012-08-231-18/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug:6389297 This improves performance in capturePicture, since it avoids all of the clipping and opaque region tracking logic. Change-Id: If1db553b2568573f94cdee7b801c67be0c47c056
* | | | Merge "Exit fast tile swap mode immediately upon SurfaceCollection swap" ↵Chris Craik2012-08-201-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | into jb-mr1-dev
| * | | | Exit fast tile swap mode immediately upon SurfaceCollection swapChris Craik2012-08-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug:7002755 This prevents the SurfaceCollectionManager from getting stuck in fast swap mode, where because swaps are occuring in process mode, and not in draw mode, which would previously have prevented the flag from being cleared. Change-Id: Ie888438c73aabeeff0534caad68b58e4acd2c440
* | | | | Merge "DO NOT MERGE Text locale compatibility shim" into jb-mr1-devVictoria Lease2012-08-202-91/+100
|\ \ \ \ \
| * | | | | DO NOT MERGE Text locale compatibility shimBilly Hewlett2012-08-202-91/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cherry-pick I2a69f2834ca50c37302dcd4816edb630b1208a41 from master. This change allows WebView to continue to function as before, displaying text using the system default fallback font chain. Change-Id: Ibcb8924d270cc602295158684bd700cfcbb1ec46
* | | | | | Fix opaque operation area calculationChris Craik2012-08-202-18/+25
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug:7003352 Correctly handle state pushing/manipulation, shaders, and transfer mode. Change-Id: I9f6591711b15ff99a182fc9956f7ef389320e9c3
* | | | | Merge "Support partial invals on layers" into jb-mr1-devJohn Reck2012-08-172-33/+25
|\ \ \ \ \
| * | | | | Support partial invals on layersJohn Reck2012-08-172-33/+25
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Iab18e8b5e2f0e37c380c8a15e51255121c3b1966
* | | | | | Merge "Early return from layer painting when fully clipped" into jb-mr1-devChris Craik2012-08-171-7/+8
|\ \ \ \ \ \ | |/ / / / / |/| | | | |
| * | | | | Early return from layer painting when fully clippedChris Craik2012-08-161-7/+8
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | Fixes logspam due to merged layers unnecessarily painting when fully clipped. Change-Id: I0f2f1b851c9386dcebda58bf844fd68073338e1c
* | | | | Fix SIGBUG due to misalignmentJohn Reck2012-08-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 7003956 Don't pack data Change-Id: I659a8b4cbf47ece9af16532949466f3fe2f6e61b
* | | | | Merge "Increase max texture count to accommodate large screens" into jb-mr1-devChris Craik2012-08-161-5/+5
|\ \ \ \ \
| * | | | | Increase max texture count to accommodate large screensChris Craik2012-08-161-5/+5
| |/ / / / | | | | | | | | | | | | | | | | | | | | bug:6968485 Change-Id: I8691d34fc5d4da1d03f31fd45c2d6d6abc39c53b
* | | | | Merge "Memory allocation changes" into jb-mr1-devJohn Reck2012-08-166-80/+125
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Memory allocation changesJohn Reck2012-08-166-80/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move RecordingData to LinearAllocator Consolidate 4 heaps into 1 Minimize initial RAM usage Add page size growth Change-Id: I997ee6d88d0ae500ed85b9d20e6ed095069f2b04
* | | | | Merge "Correctly handle preserve-3d layer ordering" into jb-mr1-devChris Craik2012-08-154-47/+86
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Correctly handle preserve-3d layer orderingChris Craik2012-08-154-47/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug:6843244 Current implementation only works for HW acceleration. Change-Id: I009090132a8f3859ab9e57e609c1754f9021d4d7
* | | | | Move text allocations to LinearAllocatorJohn Reck2012-08-143-17/+34
| | | | | | | | | | | | | | | | | | | | Change-Id: I3ef492679e94bdb452033ee3af3162b88d323d57
* | | | | Memory usage improvementsJohn Reck2012-08-142-10/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Share SkPaints between drawPosText calls Change-Id: Idf25c937a70e2969a864c829e566688b977720c0
* | | | | Merge "Null check" into jb-mr1-devJohn Reck2012-08-131-1/+1
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Null checkJohn Reck2012-08-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 6975836 Change-Id: I085e2099d016730ba1fdcce71e0452b2026c9617
* | | | | Merge "Improve in-canvas pure color checking" into jb-mr1-devChris Craik2012-08-132-35/+49
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Improve in-canvas pure color checkingChris Craik2012-08-102-35/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fast path for same-color rect drawing in InstrumentedPlatformCanvas Also minimize unnecessary clipping recording-side. Change-Id: I8e9ebcfce8d137ca0b27d17c42c5045a0d3b3a36
* | | | | Merge "Clear mOperationState when calling popState" into jb-mr1-devJohn Reck2012-08-102-7/+14
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Clear mOperationState when calling popStateJohn Reck2012-08-102-7/+14
| | | | | | | | | | | | | | | | | | | | Change-Id: I96df41fc2b8e040e0e98b991c71b1d9bda40788e
* | | | | Merge "Paint with requested size instead of layer size" into jb-mr1-devChris Craik2012-08-101-1/+1
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | Paint with requested size instead of layer sizeChris Craik2012-08-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | bug:6925835 Change-Id: Idaf37156cd0c42f59151dc2dca95acfef542d312
* | | | | Merge "Clip out opaque regions to avoid double painting" into jb-mr1-devChris Craik2012-08-093-4/+154
|\ \ \ \ \
| * | | | | Clip out opaque regions to avoid double paintingChris Craik2012-08-083-4/+154
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implementation is similar to PicturePile::drawWithClipRecursive. When an opaque paint operation (currently either a DrawBitmapRect/Pattern or FillRect) will cover up a section of the output, avoid painting things underneath it. Track this covered region by recursing backwards through paint operations, and clipping out opaque areas when operations beneath them paint. Change-Id: Id3ae7508aada27f90246feb689d9e7f53f03ae32
* | | | | Fix memory leakJohn Reck2012-08-081-0/+6
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 6952980 GraphicsContext::createOffscreenContext creates an instance of both PlatformGraphicsSkia and GraphicsContext for ImageBuffer. However, ImageBuffer will only call delete on the GraphicsContext. In normal GC usage, the PlatformGraphicsContext's lifecycle is longer than the GCs, and is cleaned up by itself. This will result in leaking the PlatformGraphicsSkia context, though. We need to make sure to call delete on the PlatformGraphicsSkia context if we were initialized with the deleteUs() flag, which is used to indicate just this scenario. Change-Id: I73aa623182a039bd75d378d198cc3bd2d4d185ef
* | | | Merge "Reset cached opacity on shader swap" into jb-mr1-devChris Craik2012-08-071-0/+1
|\ \ \ \
| * | | | Reset cached opacity on shader swapChris Craik2012-08-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug:6947623 Multiple shaders share the opacity variable, so reset the cache when swapping programs. Change-Id: I752575d6089077aa8034c171c5c016e5e4e80606
* | | | | Add extra null checkJohn Reck2012-08-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 6789548 Change-Id: I2c6de52862f71881fbb885680a9f917d87d293df
* | | | | Remove usages of getCanvasJohn Reck2012-08-0620-130/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Everything goes through either PlatformGraphicsContext or recordingCanvas() Change-Id: I375a4294d2e8d4b467b70c6b8a7f0b96f402f252
* | | | | am dd5962d2: am 47387cc7: Merge "Fix browser rendering issue: pure color ↵John Reck2012-08-021-1/+1
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | tiles are rendered black" * commit 'dd5962d2534b8c3cc215492c8dcf463e923f73c2': Fix browser rendering issue: pure color tiles are rendered black
| * | | | am 47387cc7: Merge "Fix browser rendering issue: pure color tiles are ↵John Reck2012-08-021-1/+1
| |\ \ \ \ | | |_|/ / | |/| | / | | | |/ | | |/| | | | | | | | | rendered black" * commit '47387cc7716048dcea1cc5f9bf37da65d38e10be': Fix browser rendering issue: pure color tiles are rendered black
| | * | Fix browser rendering issue: pure color tiles are rendered blackYuyang Du2012-08-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The “pure color tile” optimization finds the pure-color tiles and then draws the tiles simply with the color (otherwise the texture). But the RGBA color pointer type is char, which may overflow when the value is larger than 127. In such case, the tiles in question are rendered black, because of the wrong color. This bug is fixed by defining the pointer as unsigned char. Change-Id: I5c7214423fa6961e707bde72f0e18c610374745d Author: Yuyang Du <yuyang.du@intel.com> Signed-off-by: Yuyang Du <yuyang.du@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
* | | | DO NOT MERGE. Allow numeric entry fields to have placeholder text.George Mount2012-08-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Bug 6712551 Change-Id: I0e43bb223dc2646d6d78f6135f502b75066e6449
* | | | Tweak shadow settingsJohn Reck2012-08-011-3/+3
| | | | | | | | | | | | | | | | Change-Id: I88dff91a9840c4705c9153cf03d3c6951fcee02a