Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-35161

Out-of-Memory condition when zooming into Google Maps too quickly

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • P2: Important
    • None
    • 5.1.1
    • WebKit
    • None

    Description

      WebKit bug: https://bugs.webkit.org/show_bug.cgi?id=105158

      When Google Maps is zoomed in quickly, you end up with a very, very large div before new tiles can be brought down to replace it. During that time, when GraphicsLayerTextureMapper updates its backing store, the TextureMapperTiledBackingStore::createOrDestroyTilesIfNeeded() method attempts to allocate massive tiles, leading to allocation of several Gb of RAM, and the browser process gets killed by the kernel OOM killer.

      It seems that WebKit is planning to replace TextureMapperTiledBackingStore with Composite Graphics from WebKit 2 (see https://bugs.webkit.org/show_bug.cgi?id=102994), but I guess this hasn't landed yet.

      I can't use WebKit 2 via QtQuick, because I need features that aren't available through that API yet.

      Attachments

        1. crash-huge-layer.html
          0.4 kB
        2. Patch
          1 kB

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              annulen Konstantin Tokarev
              giddie Paul Gideon Dann
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes