<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>50892</bug_id>
          
          <creation_ts>2010-12-12 06:42:23 -0800</creation_ts>
          <short_desc>[Qt][WK2] Crash in WebPage constructor</short_desc>
          <delta_ts>2010-12-13 05:52:49 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Balazs Kelemen">kbalazs</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>320832</commentid>
    <comment_count>0</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2010-12-12 06:42:23 -0800</bug_when>
    <thetext>WebPage initializing it&apos;s Page with a PageClients with zero DeviceMotionClient* that leads to 
zero pointer dereference. This is how Page using the clients:
#if ENABLE(DEVICE_ORIENTATION)
    , m_deviceMotionController(RuntimeEnabledFeatures::deviceMotionEnabled() ? new DeviceMotionController(pageClients.deviceMotionClient) : 0)
    , m_deviceOrientationController(RuntimeEnabledFeatures::deviceOrientationEnabled() ? new DeviceOrientationController(this, pageClients.deviceOrientationClient) : 0)
#endif

That means the correct fix is to disable the device motion and orientation features at runtime. The WebPage contructor also needs a fix for consistency with the enable flags but that should be done in a different patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320833</commentid>
    <comment_count>1</comment_count>
      <attachid>76326</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2010-12-12 06:52:34 -0800</bug_when>
    <thetext>Created attachment 76326
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320835</commentid>
    <comment_count>2</comment_count>
      <attachid>76326</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2010-12-12 07:13:45 -0800</bug_when>
    <thetext>Comment on attachment 76326
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=76326&amp;action=review

LGTM, except one small and one big thing:

&gt; WebKit2/WebProcess/qt/WebProcessQt.cpp:47
&gt; +    // Disable runtime enabled features that has no WebKit2 implementation yet.

s/has/have/

&gt; WebKit2/WebProcess/qt/WebProcessQt.cpp:53
&gt; +    WebCore::RntimeEnabledFeatures::setSpeechInputEnabled(false);

s/Rntime/Runtime/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320842</commentid>
    <comment_count>3</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2010-12-12 08:26:46 -0800</bug_when>
    <thetext>Committed in http://trac.webkit.org/changeset/73876.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321060</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-12-13 05:28:34 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Committed in http://trac.webkit.org/changeset/73876.

Thx for the fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>321076</commentid>
    <comment_count>5</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2010-12-13 05:52:49 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Committed in http://trac.webkit.org/changeset/73876.
&gt; 
&gt; Thx for the fix.

It&apos;s an honor to serve you!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76326</attachid>
            <date>2010-12-12 06:52:34 -0800</date>
            <delta_ts>2010-12-12 08:27:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50892-20101212155233.patch</filename>
            <type>text/plain</type>
            <size>1854</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdDIvQ2hhbmdlTG9nIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
MTkwODA0NzRlYTgxZDdiNDU2ZWNhNDhiMjE0ZmFkYmEzYzc3YjFmNi4uMzU1OWQzMzgzYTE5N2Mw
Y2ZiNDM3MjQ2Yzc2Yjg5MTFiMTNjZDgzNSAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0xMi0xMiAgQmFs
YXpzIEtlbGVtZW4gIDxrYmFsYXpzQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XVtXSzJdIENyYXNoIGluIFdlYlBhZ2UgY29u
c3RydWN0b3IuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01MDg5MgorCisgICAgICAgICogV2ViUHJvY2Vzcy9xdC9XZWJQcm9jZXNzUXQuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVXZWJQcm9jZXNzKToK
KyAgICAgICAgRGlzYWJsZSBydW50aW1lIGVuYWJsZWQgZmVhdHVyZXMgdGhhdCBoYXMgbm8gV2Vi
S2l0MiBpbXBsZW1lbnRhdGlvbiB5ZXQuCisKIDIwMTAtMTItMTAgIEpvbiBIb25leWN1dHQgIDxq
aG9uZXljdXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBTZWxlY3QgbWVudXMgd2l0aCBzaG9ydCBv
cHRpb24gdGl0bGVzIGRvIG5vdCBwYWludCBwcm9wZXJseQpkaWZmIC0tZ2l0IGEvV2ViS2l0Mi9X
ZWJQcm9jZXNzL3F0L1dlYlByb2Nlc3NRdC5jcHAgYi9XZWJLaXQyL1dlYlByb2Nlc3MvcXQvV2Vi
UHJvY2Vzc1F0LmNwcAppbmRleCA4MWZiOTM1NGUzYmFiMGM3YzI2OGEzMjgwYmQ5ODFjNmUyMzgx
ZDE4Li42NWFlZjBhMjBmMjA3N2ZkNjUyYjEwZjdjNTY3Y2Q5Y2ZlODIzNzBmIDEwMDY0NAotLS0g
YS9XZWJLaXQyL1dlYlByb2Nlc3MvcXQvV2ViUHJvY2Vzc1F0LmNwcAorKysgYi9XZWJLaXQyL1dl
YlByb2Nlc3MvcXQvV2ViUHJvY2Vzc1F0LmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUg
IldlYlByb2Nlc3MuaCIKIAogI2luY2x1ZGUgIldlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
aCIKKyNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaD4KICNpbmNsdWRl
IDxRTmV0d29ya0FjY2Vzc01hbmFnZXI+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpAQCAtNDIsNiAr
NDMsMTUgQEAgdm9pZCBXZWJQcm9jZXNzOjpwbGF0Zm9ybUNsZWFyUmVzb3VyY2VDYWNoZXMoKQog
dm9pZCBXZWJQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVXZWJQcm9jZXNzKGNvbnN0IFdlYlBy
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIENvcmVJUEM6OkFyZ3VtZW50RGVj
b2RlciogYXJndW1lbnRzKQogewogICAgIG1fbmV0d29ya0FjY2Vzc01hbmFnZXIgPSBuZXcgUU5l
dHdvcmtBY2Nlc3NNYW5hZ2VyOworCisgICAgLy8gRGlzYWJsZSBydW50aW1lIGVuYWJsZWQgZmVh
dHVyZXMgdGhhdCBoYXMgbm8gV2ViS2l0MiBpbXBsZW1lbnRhdGlvbiB5ZXQuCisjaWYgRU5BQkxF
KERFVklDRV9PUklFTlRBVElPTikKKyAgICBXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVz
OjpzZXREZXZpY2VNb3Rpb25FbmFibGVkKGZhbHNlKTsKKyAgICBXZWJDb3JlOjpSdW50aW1lRW5h
YmxlZEZlYXR1cmVzOjpzZXREZXZpY2VPcmllbnRhdGlvbkVuYWJsZWQoZmFsc2UpOworI2VuZGlm
CisjaWYgRU5BQkxFKFNQRUVDSF9JTlBVVCkKKyAgICBXZWJDb3JlOjpSbnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNldFNwZWVjaElucHV0RW5hYmxlZChmYWxzZSk7CisjZW5kaWYKIH0KIAogdm9pZCBX
ZWJQcm9jZXNzOjpwbGF0Zm9ybVNodXRkb3duKCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>