<?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>29510</bug_id>
          
          <creation_ts>2009-09-18 15:18:22 -0700</creation_ts>
          <short_desc>Active DOM objects should be suspended while a modal dialog is displayed</short_desc>
          <delta_ts>2009-09-18 15:26:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>148418</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-09-18 15:18:22 -0700</bug_when>
    <thetext>PageGroupLoadDeferrer calls suspendActiveDOMObjects() on all platforms but Mac, which results in e.g. DOM timers working in a page beneath a modal dialog. This doesn&apos;t match Safari for Windows or Firefox, and generally doesn&apos;t make much sense.

Other active DOM objects also need to be suspended to avoid reentrant JavaScript execution.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148425</commentid>
    <comment_count>1</comment_count>
      <attachid>39799</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-09-18 15:23:09 -0700</bug_when>
    <thetext>Created attachment 39799
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148426</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-09-18 15:26:43 -0700</bug_when>
    <thetext>Committed revision 48540.

Note that Firefox doesn&apos;t fully pass the test - even though timers are disabled while the modal alert and dialog are displayed, they still run while he latter is being created.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39799</attachid>
            <date>2009-09-18 15:23:09 -0700</date>
            <delta_ts>2009-09-18 15:23:31 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>SuspendTimers.txt</filename>
            <type>text/plain</type>
            <size>3311</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0ODUzOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMDktMDktMTggIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NTEwCisgICAgICAgIEFj
dGl2ZSBET00gb2JqZWN0cyBzaG91bGQgYmUgc3VzcGVuZGVkIHdoaWxlIGEgbW9kYWwgZGlhbG9n
IGlzIGRpc3BsYXllZAorCisgICAgICAgICogbWFudWFsLXRlc3RzL2pzLXRpbWVycy1iZW5lYXRo
LW1vZGFsLWRpYWxvZy5odG1sOiBBZGRlZCBhIHRlc3QgZm9yIEpTIHRpbWVycy4KKworICAgICAg
ICAqIHBhZ2UvUGFnZUdyb3VwTG9hZERlZmVycmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBh
Z2VHcm91cExvYWREZWZlcnJlcjo6UGFnZUdyb3VwTG9hZERlZmVycmVyKToKKyAgICAgICAgKFdl
YkNvcmU6OlBhZ2VHcm91cExvYWREZWZlcnJlcjo6flBhZ2VHcm91cExvYWREZWZlcnJlcik6Cisg
ICAgICAgIE1hdGNoIG90aGVyIHBsYXRmb3JtcywgYW5kIG1ha2UgTWFjIGFsc28gc3VzcGVuZCBh
Y3RpdmUgRE9NIG9iamVjdHMuIFNpbmNlIGEgcGFnZSB0aGF0CisgICAgICAgIGN1cnJlbnRseSBk
aXNwbGF5cyBhIG1vZGFsIGRpYWxvZyBjYW5ub3QgZ28gaW50byBwYWdlIGNhY2hlLCB0aGVyZSBp
cyBubyBkYW5nZXIgb2Ygc3VzcGVuZGluZworICAgICAgICBhbiBvYmplY3QgdHdpY2UuICAgICAg
ICAKKwogMjAwOS0wOS0xOCAgQ3NhYmEgT3N6dHJvZ29uYWMgIDxvc3ppQGluZi51LXN6ZWdlZC5o
dT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvbWFu
dWFsLXRlc3RzL2pzLXRpbWVycy1iZW5lYXRoLW1vZGFsLWRpYWxvZy5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvbWFudWFsLXRlc3RzL2pzLXRpbWVycy1iZW5lYXRoLW1vZGFsLWRpYWxvZy5o
dG1sCShyZXZpc2lvbiAwKQorKysgV2ViQ29yZS9tYW51YWwtdGVzdHMvanMtdGltZXJzLWJlbmVh
dGgtbW9kYWwtZGlhbG9nLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTkgQEAKKzxwPkpT
IHRpbWVycyBzaG91bGQgYmUgcGF1c2VkIHdoaWxlIGEgbW9kYWwgZGlhbG9nIChvciBhbGVydCkg
aXMgZGlzcGxheWVkLjwvcD4KKzxwPlBsZWFzZSBkaXNhYmxlIHBvcHVwIGJsb2NrZXIgZm9yIHRo
aXMgdGVzdC48L3A+Cis8ZGl2PjA8L2Rpdj4KKzxzY3JpcHQ+CitmdW5jdGlvbiBmKCkKK3sKKyAg
ICB2YXIgZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVswXTsKKyAgICBk
LmlubmVySFRNTCA9IHBhcnNlSW50KGQuaW5uZXJIVE1MKSArIDE7Cit9CisKK3ZhciB0aW1lcklk
ID0gc2V0SW50ZXJ2YWwoZiwgMTAwKTsKKworYWxlcnQoIk51bWJlcnMgaW4gbWFpbiB3aW5kb3cg
c2hvdWxkIG5vdCBpbmNyZWFzZSB3aGlsZSB0aGlzIGFsZXJ0IGlzIGRpc3BsYXllZCIpOworc2hv
d01vZGFsRGlhbG9nKCJkYXRhOnRleHQvaHRtbCw8cD5OdW1iZXJzIGluIG1haW4gd2luZG93IHNo
b3VsZCBub3QgaW5jcmVhc2Ugd2hpbGUgdGhpcyBtb2RhbCBkaWFsb2cgaXMgZGlzcGxheWVkPC9w
PiIpOworZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzBdLmlubmVySFRNTCA9
ICJET05FIjsKKworY2xlYXJJbnRlcnZhbCh0aW1lcklkKTsKKworPC9zY3JpcHQ+CgpQcm9wZXJ0
eSBjaGFuZ2VzIG9uOiBXZWJDb3JlL21hbnVhbC10ZXN0cy9qcy10aW1lcnMtYmVuZWF0aC1tb2Rh
bC1kaWFsb2cuaHRtbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCk5hbWU6IHN2bjptaW1lLXR5cGUKICAgKyB0ZXh0L2h0
bWwKCkluZGV4OiBXZWJDb3JlL3BhZ2UvUGFnZUdyb3VwTG9hZERlZmVycmVyLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL3BhZ2UvUGFnZUdyb3VwTG9hZERlZmVycmVyLmNwcAkocmV2aXNpb24g
NDg1MTApCisrKyBXZWJDb3JlL3BhZ2UvUGFnZUdyb3VwTG9hZERlZmVycmVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNDEsMTAgKzQxLDEwIEBAIFBhZ2VHcm91cExvYWREZWZlcnJlcjo6UGFnZUdy
b3VwTG9hZERlZmUKICAgICAgICAgICAgIGlmICghb3RoZXJQYWdlLT5kZWZlcnNMb2FkaW5nKCkp
CiAgICAgICAgICAgICAgICAgbV9kZWZlcnJlZEZyYW1lcy5hcHBlbmQob3RoZXJQYWdlLT5tYWlu
RnJhbWUoKSk7CiAKLSNpZiAhUExBVEZPUk0oTUFDKQorICAgICAgICAgICAgLy8gVGhpcyBjb2Rl
IGlzIG5vdCBsb2dpY2FsbHkgcGFydCBvZiBsb2FkIGRlZmVycmluZywgYnV0IHdlIGRvIG5vdCB3
YW50IEpTIGNvZGUgZXhlY3V0ZWQgYmVuZWF0aCBtb2RhbAorICAgICAgICAgICAgLy8gd2luZG93
cyBvciBzaGVldHMsIHdoaWNoIGlzIGV4YWN0bHkgd2hlbiBQYWdlR3JvdXBMb2FkRGVmZXJyZXIg
aXMgdXNlZC4KICAgICAgICAgICAgIGZvciAoRnJhbWUqIGZyYW1lID0gb3RoZXJQYWdlLT5tYWlu
RnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS0+dHJhdmVyc2VOZXh0KCkpCiAg
ICAgICAgICAgICAgICAgZnJhbWUtPmRvY3VtZW50KCktPnN1c3BlbmRBY3RpdmVET01PYmplY3Rz
KCk7Ci0jZW5kaWYKICAgICAgICAgfQogICAgIH0KIApAQCAtNjAsMTAgKzYwLDggQEAgUGFnZUdy
b3VwTG9hZERlZmVycmVyOjp+UGFnZUdyb3VwTG9hZERlZgogICAgICAgICBpZiAoUGFnZSogcGFn
ZSA9IG1fZGVmZXJyZWRGcmFtZXNbaV0tPnBhZ2UoKSkgewogICAgICAgICAgICAgcGFnZS0+c2V0
RGVmZXJzTG9hZGluZyhmYWxzZSk7CiAKLSNpZiAhUExBVEZPUk0oTUFDKQogICAgICAgICAgICAg
Zm9yIChGcmFtZSogZnJhbWUgPSBwYWdlLT5tYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJh
bWUtPnRyZWUoKS0+dHJhdmVyc2VOZXh0KCkpCiAgICAgICAgICAgICAgICAgZnJhbWUtPmRvY3Vt
ZW50KCktPnJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsKLSNlbmRpZgogICAgICAgICB9CiAgICAg
fQogfQo=
</data>
<flag name="review"
          id="20935"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>