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

<bugzilla version="20260825.1"
          urlbase="https://bugzilla.mozilla.org/"
          
          maintainer="bmo-mods@mozilla.com"
>

    <bug>
          <bug_id>130078</bug_id>
          
          <filed_via>unknown</filed_via>
          <creation_ts>2002-03-11 09:31:20 -0800</creation_ts>
          <short_desc>integrate iframe into chrome view hierarchy (link view managers / trees between chrome and content)</short_desc>
          <delta_ts>2024-03-19 23:45:51 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>Components</classification>
          <product>Core</product>
          <component>Web Painting</component>
          <version>Trunk</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_type>defect</bug_type>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard>[not needed for 1.9][dbaron-1.9:RpCe][personas-needs][:bane][tabcandy]</status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>mozilla2.0b5</target_milestone>
          <dependson>593457</dependson>
    
    <dependson>593466</dependson>
    
    <dependson>654643</dependson>
    
    <dependson>669511</dependson>
    
    <dependson>1112470</dependson>
    
    <dependson>347966</dependson>
    
    <dependson>360714</dependson>
    
    <dependson>360731</dependson>
    
    <dependson>360789</dependson>
    
    <dependson>361600</dependson>
    
    <dependson>406941</dependson>
    
    <dependson>481737</dependson>
    
    <dependson>545268</dependson>
    
    <dependson>545581</dependson>
    
    <dependson>545593</dependson>
    
    <dependson>546178</dependson>
    
    <dependson>546572</dependson>
    
    <dependson>546865</dependson>
    
    <dependson>547132</dependson>
    
    <dependson>549799</dependson>
    
    <dependson>563878</dependson>
    
    <dependson>567702</dependson>
    
    <dependson>571640</dependson>
    
    <dependson>572599</dependson>
    
    <dependson>574621</dependson>
    
    <dependson>575440</dependson>
    
    <dependson>575567</dependson>
    
    <dependson>577579</dependson>
    
    <dependson>584193</dependson>
    
    <dependson>584516</dependson>
    
    <dependson>587534</dependson>
    
    <dependson>587539</dependson>
    
    <dependson>587542</dependson>
    
    <dependson>587610</dependson>
    
    <dependson>587944</dependson>
    
    <dependson>587960</dependson>
    
    <dependson>588337</dependson>
    
    <dependson>588402</dependson>
    
    <dependson>588403</dependson>
    
    <dependson>588407</dependson>
    
    <dependson>588663</dependson>
    
    <dependson>588684</dependson>
    
    <dependson>588692</dependson>
    
    <dependson>588693</dependson>
    
    <dependson>589078</dependson>
    
    <dependson>589396</dependson>
    
    <dependson>589529</dependson>
    
    <dependson>590403</dependson>
    
    <dependson>590468</dependson>
    
    <dependson>591435</dependson>
    
    <dependson>591554</dependson>
    
    <dependson>591558</dependson>
    
    <dependson>591570</dependson>
    
    <dependson>591671</dependson>
    
    <dependson>591754</dependson>
    
    <dependson>591784</dependson>
    
    <dependson>591805</dependson>
    
    <dependson>591834</dependson>
    
    <dependson>591861</dependson>
    
    <dependson>591874</dependson>
    
    <dependson>592131</dependson>
    
    <dependson>592405</dependson>
    
    <dependson>592453</dependson>
    
    <dependson>592663</dependson>
    
    <dependson>592954</dependson>
    
    <dependson>593275</dependson>
    
    <dependson>593286</dependson>
    
    <dependson>593892</dependson>
    
    <dependson>593959</dependson>
    
    <dependson>594267</dependson>
    
    <dependson>594271</dependson>
    
    <dependson>594413</dependson>
    
    <dependson>594791</dependson>
    
    <dependson>594977</dependson>
    
    <dependson>595132</dependson>
    
    <dependson>597031</dependson>
    
    <dependson>600396</dependson>
    
    <dependson>601547</dependson>
    
    <dependson>602080</dependson>
    
    <dependson>603550</dependson>
    
    <dependson>604303</dependson>
    
    <dependson>605357</dependson>
    
    <dependson>606980</dependson>
    
    <dependson>612024</dependson>
    
    <dependson>626403</dependson>
    
    <dependson>626813</dependson>
    
    <dependson>626963</dependson>
    
    <dependson>628157</dependson>
    
    <dependson>638698</dependson>
    
    <dependson>648477</dependson>
    
    <dependson>684431</dependson>
    
    <dependson>713315</dependson>
          <blocked>423014</blocked>
    
    <blocked>204278</blocked>
    
    <blocked>235877</blocked>
    
    <blocked>263160</blocked>
    
    <blocked>294060</blocked>
    
    <blocked>303813</blocked>
    
    <blocked>313190</blocked>
    
    <blocked>324437</blocked>
    
    <blocked>329726</blocked>
    
    <blocked>337801</blocked>
    
    <blocked>341950</blocked>
    
    <blocked>360922</blocked>
    
    <blocked>362968</blocked>
    
    <blocked>363777</blocked>
    
    <blocked>374980</blocked>
    
    <blocked>449734</blocked>
    
    <blocked>486028</blocked>
    
    <blocked>494238</blocked>
    
    <blocked>499809</blocked>
    
    <blocked>509933</blocked>
    
    <blocked>532106</blocked>
    
    <blocked>535482</blocked>
    
    <blocked>543934</blocked>
    
    <blocked>546844</blocked>
    
    <blocked>564978</blocked>
    
    <blocked>569993</blocked>
    
    <blocked>577208</blocked>
    
    <blocked>579263</blocked>
    
    <blocked>580002</blocked>
    
    <blocked>582816</blocked>
    
    <blocked>582818</blocked>
    
    <blocked>583462</blocked>
    
    <blocked>585689</blocked>
    
    <blocked>586679</blocked>
    
    <blocked>589762</blocked>
    
    <blocked>591559</blocked>
    
    <blocked>593577</blocked>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike Lee">tseng_mike</reporter>
          <assigned_to name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</assigned_to>
          <cc>21</cc>
    
    <cc>alex</cc>
    
    <cc>ancestor.ak</cc>
    
    <cc>andrewm715+bugzilla</cc>
    
    <cc>anotherjesse</cc>
    
    <cc>antoine.mozilla</cc>
    
    <cc>asaf</cc>
    
    <cc>asqueella</cc>
    
    <cc>azaaza</cc>
    
    <cc>ben</cc>
    
    <cc>beng</cc>
    
    <cc>blair</cc>
    
    <cc>blizzard</cc>
    
    <cc>brade</cc>
    
    <cc>brendan</cc>
    
    <cc>bridget.almas</cc>
    
    <cc>briks.si</cc>
    
    <cc>bugs-bmo</cc>
    
    <cc>bugzilla-mozilla-20000923</cc>
    
    <cc>bugzilla</cc>
    
    <cc>bugzilla</cc>
    
    <cc>bugzilla1</cc>
    
    <cc>cbeard</cc>
    
    <cc>chofmann</cc>
    
    <cc>chung808</cc>
    
    <cc>cjones.bugs</cc>
    
    <cc>daniel</cc>
    
    <cc>dbaron</cc>
    
    <cc>dbolter</cc>
    
    <cc>deprecationmail</cc>
    
    <cc>dgtb1994</cc>
    
    <cc>djcater+bugzilla</cc>
    
    <cc>djpnewton</cc>
    
    <cc>dsicore</cc>
    
    <cc>duccanh2810</cc>
    
    <cc>dzbarsky</cc>
    
    <cc>ehsan.akhgari</cc>
    
    <cc>enndeakin</cc>
    
    <cc>erikvvold</cc>
    
    <cc>ezra</cc>
    
    <cc>fabrice.desre</cc>
    
    <cc>fayearthur</cc>
    
    <cc>felipc</cc>
    
    <cc>filippo.mannino</cc>
    
    <cc>fjutt</cc>
    
    <cc>fullmetaljacket.xp+bugmail</cc>
    
    <cc>garyvdm</cc>
    
    <cc>gavin.sharp</cc>
    
    <cc>grenavitar</cc>
    
    <cc>hickendorffbas</cc>
    
    <cc>highmind63</cc>
    
    <cc>hjalte3</cc>
    
    <cc>ian</cc>
    
    <cc>ispiked</cc>
    
    <cc>jag+mozilla</cc>
    
    <cc>jdinbox</cc>
    
    <cc>jean</cc>
    
    <cc>jeremias.bosch</cc>
    
    <cc>jseward</cc>
    
    <cc>jwalden</cc>
    
    <cc>kairo</cc>
    
    <cc>karlt</cc>
    
    <cc>kbrosnan</cc>
    
    <cc>kwierso</cc>
    
    <cc>lh.bennett</cc>
    
    <cc>magicdice</cc>
    
    <cc>mark.finkle</cc>
    
    <cc>martijn.martijn</cc>
    
    <cc>masayuki</cc>
    
    <cc>matjk7</cc>
    
    <cc>MatsPalmgren_bugz</cc>
    
    <cc>matt.woodrow</cc>
    
    <cc>mbeltzner</cc>
    
    <cc>mcdavis941.bugs</cc>
    
    <cc>mgalli</cc>
    
    <cc>mike.shaver</cc>
    
    <cc>misak.bugzilla</cc>
    
    <cc>mjl+bmo</cc>
    
    <cc>mook.moz+mozbz</cc>
    
    <cc>mozbugz</cc>
    
    <cc>mozmail</cc>
    
    <cc>mstange.moz</cc>
    
    <cc>mtschrep</cc>
    
    <cc>mwu.code</cc>
    
    <cc>myk</cc>
    
    <cc>netrolller.3d</cc>
    
    <cc>nian.liu</cc>
    
    <cc>niranjan</cc>
    
    <cc>nvidiadx</cc>
    
    <cc>omar.bajraszewski</cc>
    
    <cc>pablo</cc>
    
    <cc>pali</cc>
    
    <cc>pavel.penaz</cc>
    
    <cc>pete</cc>
    
    <cc>peter.vanderwoude</cc>
    
    <cc>phiw2</cc>
    
    <cc>phnixwxz1</cc>
    
    <cc>pirat</cc>
    
    <cc>piratepenguin</cc>
    
    <cc>pxbugz</cc>
    
    <cc>rcampbell</cc>
    
    <cc>reed</cc>
    
    <cc>roc</cc>
    
    <cc>romaxa</cc>
    
    <cc>ryanvm</cc>
    
    <cc>sciguyryan</cc>
    
    <cc>skep</cc>
    
    <cc>spitfire.kuden</cc>
    
    <cc>sspitzer</cc>
    
    <cc>steffen.wilberg</cc>
    
    <cc>stephen</cc>
    
    <cc>steve.england</cc>
    
    <cc>stipe</cc>
    
    <cc>surkov.alexander</cc>
    
    <cc>svl-bmo</cc>
    
    <cc>tdowner</cc>
    
    <cc>tellrob</cc>
    
    <cc>tnikkel</cc>
    
    <cc>torres.dark</cc>
    
    <cc>tuukka.tolvanen</cc>
    
    <cc>u49640</cc>
    
    <cc>u88484</cc>
    
    <cc>velcrospud</cc>
    
    <cc>ventnor.bugzilla</cc>
    
    <cc>vietbac094</cc>
    
    <cc>vladimir</cc>
    
    <cc>vovandat.bk.2509</cc>
    
    <cc>wanliyou</cc>
    
    <cc>webmaster</cc>
    
    <cc>wgianopoulos</cc>
    
    <cc>wlevine</cc>
    
    <cc>wongalongtong</cc>
    
    <cc>xtc4uall</cc>
    
    <cc>zach</cc>
    
    <cc>zurtex</cc>
          
          <cf_firefox_messaging_system>---</cf_firefox_messaging_system>
          <cf_blocking_webextensions>---</cf_blocking_webextensions>
          <cf_data_science_product_support_area>---</cf_data_science_product_support_area>
          <cf_geckoview>---</cf_geckoview>
          <cf_bmo_component_move>---</cf_bmo_component_move>
          <cf_backlog>---</cf_backlog>
          <cf_tracking_e10s>---</cf_tracking_e10s>
          <cf_tracking_p11>---</cf_tracking_p11>
          <cf_tracking_win>---</cf_tracking_win>
          <cf_platform_rel>---</cf_platform_rel>
          <cf_root_cause>---</cf_root_cause>
          <cf_tracking_firefox5>---</cf_tracking_firefox5>
          <cf_status_firefox5>---</cf_status_firefox5>
          <cf_tracking_firefox6>---</cf_tracking_firefox6>
          <cf_status_firefox6>---</cf_status_firefox6>
          <cf_tracking_firefox7>---</cf_tracking_firefox7>
          <cf_status_firefox7>---</cf_status_firefox7>
          <cf_tracking_firefox8>---</cf_tracking_firefox8>
          <cf_status_firefox8>---</cf_status_firefox8>
          <cf_tracking_firefox9>---</cf_tracking_firefox9>
          <cf_status_firefox9>---</cf_status_firefox9>
          <cf_a11y_review_project_flag>---</cf_a11y_review_project_flag>
          <cf_tracking_firefox10>---</cf_tracking_firefox10>
          <cf_status_firefox10>---</cf_status_firefox10>
          <cf_tracking_firefox11>---</cf_tracking_firefox11>
          <cf_status_firefox11>---</cf_status_firefox11>
          <cf_tracking_firefox12>---</cf_tracking_firefox12>
          <cf_status_firefox12>---</cf_status_firefox12>
          <cf_tracking_firefox13>---</cf_tracking_firefox13>
          <cf_status_firefox13>---</cf_status_firefox13>
          <cf_tracking_firefox14>---</cf_tracking_firefox14>
          <cf_accessibility_severity>---</cf_accessibility_severity>
          <cf_status_firefox14>---</cf_status_firefox14>
          <cf_tracking_firefox15>---</cf_tracking_firefox15>
          <cf_status_firefox15>---</cf_status_firefox15>
          <cf_tracking_firefox16>---</cf_tracking_firefox16>
          <cf_status_firefox16>---</cf_status_firefox16>
          <cf_tracking_firefox17>---</cf_tracking_firefox17>
          <cf_status_firefox17>---</cf_status_firefox17>
          <cf_tracking_firefox18>---</cf_tracking_firefox18>
          <cf_status_firefox18>---</cf_status_firefox18>
          <cf_tracking_firefox19>---</cf_tracking_firefox19>
          <cf_install_update_workflow>---</cf_install_update_workflow>
          <cf_status_firefox19>---</cf_status_firefox19>
          <cf_tracking_firefox20>---</cf_tracking_firefox20>
          <cf_status_firefox20>---</cf_status_firefox20>
          <cf_tracking_firefox21>---</cf_tracking_firefox21>
          <cf_status_firefox21>---</cf_status_firefox21>
          <cf_tracking_firefox22>---</cf_tracking_firefox22>
          <cf_status_firefox22>---</cf_status_firefox22>
          <cf_tracking_firefox23>---</cf_tracking_firefox23>
          <cf_status_firefox23>---</cf_status_firefox23>
          <cf_tracking_firefox24>---</cf_tracking_firefox24>
          <cf_performance_impact>---</cf_performance_impact>
          <cf_status_firefox24>---</cf_status_firefox24>
          <cf_tracking_firefox25>---</cf_tracking_firefox25>
          <cf_status_firefox25>---</cf_status_firefox25>
          <cf_tracking_firefox26>---</cf_tracking_firefox26>
          <cf_status_firefox26>---</cf_status_firefox26>
          <cf_tracking_firefox27>---</cf_tracking_firefox27>
          <cf_status_firefox27>---</cf_status_firefox27>
          <cf_tracking_firefox28>---</cf_tracking_firefox28>
          <cf_status_firefox28>---</cf_status_firefox28>
          <cf_tracking_firefox29>---</cf_tracking_firefox29>
          <cf_status_firefox29>---</cf_status_firefox29>
          <cf_size_estimate>---</cf_size_estimate>
          <cf_tracking_firefox30>---</cf_tracking_firefox30>
          <cf_status_firefox30>---</cf_status_firefox30>
          <cf_tracking_firefox31>---</cf_tracking_firefox31>
          <cf_status_firefox31>---</cf_status_firefox31>
          <cf_tracking_firefox32>---</cf_tracking_firefox32>
          <cf_status_firefox32>---</cf_status_firefox32>
          <cf_tracking_firefox33>---</cf_tracking_firefox33>
          <cf_status_firefox33>---</cf_status_firefox33>
          <cf_tracking_firefox34>---</cf_tracking_firefox34>
          <cf_status_firefox34>---</cf_status_firefox34>
          <cf_webcompat_priority>---</cf_webcompat_priority>
          <cf_tracking_firefox35>---</cf_tracking_firefox35>
          <cf_status_firefox35>---</cf_status_firefox35>
          <cf_tracking_firefox36>---</cf_tracking_firefox36>
          <cf_status_firefox36>---</cf_status_firefox36>
          <cf_tracking_firefox37>---</cf_tracking_firefox37>
          <cf_status_firefox37>---</cf_status_firefox37>
          <cf_tracking_firefox38>---</cf_tracking_firefox38>
          <cf_status_firefox38>---</cf_status_firefox38>
          <cf_tracking_firefox38_0_5>---</cf_tracking_firefox38_0_5>
          <cf_status_firefox38_0_5>---</cf_status_firefox38_0_5>
          <cf_tracking_firefox39>---</cf_tracking_firefox39>
          <cf_webcompat_score>---</cf_webcompat_score>
          <cf_status_firefox39>---</cf_status_firefox39>
          <cf_tracking_firefox40>---</cf_tracking_firefox40>
          <cf_status_firefox40>---</cf_status_firefox40>
          <cf_tracking_firefox41>---</cf_tracking_firefox41>
          <cf_status_firefox41>---</cf_status_firefox41>
          <cf_tracking_firefox42>---</cf_tracking_firefox42>
          <cf_status_firefox42>---</cf_status_firefox42>
          <cf_tracking_firefox43>---</cf_tracking_firefox43>
          <cf_status_firefox43>---</cf_status_firefox43>
          <cf_tracking_firefox44>---</cf_tracking_firefox44>
          <cf_status_firefox44>---</cf_status_firefox44>
          <cf_tracking_firefox45>---</cf_tracking_firefox45>
          <cf_status_firefox45>---</cf_status_firefox45>
          <cf_tracking_firefox46>---</cf_tracking_firefox46>
          <cf_status_firefox46>---</cf_status_firefox46>
          <cf_tracking_firefox47>---</cf_tracking_firefox47>
          <cf_status_firefox47>---</cf_status_firefox47>
          <cf_tracking_firefox48>---</cf_tracking_firefox48>
          <cf_status_firefox48>---</cf_status_firefox48>
          <cf_tracking_firefox49>---</cf_tracking_firefox49>
          <cf_status_firefox49>---</cf_status_firefox49>
          <cf_tracking_esr10>---</cf_tracking_esr10>
          <cf_status_esr10>---</cf_status_esr10>
          <cf_tracking_firefox_esr17>---</cf_tracking_firefox_esr17>
          <cf_status_firefox_esr17>---</cf_status_firefox_esr17>
          <cf_tracking_firefox_esr24>---</cf_tracking_firefox_esr24>
          <cf_status_firefox_esr24>---</cf_status_firefox_esr24>
          <cf_tracking_firefox_esr31>---</cf_tracking_firefox_esr31>
          <cf_status_firefox_esr31>---</cf_status_firefox_esr31>
          <cf_tracking_firefox_esr38>---</cf_tracking_firefox_esr38>
          <cf_status_firefox_esr38>---</cf_status_firefox_esr38>
          <cf_tracking_firefox_esr45>---</cf_tracking_firefox_esr45>
          <cf_status_firefox_esr45>---</cf_status_firefox_esr45>
          <cf_tracking_b2g18>---</cf_tracking_b2g18>
          <cf_status_b2g18>---</cf_status_b2g18>
          <cf_status_b2g30>---</cf_status_b2g30>
          <cf_status_b2g18_1_0_0>---</cf_status_b2g18_1_0_0>
          <cf_status_b2g18_1_0_1>---</cf_status_b2g18_1_0_1>
          <cf_status_b2g_1_1_hd>---</cf_status_b2g_1_1_hd>
          <cf_tracking_b2g_v1_2>---</cf_tracking_b2g_v1_2>
          <cf_status_b2g_1_2>---</cf_status_b2g_1_2>
          <cf_tracking_b2g_v1_3>---</cf_tracking_b2g_v1_3>
          <cf_status_b2g_1_3>---</cf_status_b2g_1_3>
          <cf_status_b2g_1_3t>---</cf_status_b2g_1_3t>
          <cf_blocking_20>beta5+</cf_blocking_20>
          <cf_status_b2g_1_4>---</cf_status_b2g_1_4>
          <cf_status_20>---</cf_status_20>
          <cf_status_b2g_2_0>---</cf_status_b2g_2_0>
          <cf_status_b2g_2_0m>---</cf_status_b2g_2_0m>
          <cf_status_b2g_2_1>---</cf_status_b2g_2_1>
          <cf_status_b2g_2_1_s>---</cf_status_b2g_2_1_s>
          <cf_status_b2g_2_2>---</cf_status_b2g_2_2>
          <cf_status_b2g_2_5>---</cf_status_b2g_2_5>
          <cf_status_b2g_2_6>---</cf_status_b2g_2_6>
          <cf_status_b2g_2_2r>---</cf_status_b2g_2_2r>
          <cf_blocking_192>---</cf_blocking_192>
          <cf_status_192>---</cf_status_192>
          <cf_blocking_191>---</cf_blocking_191>
          <cf_tracking_fxios>---</cf_tracking_fxios>
          <cf_tracking_nss>---</cf_tracking_nss>
          <cf_status_nss>---</cf_status_nss>
          <cf_tracking_firefox_relnote>---</cf_tracking_firefox_relnote>
          <cf_status_b2g_master>---</cf_status_b2g_master>
          <cf_blocking_fx>---</cf_blocking_fx>
          <cf_tracking_thunderbird_relnote>---</cf_tracking_thunderbird_relnote>
          <cf_status_conduit_push>---</cf_status_conduit_push>
          <cf_status_191>---</cf_status_191>
          <cf_tracking_relnote_b2g>---</cf_tracking_relnote_b2g>
          <cf_tracking_conduit_push>---</cf_tracking_conduit_push>
          <cf_tracking_firefox_sumo>---</cf_tracking_firefox_sumo>
          <cf_status_bmo_push>---</cf_status_bmo_push>
          <cf_tracking_bmo_push>---</cf_tracking_bmo_push>
          <cf_blocking_fennec10>---</cf_blocking_fennec10>
          <cf_blocking_fennec>2.0b1+</cf_blocking_fennec>
          <cf_blocking_thunderbird33>---</cf_blocking_thunderbird33>
          <cf_status_thunderbird33>---</cf_status_thunderbird33>
          <cf_blocking_thunderbird32>---</cf_blocking_thunderbird32>
          <cf_status_thunderbird32>---</cf_status_thunderbird32>
          <cf_blocking_thunderbird31>---</cf_blocking_thunderbird31>
          <cf_status_thunderbird31>---</cf_status_thunderbird31>
          <cf_blocking_thunderbird30>---</cf_blocking_thunderbird30>
          <cf_status_thunderbird30>---</cf_status_thunderbird30>
          <cf_tracking_thunderbird6>---</cf_tracking_thunderbird6>
          <cf_status_thunderbird6>---</cf_status_thunderbird6>
          <cf_tracking_thunderbird7>---</cf_tracking_thunderbird7>
          <cf_status_thunderbird7>---</cf_status_thunderbird7>
          <cf_tracking_thunderbird8>---</cf_tracking_thunderbird8>
          <cf_status_thunderbird8>---</cf_status_thunderbird8>
          <cf_tracking_thunderbird9>---</cf_tracking_thunderbird9>
          <cf_status_thunderbird9>---</cf_status_thunderbird9>
          <cf_tracking_thunderbird10>---</cf_tracking_thunderbird10>
          <cf_status_thunderbird10>---</cf_status_thunderbird10>
          <cf_tracking_thunderbird11>---</cf_tracking_thunderbird11>
          <cf_status_thunderbird11>---</cf_status_thunderbird11>
          <cf_tracking_thunderbird12>---</cf_tracking_thunderbird12>
          <cf_status_thunderbird12>---</cf_status_thunderbird12>
          <cf_tracking_thunderbird13>---</cf_tracking_thunderbird13>
          <cf_status_thunderbird13>---</cf_status_thunderbird13>
          <cf_tracking_thunderbird14>---</cf_tracking_thunderbird14>
          <cf_status_thunderbird14>---</cf_status_thunderbird14>
          <cf_tracking_thunderbird15>---</cf_tracking_thunderbird15>
          <cf_status_thunderbird15>---</cf_status_thunderbird15>
          <cf_tracking_thunderbird16>---</cf_tracking_thunderbird16>
          <cf_status_thunderbird16>---</cf_status_thunderbird16>
          <cf_tracking_thunderbird17>---</cf_tracking_thunderbird17>
          <cf_status_thunderbird17>---</cf_status_thunderbird17>
          <cf_tracking_thunderbird18>---</cf_tracking_thunderbird18>
          <cf_status_thunderbird18>---</cf_status_thunderbird18>
          <cf_tracking_thunderbird19>---</cf_tracking_thunderbird19>
          <cf_status_thunderbird19>---</cf_status_thunderbird19>
          <cf_tracking_thunderbird20>---</cf_tracking_thunderbird20>
          <cf_status_thunderbird20>---</cf_status_thunderbird20>
          <cf_tracking_thunderbird21>---</cf_tracking_thunderbird21>
          <cf_status_thunderbird21>---</cf_status_thunderbird21>
          <cf_tracking_thunderbird22>---</cf_tracking_thunderbird22>
          <cf_status_thunderbird22>---</cf_status_thunderbird22>
          <cf_tracking_thunderbird23>---</cf_tracking_thunderbird23>
          <cf_status_thunderbird23>---</cf_status_thunderbird23>
          <cf_tracking_thunderbird24>---</cf_tracking_thunderbird24>
          <cf_status_thunderbird24>---</cf_status_thunderbird24>
          <cf_tracking_thunderbird25>---</cf_tracking_thunderbird25>
          <cf_status_thunderbird25>---</cf_status_thunderbird25>
          <cf_tracking_thunderbird26>---</cf_tracking_thunderbird26>
          <cf_status_thunderbird26>---</cf_status_thunderbird26>
          <cf_tracking_thunderbird27>---</cf_tracking_thunderbird27>
          <cf_status_thunderbird27>---</cf_status_thunderbird27>
          <cf_tracking_thunderbird28>---</cf_tracking_thunderbird28>
          <cf_status_thunderbird28>---</cf_status_thunderbird28>
          <cf_tracking_thunderbird29>---</cf_tracking_thunderbird29>
          <cf_status_thunderbird29>---</cf_status_thunderbird29>
          <cf_tracking_thunderbird_30>---</cf_tracking_thunderbird_30>
          <cf_status_thunderbird_30>---</cf_status_thunderbird_30>
          <cf_tracking_thunderbird_31>---</cf_tracking_thunderbird_31>
          <cf_status_thunderbird_31>---</cf_status_thunderbird_31>
          <cf_tracking_thunderbird_32>---</cf_tracking_thunderbird_32>
          <cf_status_thunderbird_32>---</cf_status_thunderbird_32>
          <cf_tracking_thunderbird_esr10>---</cf_tracking_thunderbird_esr10>
          <cf_status_thunderbird_esr10>---</cf_status_thunderbird_esr10>
          <cf_tracking_thunderbird_esr17>---</cf_tracking_thunderbird_esr17>
          <cf_status_thunderbird_esr17>---</cf_status_thunderbird_esr17>
          <cf_tracking_thunderbird_33>---</cf_tracking_thunderbird_33>
          <cf_status_thunderbird_33>---</cf_status_thunderbird_33>
          <cf_tracking_thunderbird_34>---</cf_tracking_thunderbird_34>
          <cf_status_thunderbird_34>---</cf_status_thunderbird_34>
          <cf_tracking_thunderbird_35>---</cf_tracking_thunderbird_35>
          <cf_status_thunderbird_35>---</cf_status_thunderbird_35>
          <cf_tracking_thunderbird_36>---</cf_tracking_thunderbird_36>
          <cf_status_thunderbird_36>---</cf_status_thunderbird_36>
          <cf_tracking_thunderbird_37>---</cf_tracking_thunderbird_37>
          <cf_status_thunderbird_37>---</cf_status_thunderbird_37>
          <cf_tracking_thunderbird_38>---</cf_tracking_thunderbird_38>
          <cf_status_thunderbird_38>---</cf_status_thunderbird_38>
          <cf_tracking_thunderbird_39>---</cf_tracking_thunderbird_39>
          <cf_status_thunderbird_39>---</cf_status_thunderbird_39>
          <cf_tracking_thunderbird_40>---</cf_tracking_thunderbird_40>
          <cf_status_thunderbird_40>---</cf_status_thunderbird_40>
          <cf_tracking_thunderbird_41>---</cf_tracking_thunderbird_41>
          <cf_blocking_seamonkey21>---</cf_blocking_seamonkey21>
          <cf_status_thunderbird_41>---</cf_status_thunderbird_41>
          <cf_status_seamonkey21>---</cf_status_seamonkey21>
          <cf_tracking_thunderbird_42>---</cf_tracking_thunderbird_42>
          <cf_tracking_seamonkey22>---</cf_tracking_seamonkey22>
          <cf_status_seamonkey22>---</cf_status_seamonkey22>
          <cf_status_thunderbird_42>---</cf_status_thunderbird_42>
          <cf_tracking_thunderbird_43>---</cf_tracking_thunderbird_43>
          <cf_tracking_seamonkey23>---</cf_tracking_seamonkey23>
          <cf_status_seamonkey23>---</cf_status_seamonkey23>
          <cf_status_thunderbird_43>---</cf_status_thunderbird_43>
          <cf_tracking_seamonkey24>---</cf_tracking_seamonkey24>
          <cf_tracking_thunderbird_44>---</cf_tracking_thunderbird_44>
          <cf_status_seamonkey24>---</cf_status_seamonkey24>
          <cf_status_thunderbird_44>---</cf_status_thunderbird_44>
          <cf_tracking_seamonkey25>---</cf_tracking_seamonkey25>
          <cf_status_seamonkey25>---</cf_status_seamonkey25>
          <cf_tracking_seamonkey26>---</cf_tracking_seamonkey26>
          <cf_status_seamonkey26>---</cf_status_seamonkey26>
          <cf_tracking_seamonkey27>---</cf_tracking_seamonkey27>
          <cf_status_seamonkey27>---</cf_status_seamonkey27>
          <cf_tracking_seamonkey28>---</cf_tracking_seamonkey28>
          <cf_status_seamonkey28>---</cf_status_seamonkey28>
          <cf_tracking_seamonkey29>---</cf_tracking_seamonkey29>
          <cf_status_seamonkey29>---</cf_status_seamonkey29>
          <cf_tracking_seamonkey210>---</cf_tracking_seamonkey210>
          <cf_status_seamonkey210>---</cf_status_seamonkey210>
          <cf_tracking_seamonkey211>---</cf_tracking_seamonkey211>
          <cf_status_seamonkey211>---</cf_status_seamonkey211>
          <cf_tracking_seamonkey212>---</cf_tracking_seamonkey212>
          <cf_status_seamonkey212>---</cf_status_seamonkey212>
          <cf_tracking_seamonkey213>---</cf_tracking_seamonkey213>
          <cf_status_seamonkey213>---</cf_status_seamonkey213>
          <cf_tracking_seamonkey214>---</cf_tracking_seamonkey214>
          <cf_status_seamonkey214>---</cf_status_seamonkey214>
          <cf_tracking_seamonkey215>---</cf_tracking_seamonkey215>
          <cf_status_seamonkey215>---</cf_status_seamonkey215>
          <cf_tracking_seamonkey216>---</cf_tracking_seamonkey216>
          <cf_status_seamonkey216>---</cf_status_seamonkey216>
          <cf_tracking_seamonkey217>---</cf_tracking_seamonkey217>
          <cf_status_seamonkey217>---</cf_status_seamonkey217>
          <cf_tracking_seamonkey218>---</cf_tracking_seamonkey218>
          <cf_status_seamonkey218>---</cf_status_seamonkey218>
          <cf_tracking_seamonkey219>---</cf_tracking_seamonkey219>
          <cf_status_seamonkey219>---</cf_status_seamonkey219>
          <cf_tracking_seamonkey220>---</cf_tracking_seamonkey220>
          <cf_status_seamonkey220>---</cf_status_seamonkey220>
          <cf_tracking_seamonkey221>---</cf_tracking_seamonkey221>
          <cf_status_seamonkey221>---</cf_status_seamonkey221>
          <cf_tracking_seamonkey222>---</cf_tracking_seamonkey222>
          <cf_status_seamonkey222>---</cf_status_seamonkey222>
          <cf_tracking_seamonkey223>---</cf_tracking_seamonkey223>
          <cf_status_seamonkey223>---</cf_status_seamonkey223>
          <cf_tracking_thunderbird_45>---</cf_tracking_thunderbird_45>
          <cf_tracking_seamonkey224>---</cf_tracking_seamonkey224>
          <cf_status_thunderbird_45>---</cf_status_thunderbird_45>
          <cf_tracking_thunderbird_46>---</cf_tracking_thunderbird_46>
          <cf_status_thunderbird_46>---</cf_status_thunderbird_46>
          <cf_status_seamonkey224>---</cf_status_seamonkey224>
          <cf_tracking_thunderbird_47>---</cf_tracking_thunderbird_47>
          <cf_status_thunderbird_47>---</cf_status_thunderbird_47>
          <cf_tracking_thunderbird_48>---</cf_tracking_thunderbird_48>
          <cf_tracking_seamonkey225>---</cf_tracking_seamonkey225>
          <cf_status_thunderbird_48>---</cf_status_thunderbird_48>
          <cf_tracking_thunderbird_49>---</cf_tracking_thunderbird_49>
          <cf_status_thunderbird_49>---</cf_status_thunderbird_49>
          <cf_tracking_thunderbird_50>---</cf_tracking_thunderbird_50>
          <cf_status_thunderbird_50>---</cf_status_thunderbird_50>
          <cf_status_seamonkey225>---</cf_status_seamonkey225>
          <cf_status_seamonkey226>---</cf_status_seamonkey226>
          <cf_tracking_seamonkey226>---</cf_tracking_seamonkey226>
          <cf_status_seamonkey227>---</cf_status_seamonkey227>
          <cf_tracking_seamonkey227>---</cf_tracking_seamonkey227>
          <cf_status_seamonkey228>---</cf_status_seamonkey228>
          <cf_tracking_seamonkey228>---</cf_tracking_seamonkey228>
          <cf_status_seamonkey229>---</cf_status_seamonkey229>
          <cf_colo_site>---</cf_colo_site>
          <cf_tracking_thunderbird_esr24>---</cf_tracking_thunderbird_esr24>
          <cf_tracking_seamonkey229>---</cf_tracking_seamonkey229>
          <cf_status_thunderbird_esr24>---</cf_status_thunderbird_esr24>
          <cf_tracking_thunderbird_esr31>---</cf_tracking_thunderbird_esr31>
          <cf_status_thunderbird_esr31>---</cf_status_thunderbird_esr31>
          <cf_tracking_thunderbird_esr38>---</cf_tracking_thunderbird_esr38>
          <cf_status_seamonkey230>---</cf_status_seamonkey230>
          <cf_status_thunderbird_esr38>---</cf_status_thunderbird_esr38>
          <cf_tracking_thunderbird_esr45>---</cf_tracking_thunderbird_esr45>
          <cf_status_thunderbird_esr45>---</cf_status_thunderbird_esr45>
          <cf_tracking_thunderbird_esr52>---</cf_tracking_thunderbird_esr52>
          <cf_status_thunderbird_esr52>---</cf_status_thunderbird_esr52>
          <cf_tracking_seamonkey230>---</cf_tracking_seamonkey230>
          <cf_office>---</cf_office>
          <cf_tracking_thunderbird_esr60>---</cf_tracking_thunderbird_esr60>
          <cf_status_thunderbird_esr60>---</cf_status_thunderbird_esr60>
          <cf_status_seamonkey231>---</cf_status_seamonkey231>
          <cf_tracking_thunderbird_esr68>---</cf_tracking_thunderbird_esr68>
          <cf_status_thunderbird_esr68>---</cf_status_thunderbird_esr68>
          <cf_tracking_seamonkey231>---</cf_tracking_seamonkey231>
          <cf_status_seamonkey232>---</cf_status_seamonkey232>
          <cf_tracking_thunderbird_esr78>---</cf_tracking_thunderbird_esr78>
          <cf_status_thunderbird_esr78>---</cf_status_thunderbird_esr78>
          <cf_tracking_seamonkey232>---</cf_tracking_seamonkey232>
          <cf_tracking_thunderbird_51>---</cf_tracking_thunderbird_51>
          <cf_status_thunderbird_51>---</cf_status_thunderbird_51>
          <cf_tracking_thunderbird_52>---</cf_tracking_thunderbird_52>
          <cf_tracking_thunderbird_esr91>---</cf_tracking_thunderbird_esr91>
          <cf_status_thunderbird_52>---</cf_status_thunderbird_52>
          <cf_status_thunderbird_esr91>---</cf_status_thunderbird_esr91>
          <cf_tracking_thunderbird_53>---</cf_tracking_thunderbird_53>
          <cf_status_thunderbird_53>---</cf_status_thunderbird_53>
          <cf_tracking_seamonkey233>---</cf_tracking_seamonkey233>
          <cf_tracking_thunderbird_54>---</cf_tracking_thunderbird_54>
          <cf_status_thunderbird_54>---</cf_status_thunderbird_54>
          <cf_tracking_thunderbird_55>---</cf_tracking_thunderbird_55>
          <cf_tracking_thunderbird_esr102>---</cf_tracking_thunderbird_esr102>
          <cf_status_thunderbird_esr102>---</cf_status_thunderbird_esr102>
          <cf_status_thunderbird_55>---</cf_status_thunderbird_55>
          <cf_tracking_thunderbird_56>---</cf_tracking_thunderbird_56>
          <cf_status_seamonkey233>---</cf_status_seamonkey233>
          <cf_status_thunderbird_56>---</cf_status_thunderbird_56>
          <cf_tracking_thunderbird_57>---</cf_tracking_thunderbird_57>
          <cf_tracking_seamonkey234>---</cf_tracking_seamonkey234>
          <cf_status_thunderbird_57>---</cf_status_thunderbird_57>
          <cf_tracking_thunderbird_58>---</cf_tracking_thunderbird_58>
          <cf_status_thunderbird_58>---</cf_status_thunderbird_58>
          <cf_status_seamonkey234>---</cf_status_seamonkey234>
          <cf_tracking_thunderbird_59>---</cf_tracking_thunderbird_59>
          <cf_status_thunderbird_59>---</cf_status_thunderbird_59>
          <cf_tracking_seamonkey235>---</cf_tracking_seamonkey235>
          <cf_tracking_thunderbird_60>---</cf_tracking_thunderbird_60>
          <cf_status_thunderbird_60>---</cf_status_thunderbird_60>
          <cf_status_seamonkey235>---</cf_status_seamonkey235>
          <cf_tracking_thunderbird_61>---</cf_tracking_thunderbird_61>
          <cf_status_thunderbird_61>---</cf_status_thunderbird_61>
          <cf_tracking_seamonkey236>---</cf_tracking_seamonkey236>
          <cf_tracking_thunderbird_62>---</cf_tracking_thunderbird_62>
          <cf_status_thunderbird_62>---</cf_status_thunderbird_62>
          <cf_status_seamonkey236>---</cf_status_seamonkey236>
          <cf_tracking_thunderbird_63>---</cf_tracking_thunderbird_63>
          <cf_status_thunderbird_63>---</cf_status_thunderbird_63>
          <cf_tracking_thunderbird_64>---</cf_tracking_thunderbird_64>
          <cf_tracking_seamonkey237>---</cf_tracking_seamonkey237>
          <cf_status_thunderbird_64>---</cf_status_thunderbird_64>
          <cf_tracking_thunderbird_65>---</cf_tracking_thunderbird_65>
          <cf_status_thunderbird_65>---</cf_status_thunderbird_65>
          <cf_status_seamonkey237>---</cf_status_seamonkey237>
          <cf_tracking_thunderbird_66>---</cf_tracking_thunderbird_66>
          <cf_status_thunderbird_66>---</cf_status_thunderbird_66>
          <cf_tracking_thunderbird_67>---</cf_tracking_thunderbird_67>
          <cf_status_thunderbird_67>---</cf_status_thunderbird_67>
          <cf_tracking_seamonkey238>---</cf_tracking_seamonkey238>
          <cf_tracking_thunderbird_68>---</cf_tracking_thunderbird_68>
          <cf_status_thunderbird_68>---</cf_status_thunderbird_68>
          <cf_status_thunderbird_69>---</cf_status_thunderbird_69>
          <cf_status_seamonkey238>---</cf_status_seamonkey238>
          <cf_tracking_seamonkey239>---</cf_tracking_seamonkey239>
          <cf_tracking_thunderbird_69>---</cf_tracking_thunderbird_69>
          <cf_status_thunderbird_70>---</cf_status_thunderbird_70>
          <cf_crash_signature></cf_crash_signature>
          <cf_status_seamonkey239>---</cf_status_seamonkey239>
          <cf_tracking_thunderbird_70>---</cf_tracking_thunderbird_70>
          <cf_tracking_seamonkey240>---</cf_tracking_seamonkey240>
          <cf_status_thunderbird_71>---</cf_status_thunderbird_71>
          
          <cf_status_seamonkey240>---</cf_status_seamonkey240>
          <cf_tracking_thunderbird_71>---</cf_tracking_thunderbird_71>
          <cf_tracking_seamonkey241>---</cf_tracking_seamonkey241>
          <cf_status_thunderbird_72>---</cf_status_thunderbird_72>
          <cf_status_seamonkey241>---</cf_status_seamonkey241>
          <cf_tracking_seamonkey242>---</cf_tracking_seamonkey242>
          <cf_tracking_thunderbird_72>---</cf_tracking_thunderbird_72>
          <cf_status_thunderbird_73>---</cf_status_thunderbird_73>
          <cf_status_seamonkey242>---</cf_status_seamonkey242>
          <cf_tracking_seamonkey243>---</cf_tracking_seamonkey243>
          <cf_tracking_thunderbird_73>---</cf_tracking_thunderbird_73>
          <cf_status_thunderbird_74>---</cf_status_thunderbird_74>
          <cf_status_seamonkey243>---</cf_status_seamonkey243>
          <cf_tracking_thunderbird_74>---</cf_tracking_thunderbird_74>
          <cf_status_thunderbird_75>---</cf_status_thunderbird_75>
          <cf_tracking_seamonkey244>---</cf_tracking_seamonkey244>
          <cf_status_thunderbird_76>---</cf_status_thunderbird_76>
          <cf_tracking_thunderbird_75>---</cf_tracking_thunderbird_75>
          <cf_status_seamonkey244>---</cf_status_seamonkey244>
          <cf_tracking_seamonkey245>---</cf_tracking_seamonkey245>
          <cf_status_thunderbird_77>---</cf_status_thunderbird_77>
          <cf_tracking_thunderbird_76>---</cf_tracking_thunderbird_76>
          <cf_status_seamonkey245>---</cf_status_seamonkey245>
          <cf_tracking_thunderbird_77>---</cf_tracking_thunderbird_77>
          <cf_status_thunderbird_78>---</cf_status_thunderbird_78>
          <cf_tracking_seamonkey246>---</cf_tracking_seamonkey246>
          <cf_tracking_thunderbird_78>---</cf_tracking_thunderbird_78>
          <cf_status_thunderbird_79>---</cf_status_thunderbird_79>
          <cf_tracking_thunderbird_79>---</cf_tracking_thunderbird_79>
          <cf_status_thunderbird_80>---</cf_status_thunderbird_80>
          <cf_status_seamonkey246>---</cf_status_seamonkey246>
          <cf_tracking_thunderbird_80>---</cf_tracking_thunderbird_80>
          <cf_tracking_seamonkey247>---</cf_tracking_seamonkey247>
          <cf_status_thunderbird_81>---</cf_status_thunderbird_81>
          <cf_tracking_thunderbird_81>---</cf_tracking_thunderbird_81>
          <cf_status_seamonkey247>---</cf_status_seamonkey247>
          <cf_status_thunderbird_82>---</cf_status_thunderbird_82>
          <cf_tracking_thunderbird_82>---</cf_tracking_thunderbird_82>
          <cf_status_thunderbird_83>---</cf_status_thunderbird_83>
          <cf_tracking_seamonkey248>---</cf_tracking_seamonkey248>
          <cf_tracking_thunderbird_83>---</cf_tracking_thunderbird_83>
          <cf_status_thunderbird_84>---</cf_status_thunderbird_84>
          <cf_status_seamonkey248>---</cf_status_seamonkey248>
          <cf_tracking_thunderbird_84>---</cf_tracking_thunderbird_84>
          <cf_status_thunderbird_85>---</cf_status_thunderbird_85>
          <cf_tracking_thunderbird_85>---</cf_tracking_thunderbird_85>
          <cf_status_thunderbird_86>---</cf_status_thunderbird_86>
          <cf_blocking_kilimanjaro>---</cf_blocking_kilimanjaro>
          <cf_tracking_thunderbird_86>---</cf_tracking_thunderbird_86>
          <cf_tracking_seamonkey249>---</cf_tracking_seamonkey249>
          <cf_blocking_b2g>---</cf_blocking_b2g>
          <cf_status_thunderbird_87>---</cf_status_thunderbird_87>
          <cf_tracking_thunderbird_87>---</cf_tracking_thunderbird_87>
          <cf_blocking_basecamp>---</cf_blocking_basecamp>
          <cf_status_seamonkey249>---</cf_status_seamonkey249>
          <cf_status_thunderbird_88>---</cf_status_thunderbird_88>
          <cf_tracking_thunderbird_88>---</cf_tracking_thunderbird_88>
          <cf_feature_b2g>---</cf_feature_b2g>
          <cf_tracking_seamonkey250>---</cf_tracking_seamonkey250>
          <cf_status_thunderbird_89>---</cf_status_thunderbird_89>
          <cf_tracking_thunderbird_89>---</cf_tracking_thunderbird_89>
          <cf_tracking_b2g>---</cf_tracking_b2g>
          <cf_status_seamonkey250>---</cf_status_seamonkey250>
          <cf_ux_b2g>---</cf_ux_b2g>
          <cf_status_thunderbird_90>---</cf_status_thunderbird_90>
          <cf_tracking_thunderbird_90>---</cf_tracking_thunderbird_90>
          <cf_b2g_ota_blocker>---</cf_b2g_ota_blocker>
          <cf_status_thunderbird_91>---</cf_status_thunderbird_91>
          <cf_tracking_seamonkey251>---</cf_tracking_seamonkey251>
          <cf_tracking_thunderbird_91>---</cf_tracking_thunderbird_91>
          <cf_status_seamonkey251>---</cf_status_seamonkey251>
          <cf_status_thunderbird_92>---</cf_status_thunderbird_92>
          <cf_tracking_thunderbird_92>---</cf_tracking_thunderbird_92>
          <cf_tracking_seamonkey252>---</cf_tracking_seamonkey252>
          <cf_status_thunderbird_93>---</cf_status_thunderbird_93>
          <cf_tracking_thunderbird_93>---</cf_tracking_thunderbird_93>
          <cf_status_thunderbird_94>---</cf_status_thunderbird_94>
          <cf_status_seamonkey252>---</cf_status_seamonkey252>
          <cf_tracking_thunderbird_94>---</cf_tracking_thunderbird_94>
          <cf_status_seamonkey253>---</cf_status_seamonkey253>
          <cf_status_thunderbird_95>---</cf_status_thunderbird_95>
          <cf_tracking_thunderbird_95>---</cf_tracking_thunderbird_95>
          <cf_tracking_seamonkey253>---</cf_tracking_seamonkey253>
          <cf_status_thunderbird_96>---</cf_status_thunderbird_96>
          <cf_tracking_seamonkey254>---</cf_tracking_seamonkey254>
          <cf_tracking_thunderbird_96>---</cf_tracking_thunderbird_96>
          <cf_status_seamonkey254>---</cf_status_seamonkey254>
          <cf_status_thunderbird_97>---</cf_status_thunderbird_97>
          <cf_tracking_thunderbird_97>---</cf_tracking_thunderbird_97>
          <cf_tracking_seamonkey255>---</cf_tracking_seamonkey255>
          <cf_status_thunderbird_98>---</cf_status_thunderbird_98>
          <cf_tracking_thunderbird_98>---</cf_tracking_thunderbird_98>
          <cf_status_seamonkey255>---</cf_status_seamonkey255>
          <cf_status_thunderbird_99>---</cf_status_thunderbird_99>
          <cf_tracking_thunderbird_99>---</cf_tracking_thunderbird_99>
          <cf_status_seamonkey256>---</cf_status_seamonkey256>
          <cf_status_thunderbird_100>---</cf_status_thunderbird_100>
          <cf_tracking_thunderbird_100>---</cf_tracking_thunderbird_100>
          <cf_status_thunderbird_101>---</cf_status_thunderbird_101>
          <cf_status_seamonkey257esr>---</cf_status_seamonkey257esr>
          <cf_tracking_seamonkey256>---</cf_tracking_seamonkey256>
          <cf_tracking_thunderbird_101>---</cf_tracking_thunderbird_101>
          <cf_tracking_seamonkey257esr>---</cf_tracking_seamonkey257esr>
          <cf_status_thunderbird_102>---</cf_status_thunderbird_102>
          <cf_tracking_thunderbird_102>---</cf_tracking_thunderbird_102>
          <cf_status_thunderbird_103>---</cf_status_thunderbird_103>
          <cf_status_seamonkey258>---</cf_status_seamonkey258>
          <cf_tracking_thunderbird_103>---</cf_tracking_thunderbird_103>
          <cf_tracking_seamonkey258>---</cf_tracking_seamonkey258>
          <cf_status_thunderbird_104>---</cf_status_thunderbird_104>
          <cf_tracking_thunderbird_104>---</cf_tracking_thunderbird_104>
          <cf_status_seamonkey259>---</cf_status_seamonkey259>
          <cf_status_thunderbird_105>---</cf_status_thunderbird_105>
          <cf_tracking_thunderbird_105>---</cf_tracking_thunderbird_105>
          <cf_tracking_seamonkey259>---</cf_tracking_seamonkey259>
          <cf_tracking_thunderbird_esr115>---</cf_tracking_thunderbird_esr115>
          <cf_status_thunderbird_106>---</cf_status_thunderbird_106>
          <cf_status_thunderbird_esr115>---</cf_status_thunderbird_esr115>
          <cf_status_fxios_v1_0>---</cf_status_fxios_v1_0>
          <cf_tracking_thunderbird_106>---</cf_tracking_thunderbird_106>
          <cf_status_fxios_v1_0_5>---</cf_status_fxios_v1_0_5>
          <cf_status_fxios_v1_1>---</cf_status_fxios_v1_1>
          <cf_status_fxios_v2_0>---</cf_status_fxios_v2_0>
          <cf_status_fxios_v3_0>---</cf_status_fxios_v3_0>
          <cf_tracking_thunderbird_esr128>---</cf_tracking_thunderbird_esr128>
          <cf_status_seamonkey260>---</cf_status_seamonkey260>
          <cf_status_thunderbird_107>---</cf_status_thunderbird_107>
          <cf_status_fxios_v4_0>---</cf_status_fxios_v4_0>
          <cf_status_thunderbird_esr128>---</cf_status_thunderbird_esr128>
          <cf_tracking_thunderbird_107>---</cf_tracking_thunderbird_107>
          <cf_tracking_seamonkey260>---</cf_tracking_seamonkey260>
          <cf_tracking_thunderbird_esr140>---</cf_tracking_thunderbird_esr140>
          <cf_status_thunderbird_108>---</cf_status_thunderbird_108>
          <cf_status_fxios_v5_0>---</cf_status_fxios_v5_0>
          <cf_status_fxios_v5_1>---</cf_status_fxios_v5_1>
          <cf_status_thunderbird_esr140>---</cf_status_thunderbird_esr140>
          <cf_tracking_thunderbird_108>---</cf_tracking_thunderbird_108>
          <cf_status_fxios_v5_2>---</cf_status_fxios_v5_2>
          <cf_status_fxios_v5_3>---</cf_status_fxios_v5_3>
          <cf_status_fxios_v6_0>---</cf_status_fxios_v6_0>
          <cf_tracking_thunderbird_esr153>---</cf_tracking_thunderbird_esr153>
          <cf_status_thunderbird_109>---</cf_status_thunderbird_109>
          <cf_status_thunderbird_esr153>---</cf_status_thunderbird_esr153>
          <cf_tracking_thunderbird_109>---</cf_tracking_thunderbird_109>
          <cf_status_fxios_v6_1>---</cf_status_fxios_v6_1>
          <cf_status_thunderbird_110>---</cf_status_thunderbird_110>
          <cf_status_fxios_v7_0>---</cf_status_fxios_v7_0>
          <cf_tracking_thunderbird_110>---</cf_tracking_thunderbird_110>
          <cf_status_fxios_v7_1>---</cf_status_fxios_v7_1>
          <cf_status_thunderbird_111>---</cf_status_thunderbird_111>
          <cf_status_fxios_v7_2>---</cf_status_fxios_v7_2>
          <cf_tracking_thunderbird_111>---</cf_tracking_thunderbird_111>
          <cf_status_fxios_v7_3>---</cf_status_fxios_v7_3>
          <cf_status_thunderbird_112>---</cf_status_thunderbird_112>
          <cf_tracking_thunderbird_112>---</cf_tracking_thunderbird_112>
          <cf_status_fxios_v7_4>---</cf_status_fxios_v7_4>
          <cf_status_fxios_v7_5>---</cf_status_fxios_v7_5>
          <cf_status_fxios_v7_6>---</cf_status_fxios_v7_6>
          <cf_status_thunderbird_113>---</cf_status_thunderbird_113>
          <cf_tracking_thunderbird_113>---</cf_tracking_thunderbird_113>
          <cf_tracking_seamonkey263>---</cf_tracking_seamonkey263>
          <cf_status_thunderbird_114>---</cf_status_thunderbird_114>
          <cf_tracking_thunderbird_114>---</cf_tracking_thunderbird_114>
          <cf_status_thunderbird_115>---</cf_status_thunderbird_115>
          <cf_status_seamonkey263>---</cf_status_seamonkey263>
          <cf_tracking_thunderbird_115>---</cf_tracking_thunderbird_115>
          
          <cf_status_thunderbird_116>---</cf_status_thunderbird_116>
          <cf_tracking_thunderbird_116>---</cf_tracking_thunderbird_116>
          <cf_status_thunderbird_117>---</cf_status_thunderbird_117>
          <cf_tracking_thunderbird_117>---</cf_tracking_thunderbird_117>
          <cf_status_thunderbird_118>---</cf_status_thunderbird_118>
          <cf_tracking_thunderbird_118>---</cf_tracking_thunderbird_118>
          <cf_status_thunderbird_119>---</cf_status_thunderbird_119>
          <cf_tracking_thunderbird_119>---</cf_tracking_thunderbird_119>
          <cf_status_thunderbird_120>---</cf_status_thunderbird_120>
          <cf_tracking_thunderbird_120>---</cf_tracking_thunderbird_120>
          <cf_status_thunderbird_121>---</cf_status_thunderbird_121>
          <cf_tracking_thunderbird_121>---</cf_tracking_thunderbird_121>
          <cf_status_thunderbird_122>---</cf_status_thunderbird_122>
          <cf_tracking_thunderbird_122>---</cf_tracking_thunderbird_122>
          <cf_status_thunderbird_123>---</cf_status_thunderbird_123>
          <cf_tracking_thunderbird_123>---</cf_tracking_thunderbird_123>
          <cf_status_thunderbird_124>---</cf_status_thunderbird_124>
          <cf_tracking_thunderbird_124>---</cf_tracking_thunderbird_124>
          <cf_status_thunderbird_125>---</cf_status_thunderbird_125>
          <cf_tracking_thunderbird_125>---</cf_tracking_thunderbird_125>
          <cf_status_thunderbird_126>---</cf_status_thunderbird_126>
          <cf_tracking_thunderbird_126>---</cf_tracking_thunderbird_126>
          <cf_status_thunderbird_127>---</cf_status_thunderbird_127>
          <cf_tracking_thunderbird_127>---</cf_tracking_thunderbird_127>
          <cf_status_thunderbird_128>---</cf_status_thunderbird_128>
          <cf_tracking_thunderbird_128>---</cf_tracking_thunderbird_128>
          <cf_status_thunderbird_129>---</cf_status_thunderbird_129>
          <cf_tracking_thunderbird_129>---</cf_tracking_thunderbird_129>
          <cf_status_thunderbird_130>---</cf_status_thunderbird_130>
          <cf_tracking_thunderbird_130>---</cf_tracking_thunderbird_130>
          <cf_status_thunderbird_131>---</cf_status_thunderbird_131>
          <cf_tracking_thunderbird_131>---</cf_tracking_thunderbird_131>
          <cf_status_thunderbird_132>---</cf_status_thunderbird_132>
          <cf_tracking_thunderbird_132>---</cf_tracking_thunderbird_132>
          <cf_status_thunderbird_133>---</cf_status_thunderbird_133>
          <cf_tracking_thunderbird_133>---</cf_tracking_thunderbird_133>
          <cf_status_thunderbird_134>---</cf_status_thunderbird_134>
          <cf_tracking_thunderbird_134>---</cf_tracking_thunderbird_134>
          <cf_status_thunderbird_135>---</cf_status_thunderbird_135>
          <cf_tracking_thunderbird_135>---</cf_tracking_thunderbird_135>
          <cf_last_resolved>2010-08-29 01:03:27</cf_last_resolved>
          <cf_status_thunderbird_136>---</cf_status_thunderbird_136>
          <cf_tracking_thunderbird_136>---</cf_tracking_thunderbird_136>
          <cf_status_thunderbird_137>---</cf_status_thunderbird_137>
          <cf_tracking_thunderbird_137>---</cf_tracking_thunderbird_137>
          <cf_status_thunderbird_138>---</cf_status_thunderbird_138>
          <cf_tracking_thunderbird_138>---</cf_tracking_thunderbird_138>
          <cf_status_thunderbird_139>---</cf_status_thunderbird_139>
          <cf_tracking_thunderbird_139>---</cf_tracking_thunderbird_139>
          <cf_status_thunderbird_140>---</cf_status_thunderbird_140>
          <cf_tracking_thunderbird_140>---</cf_tracking_thunderbird_140>
          <cf_status_thunderbird_141>---</cf_status_thunderbird_141>
          <cf_tracking_thunderbird_141>---</cf_tracking_thunderbird_141>
          <cf_status_thunderbird_142>---</cf_status_thunderbird_142>
          <cf_tracking_thunderbird_142>---</cf_tracking_thunderbird_142>
          <cf_status_thunderbird_143>---</cf_status_thunderbird_143>
          <cf_tracking_thunderbird_143>---</cf_tracking_thunderbird_143>
          <cf_status_thunderbird_144>---</cf_status_thunderbird_144>
          <cf_tracking_thunderbird_144>---</cf_tracking_thunderbird_144>
          <cf_status_thunderbird_145>---</cf_status_thunderbird_145>
          <cf_tracking_thunderbird_145>---</cf_tracking_thunderbird_145>
          <cf_status_thunderbird_146>---</cf_status_thunderbird_146>
          <cf_tracking_thunderbird_146>---</cf_tracking_thunderbird_146>
          <cf_status_thunderbird_147>---</cf_status_thunderbird_147>
          <cf_tracking_thunderbird_147>---</cf_tracking_thunderbird_147>
          <cf_status_thunderbird_148>---</cf_status_thunderbird_148>
          <cf_tracking_thunderbird_148>---</cf_tracking_thunderbird_148>
          <cf_status_thunderbird_149>---</cf_status_thunderbird_149>
          <cf_tracking_thunderbird_149>---</cf_tracking_thunderbird_149>
          <cf_status_thunderbird_150>---</cf_status_thunderbird_150>
          <cf_tracking_thunderbird_150>---</cf_tracking_thunderbird_150>
          <cf_status_thunderbird_151>---</cf_status_thunderbird_151>
          <cf_tracking_thunderbird_151>---</cf_tracking_thunderbird_151>
          <cf_status_thunderbird_152>---</cf_status_thunderbird_152>
          <cf_tracking_thunderbird_152>---</cf_tracking_thunderbird_152>
          <cf_status_thunderbird_153>---</cf_status_thunderbird_153>
          <cf_tracking_thunderbird_153>---</cf_tracking_thunderbird_153>
          <cf_status_thunderbird_154>---</cf_status_thunderbird_154>
          <cf_tracking_thunderbird_154>---</cf_tracking_thunderbird_154>
          <cf_status_thunderbird_155>---</cf_status_thunderbird_155>
          <cf_tracking_thunderbird_155>---</cf_tracking_thunderbird_155>
          <cf_status_thunderbird_156>---</cf_status_thunderbird_156>
          <cf_tracking_thunderbird_156>---</cf_tracking_thunderbird_156>
          <cf_user_story></cf_user_story>
          <cf_mozilla_project>---</cf_mozilla_project>
          <cf_machine_state>---</cf_machine_state>
          <cf_qa_whiteboard></cf_qa_whiteboard>
          <cf_fx_iteration>---</cf_fx_iteration>
          <cf_fx_points>---</cf_fx_points>
          
          <cf_has_str>---</cf_has_str>
          <cf_cab_review>---</cf_cab_review>
          <cf_status_fxios_v8_0>---</cf_status_fxios_v8_0>
          <cf_status_fxios_v8_1>---</cf_status_fxios_v8_1>
          <cf_status_fxios_v8_2>---</cf_status_fxios_v8_2>
          <cf_status_fxios_v8_3>---</cf_status_fxios_v8_3>
          <cf_status_fxios_v8_4>---</cf_status_fxios_v8_4>
          <cf_status_fxios_v9_0>---</cf_status_fxios_v9_0>
          <cf_status_fxios_v9_1>---</cf_status_fxios_v9_1>
          <cf_status_fxios_v9_2>---</cf_status_fxios_v9_2>
          <cf_status_fxios_v9_3>---</cf_status_fxios_v9_3>
          <cf_status_fxios_v9_4>---</cf_status_fxios_v9_4>
          <cf_status_fxios_v10_0>---</cf_status_fxios_v10_0>
          <cf_status_fxios_v10_1>---</cf_status_fxios_v10_1>
          <cf_status_fxios_v10_2>---</cf_status_fxios_v10_2>
          <cf_status_fxios_v10_5>---</cf_status_fxios_v10_5>
          <cf_status_fxios_v10_6>---</cf_status_fxios_v10_6>
          <cf_status_fxios_v11_0>---</cf_status_fxios_v11_0>
          <cf_status_fxios_v11_1>---</cf_status_fxios_v11_1>
          <cf_status_fxios_v12_0>---</cf_status_fxios_v12_0>
          <cf_status_fxios_v12_1>---</cf_status_fxios_v12_1>
          <cf_status_fxios_v12_2>---</cf_status_fxios_v12_2>
          <cf_status_fxios_v13_0>---</cf_status_fxios_v13_0>
          <cf_status_fxios_v13_1>---</cf_status_fxios_v13_1>
          <cf_status_fxios_v13_2>---</cf_status_fxios_v13_2>
          <cf_status_fxios_v13_3>---</cf_status_fxios_v13_3>
          <cf_status_fxios_v14_0>---</cf_status_fxios_v14_0>
          <cf_status_fxios_v14_1>---</cf_status_fxios_v14_1>
          <cf_status_fxios_v14_2>---</cf_status_fxios_v14_2>
          <cf_status_fxios_v14_3>---</cf_status_fxios_v14_3>
          <cf_status_fxios_v15_0>---</cf_status_fxios_v15_0>
          <cf_status_fxios_v15_1>---</cf_status_fxios_v15_1>
          <cf_status_fxios_v16_0>---</cf_status_fxios_v16_0>
          <cf_tracking_geckoview62>---</cf_tracking_geckoview62>
          <cf_status_geckoview62>---</cf_status_geckoview62>
          <cf_tracking_geckoview63>---</cf_tracking_geckoview63>
          <cf_status_geckoview63>---</cf_status_geckoview63>
          <cf_tracking_geckoview64>---</cf_tracking_geckoview64>
          <cf_status_geckoview64>---</cf_status_geckoview64>
          <cf_tracking_geckoview65>---</cf_tracking_geckoview65>
          <cf_status_geckoview65>---</cf_status_geckoview65>
          <cf_tracking_geckoview66>---</cf_tracking_geckoview66>
          <cf_status_geckoview66>---</cf_status_geckoview66>
          <cf_tracking_firefox50>---</cf_tracking_firefox50>
          <cf_status_firefox50>---</cf_status_firefox50>
          <cf_tracking_firefox51>---</cf_tracking_firefox51>
          <cf_status_firefox51>---</cf_status_firefox51>
          <cf_tracking_firefox52>---</cf_tracking_firefox52>
          <cf_status_firefox52>---</cf_status_firefox52>
          <cf_tracking_firefox_esr52>---</cf_tracking_firefox_esr52>
          <cf_status_firefox_esr52>---</cf_status_firefox_esr52>
          <cf_tracking_firefox_esr60>---</cf_tracking_firefox_esr60>
          <cf_status_firefox_esr60>---</cf_status_firefox_esr60>
          <cf_tracking_firefox_esr68>---</cf_tracking_firefox_esr68>
          <cf_status_firefox_esr68>---</cf_status_firefox_esr68>
          <cf_tracking_firefox53>---</cf_tracking_firefox53>
          <cf_tracking_firefox_esr78>---</cf_tracking_firefox_esr78>
          <cf_status_firefox_esr78>---</cf_status_firefox_esr78>
          <cf_tracking_firefox_esr91>---</cf_tracking_firefox_esr91>
          <cf_status_firefox_esr91>---</cf_status_firefox_esr91>
          <cf_status_firefox53>---</cf_status_firefox53>
          <cf_tracking_firefox_esr102>---</cf_tracking_firefox_esr102>
          <cf_status_firefox_esr102>---</cf_status_firefox_esr102>
          <cf_tracking_firefox_esr115>---</cf_tracking_firefox_esr115>
          <cf_status_firefox_esr115>---</cf_status_firefox_esr115>
          <cf_tracking_firefox54>---</cf_tracking_firefox54>
          <cf_tracking_firefox_esr128>---</cf_tracking_firefox_esr128>
          <cf_status_firefox_esr128>---</cf_status_firefox_esr128>
          <cf_tracking_firefox_esr140>---</cf_tracking_firefox_esr140>
          <cf_status_firefox_esr140>---</cf_status_firefox_esr140>
          <cf_status_firefox54>---</cf_status_firefox54>
          <cf_tracking_firefox_esr153>---</cf_tracking_firefox_esr153>
          <cf_status_firefox_esr153>---</cf_status_firefox_esr153>
          <cf_tracking_firefox55>---</cf_tracking_firefox55>
          <cf_status_firefox55>---</cf_status_firefox55>
          <cf_tracking_firefox56>---</cf_tracking_firefox56>
          <cf_status_firefox56>---</cf_status_firefox56>
          <cf_tracking_firefox57>---</cf_tracking_firefox57>
          <cf_status_firefox57>---</cf_status_firefox57>
          <cf_tracking_firefox58>---</cf_tracking_firefox58>
          <cf_status_firefox58>---</cf_status_firefox58>
          <cf_tracking_firefox59>---</cf_tracking_firefox59>
          <cf_status_firefox59>---</cf_status_firefox59>
          <cf_tracking_firefox60>---</cf_tracking_firefox60>
          <cf_status_firefox60>---</cf_status_firefox60>
          <cf_tracking_firefox61>---</cf_tracking_firefox61>
          <cf_status_firefox61>---</cf_status_firefox61>
          <cf_tracking_firefox62>---</cf_tracking_firefox62>
          <cf_status_firefox62>---</cf_status_firefox62>
          <cf_tracking_firefox63>---</cf_tracking_firefox63>
          <cf_status_firefox63>---</cf_status_firefox63>
          <cf_tracking_firefox64>---</cf_tracking_firefox64>
          <cf_status_firefox64>---</cf_status_firefox64>
          <cf_tracking_firefox65>---</cf_tracking_firefox65>
          <cf_status_firefox65>---</cf_status_firefox65>
          <cf_tracking_firefox66>---</cf_tracking_firefox66>
          <cf_status_firefox66>---</cf_status_firefox66>
          <cf_tracking_firefox67>---</cf_tracking_firefox67>
          <cf_status_firefox67>---</cf_status_firefox67>
          <cf_tracking_firefox67_0_1>---</cf_tracking_firefox67_0_1>
          <cf_status_firefox67_0_1>---</cf_status_firefox67_0_1>
          <cf_tracking_firefox68>---</cf_tracking_firefox68>
          <cf_status_firefox68>---</cf_status_firefox68>
          <cf_tracking_firefox69>---</cf_tracking_firefox69>
          <cf_status_firefox69>---</cf_status_firefox69>
          <cf_tracking_firefox70>---</cf_tracking_firefox70>
          <cf_status_firefox70>---</cf_status_firefox70>
          <cf_tracking_firefox71>---</cf_tracking_firefox71>
          <cf_status_firefox71>---</cf_status_firefox71>
          <cf_status_firefox72>---</cf_status_firefox72>
          <cf_tracking_firefox72>---</cf_tracking_firefox72>
          <cf_status_firefox73>---</cf_status_firefox73>
          <cf_tracking_firefox73>---</cf_tracking_firefox73>
          <cf_tracking_firefox74>---</cf_tracking_firefox74>
          <cf_status_firefox74>---</cf_status_firefox74>
          <cf_tracking_firefox75>---</cf_tracking_firefox75>
          <cf_status_firefox75>---</cf_status_firefox75>
          <cf_tracking_firefox76>---</cf_tracking_firefox76>
          <cf_status_firefox76>---</cf_status_firefox76>
          <cf_tracking_firefox77>---</cf_tracking_firefox77>
          <cf_status_firefox77>---</cf_status_firefox77>
          <cf_tracking_firefox78>---</cf_tracking_firefox78>
          <cf_status_firefox78>---</cf_status_firefox78>
          <cf_tracking_firefox79>---</cf_tracking_firefox79>
          <cf_status_firefox79>---</cf_status_firefox79>
          <cf_tracking_firefox80>---</cf_tracking_firefox80>
          <cf_status_firefox80>---</cf_status_firefox80>
          <cf_tracking_firefox81>---</cf_tracking_firefox81>
          <cf_status_firefox81>---</cf_status_firefox81>
          <cf_tracking_firefox82>---</cf_tracking_firefox82>
          <cf_status_firefox82>---</cf_status_firefox82>
          <cf_tracking_firefox83>---</cf_tracking_firefox83>
          <cf_status_firefox83>---</cf_status_firefox83>
          <cf_tracking_firefox84>---</cf_tracking_firefox84>
          <cf_status_firefox84>---</cf_status_firefox84>
          <cf_tracking_firefox85>---</cf_tracking_firefox85>
          <cf_status_firefox85>---</cf_status_firefox85>
          <cf_tracking_firefox86>---</cf_tracking_firefox86>
          <cf_status_firefox86>---</cf_status_firefox86>
          <cf_tracking_firefox87>---</cf_tracking_firefox87>
          <cf_status_firefox87>---</cf_status_firefox87>
          <cf_tracking_firefox88>---</cf_tracking_firefox88>
          <cf_status_firefox88>---</cf_status_firefox88>
          <cf_tracking_firefox89>---</cf_tracking_firefox89>
          <cf_status_firefox89>---</cf_status_firefox89>
          <cf_tracking_firefox90>---</cf_tracking_firefox90>
          <cf_status_firefox90>---</cf_status_firefox90>
          <cf_tracking_firefox91>---</cf_tracking_firefox91>
          <cf_status_firefox91>---</cf_status_firefox91>
          <cf_tracking_firefox92>---</cf_tracking_firefox92>
          <cf_status_firefox92>---</cf_status_firefox92>
          <cf_tracking_firefox93>---</cf_tracking_firefox93>
          <cf_status_firefox93>---</cf_status_firefox93>
          <cf_tracking_firefox94>---</cf_tracking_firefox94>
          <cf_status_firefox94>---</cf_status_firefox94>
          <cf_tracking_firefox95>---</cf_tracking_firefox95>
          <cf_status_firefox95>---</cf_status_firefox95>
          <cf_tracking_firefox96>---</cf_tracking_firefox96>
          <cf_status_firefox96>---</cf_status_firefox96>
          <cf_tracking_firefox97>---</cf_tracking_firefox97>
          <cf_status_firefox97>---</cf_status_firefox97>
          <cf_tracking_firefox98>---</cf_tracking_firefox98>
          <cf_status_firefox98>---</cf_status_firefox98>
          <cf_tracking_firefox99>---</cf_tracking_firefox99>
          <cf_status_firefox99>---</cf_status_firefox99>
          <cf_tracking_firefox100>---</cf_tracking_firefox100>
          <cf_status_firefox100>---</cf_status_firefox100>
          <cf_tracking_firefox101>---</cf_tracking_firefox101>
          <cf_status_firefox101>---</cf_status_firefox101>
          <cf_tracking_firefox102>---</cf_tracking_firefox102>
          <cf_status_firefox102>---</cf_status_firefox102>
          <cf_tracking_firefox103>---</cf_tracking_firefox103>
          <cf_status_firefox103>---</cf_status_firefox103>
          <cf_tracking_firefox104>---</cf_tracking_firefox104>
          <cf_status_firefox104>---</cf_status_firefox104>
          <cf_tracking_firefox105>---</cf_tracking_firefox105>
          <cf_status_firefox105>---</cf_status_firefox105>
          <cf_tracking_firefox106>---</cf_tracking_firefox106>
          <cf_status_firefox106>---</cf_status_firefox106>
          <cf_tracking_firefox107>---</cf_tracking_firefox107>
          <cf_status_firefox107>---</cf_status_firefox107>
          <cf_tracking_firefox108>---</cf_tracking_firefox108>
          <cf_status_firefox108>---</cf_status_firefox108>
          <cf_tracking_firefox109>---</cf_tracking_firefox109>
          <cf_status_firefox109>---</cf_status_firefox109>
          <cf_tracking_firefox110>---</cf_tracking_firefox110>
          <cf_status_firefox110>---</cf_status_firefox110>
          <cf_tracking_firefox111>---</cf_tracking_firefox111>
          <cf_status_firefox111>---</cf_status_firefox111>
          <cf_tracking_firefox112>---</cf_tracking_firefox112>
          <cf_status_firefox112>---</cf_status_firefox112>
          <cf_tracking_firefox113>---</cf_tracking_firefox113>
          <cf_status_firefox113>---</cf_status_firefox113>
          <cf_tracking_firefox114>---</cf_tracking_firefox114>
          <cf_status_firefox114>---</cf_status_firefox114>
          <cf_tracking_firefox115>---</cf_tracking_firefox115>
          <cf_status_firefox115>---</cf_status_firefox115>
          <cf_tracking_firefox116>---</cf_tracking_firefox116>
          <cf_status_firefox116>---</cf_status_firefox116>
          <cf_tracking_firefox117>---</cf_tracking_firefox117>
          <cf_status_firefox117>---</cf_status_firefox117>
          <cf_tracking_firefox118>---</cf_tracking_firefox118>
          <cf_status_firefox118>---</cf_status_firefox118>
          <cf_tracking_firefox119>---</cf_tracking_firefox119>
          <cf_status_firefox119>---</cf_status_firefox119>
          <cf_tracking_firefox120>---</cf_tracking_firefox120>
          <cf_status_firefox120>---</cf_status_firefox120>
          <cf_tracking_firefox121>---</cf_tracking_firefox121>
          <cf_status_firefox121>---</cf_status_firefox121>
          <cf_tracking_firefox122>---</cf_tracking_firefox122>
          <cf_status_firefox122>---</cf_status_firefox122>
          <cf_tracking_firefox123>---</cf_tracking_firefox123>
          <cf_status_firefox123>---</cf_status_firefox123>
          <cf_tracking_firefox124>---</cf_tracking_firefox124>
          <cf_status_firefox124>---</cf_status_firefox124>
          <cf_tracking_firefox125>---</cf_tracking_firefox125>
          <cf_status_firefox125>---</cf_status_firefox125>
          <cf_tracking_firefox126>---</cf_tracking_firefox126>
          <cf_status_firefox126>---</cf_status_firefox126>
          <cf_tracking_firefox127>---</cf_tracking_firefox127>
          <cf_status_firefox127>---</cf_status_firefox127>
          <cf_tracking_firefox128>---</cf_tracking_firefox128>
          <cf_status_firefox128>---</cf_status_firefox128>
          <cf_tracking_firefox129>---</cf_tracking_firefox129>
          <cf_status_firefox129>---</cf_status_firefox129>
          <cf_tracking_firefox130>---</cf_tracking_firefox130>
          <cf_status_firefox130>---</cf_status_firefox130>
          <cf_tracking_firefox131>---</cf_tracking_firefox131>
          <cf_status_firefox131>---</cf_status_firefox131>
          <cf_tracking_firefox132>---</cf_tracking_firefox132>
          <cf_status_firefox132>---</cf_status_firefox132>
          <cf_tracking_firefox133>---</cf_tracking_firefox133>
          <cf_status_firefox133>---</cf_status_firefox133>
          <cf_tracking_firefox134>---</cf_tracking_firefox134>
          <cf_status_firefox134>---</cf_status_firefox134>
          <cf_tracking_firefox135>---</cf_tracking_firefox135>
          <cf_status_firefox135>---</cf_status_firefox135>
          <cf_tracking_firefox136>---</cf_tracking_firefox136>
          <cf_status_firefox136>---</cf_status_firefox136>
          <cf_tracking_firefox137>---</cf_tracking_firefox137>
          <cf_status_firefox137>---</cf_status_firefox137>
          <cf_tracking_firefox138>---</cf_tracking_firefox138>
          <cf_status_firefox138>---</cf_status_firefox138>
          <cf_tracking_firefox139>---</cf_tracking_firefox139>
          <cf_status_firefox139>---</cf_status_firefox139>
          <cf_tracking_firefox140>---</cf_tracking_firefox140>
          <cf_status_firefox140>---</cf_status_firefox140>
          <cf_tracking_firefox141>---</cf_tracking_firefox141>
          <cf_status_firefox141>---</cf_status_firefox141>
          <cf_tracking_firefox142>---</cf_tracking_firefox142>
          <cf_status_firefox142>---</cf_status_firefox142>
          <cf_tracking_firefox143>---</cf_tracking_firefox143>
          <cf_status_firefox143>---</cf_status_firefox143>
          <cf_tracking_firefox144>---</cf_tracking_firefox144>
          <cf_status_firefox144>---</cf_status_firefox144>
          <cf_tracking_firefox145>---</cf_tracking_firefox145>
          <cf_status_firefox145>---</cf_status_firefox145>
          <cf_tracking_firefox146>---</cf_tracking_firefox146>
          <cf_status_firefox146>---</cf_status_firefox146>
          <cf_tracking_firefox147>---</cf_tracking_firefox147>
          <cf_status_firefox147>---</cf_status_firefox147>
          <cf_tracking_firefox148>---</cf_tracking_firefox148>
          <cf_status_firefox148>---</cf_status_firefox148>
          <cf_tracking_firefox149>---</cf_tracking_firefox149>
          <cf_status_firefox149>---</cf_status_firefox149>
          <cf_tracking_firefox150>---</cf_tracking_firefox150>
          <cf_status_firefox150>---</cf_status_firefox150>
          <cf_tracking_firefox151>---</cf_tracking_firefox151>
          <cf_status_firefox151>---</cf_status_firefox151>
          <cf_tracking_firefox152>---</cf_tracking_firefox152>
          <cf_status_firefox152>---</cf_status_firefox152>
          <cf_tracking_firefox153>---</cf_tracking_firefox153>
          <cf_status_firefox153>---</cf_status_firefox153>
          <cf_tracking_firefox154>---</cf_tracking_firefox154>
          <cf_status_firefox154>---</cf_status_firefox154>
          <cf_tracking_firefox155>---</cf_tracking_firefox155>
          <cf_status_firefox155>---</cf_status_firefox155>
          <cf_tracking_firefox156>---</cf_tracking_firefox156>
          <cf_status_firefox156>---</cf_status_firefox156>
          <cf_tracking_firefox157>---</cf_tracking_firefox157>
          <cf_status_firefox157>---</cf_status_firefox157>
          <cf_tracking_flowstate01>---</cf_tracking_flowstate01>
          <cf_status_flowstate01>---</cf_status_flowstate01>
          <cf_tracking_flowstate02>---</cf_tracking_flowstate02>
          <cf_status_flowstate02>---</cf_status_flowstate02>
          <cf_tracking_flowstate03>---</cf_tracking_flowstate03>
          <cf_status_flowstate03>---</cf_status_flowstate03>
          <cf_data_science_status>---</cf_data_science_status>
          <cf_fission_milestone>---</cf_fission_milestone>
          <cf_last_resolved>2010-08-29 01:03:27</cf_last_resolved>
          <restrict_comments>1</restrict_comments>
          <votes>42</votes>

      

      

      <flag name="in-testsuite"
          id="207088"
          type_id="37"
          status="?"
          setter="jwalden"
    />

          <long_desc isprivate="0">
            <commentid>1214358</commentid>
            <who name="Mike Lee">tseng_mike</who>
            <bug_when>2002-03-11 09:31:20 -0800</bug_when>
            <thetext>Follow on from bug 91516 quote:

&quot;IFRAME or BROWSER children of chrome do not get integrated into the view
hierarchy so they won&apos;t interact properly with siblings in terms of z-index and
overlap. This was a deliberate decision because I didn&apos;t want to change the
behavior of the main browser window (too risky). We can change this policy after
Mozilla 1.0 ships.&quot;

Thanks!</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1214439</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2002-03-11 10:22:23 -0800</bug_when>
            <thetext>This is trivial to correct, it just needs testing to make sure it doesn&apos;t cause
regressions.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1224489</commentid>
            <who name="Chris Petersen">chrispetersen</who>
            <bug_when>2002-03-15 09:14:38 -0800</bug_when>
            <thetext>Changing Priority to P4</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1373888</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2002-05-31 21:44:24 -0700</bug_when>
            <thetext>Moving this out...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1940441</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2003-08-21 06:46:39 -0700</bug_when>
            <thetext>*** Bug 216840 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1940444</commentid>
              <attachid>130172</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2003-08-21 06:48:45 -0700</bug_when>
            <thetext>Created attachment 130172
Untested patch

This patch might work :-)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1941097</commentid>
            <who name="Wang Xianzhu">phnixwxz1</who>
            <bug_when>2003-08-22 03:20:01 -0700</bug_when>
            <thetext>I tried the pactch.  It works well.  Thanks.

I reported bug 216835 similar to 204278 yesterday.  It seems duplicate of bug
204278, if they are of the same cause.
 </thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1941152</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2003-08-22 06:06:56 -0700</bug_when>
            <thetext>OK. We&apos;ll see about getting this into 1.6. It&apos;s &quot;the right thing to do&quot; but
there may be some performance impact.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1943471</commentid>
            <who name="Wang Xianzhu">phnixwxz1</who>
            <bug_when>2003-08-26 04:03:32 -0700</bug_when>
            <thetext>Will 1.6a fix bug 204278?  I&apos;m looking forward to it.:)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1946668</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2003-08-30 07:37:54 -0700</bug_when>
            <thetext>Wang, please check if this patch fixes bug 216835 and bug 204278. If it does,
mark those bugs duplicates of this bug. Thanks!!</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1946903</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2003-08-30 18:36:41 -0700</bug_when>
            <thetext>Note: this patch breaks the way that PaintBackground sets the canvas colour to
the user&apos;s preference color. With this patch, PaintBackground doesn&apos;t detect the
&quot;root document canvas&quot; correctly, because really the only root documents are the
ones that have their own windows or are embedded in a non-Mozilla context.

With this patch, an HTML document which does not set the background color is
simply transparent and the background of the &lt;browser&gt; XUL element shows
through. This is actually very good. The right way to set the canvas background
would be to simply set the background color of the &lt;browser&gt; element. I&apos;ll have
to add that.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>1947409</commentid>
            <who name="Wang Xianzhu">phnixwxz1</who>
            <bug_when>2003-08-31 20:46:44 -0700</bug_when>
            <thetext>This patch seems no effect on bug 204278 and bug 216835.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2557523</commentid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2005-07-20 15:48:29 -0700</bug_when>
            <thetext>There&apos;s a good bit of information in bug 227361 about this, since I tried to do
it (see bug 227361 comment 40 and bug 227361 comment 43).

Fixing this is likely to make it easier to fix bug 83858 and bug 301408
consistently across platforms (especially Mac, and GTK2 for the former).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2571448</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-03 18:28:26 -0700</bug_when>
            <thetext>*** Bug 190115 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2571555</commentid>
              <attachid>191565</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-03 21:47:20 -0700</bug_when>
            <thetext>Created attachment 191565
fix

This patch is somewhat tested. Things seem to work fine. There may be
performance issues but they aren&apos;t visible on this machine.

The default background color code in nsCSSRendering is still there so Gecko
embedders will still get the default background painted on their content
shells. But Gecko no longer paints the default background on root chrome shells
or any of their descendants: in the former case, we make the widget transparent
instead, and in the latter case, the content shells are transparent. This patch
preserves the functionality of the default background preference by setting the
background color of the &lt;browser&gt; binding to the default background. I&apos;ve done
things this way so that XUL authors have the flexibility to make transparent
content shells inside chrome.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2571556</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-03 21:48:32 -0700</bug_when>
            <thetext>This is for 1.9 of course.

CCing mconnor because of the toolkit change.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2581950</commentid>
              <attachid>191565</attachid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2005-08-15 17:32:40 -0700</bug_when>
            <thetext>Comment on attachment 191565
fix

r+sr=dbaron, but please use the name nsIPrefBranch2 instead of
nsIPrefBranchInternal (see the headers for why).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2584532</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-18 10:14:58 -0700</bug_when>
            <thetext>checked in.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2584719</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-18 12:46:10 -0700</bug_when>
            <thetext>This caused performance regressions, so I backed it out. 40ms on btek, 90ms on
luna, 10ms on beast. Also, a 30ms Tdhtml regression on luna and 10ms Txul on
comet (80ms on luna).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2589329</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-23 12:57:34 -0700</bug_when>
            <thetext>My current thinking is that I might just go for full view manager removal and do
this as part of that.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2589353</commentid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2005-08-23 13:19:22 -0700</bug_when>
            <thetext>That seems risky.  If you can&apos;t make this work without a performance regression,
why do you think you&apos;ll be able to do the view manager removal without one?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2589364</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-08-23 13:26:35 -0700</bug_when>
            <thetext>There should be a win from not having to maintain the view tree or bounce
between frames and views that could compensate for this.

I guess it would be better to somehow eliminate the overhead here. OK.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2725177</commentid>
              <attachid>206053</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2005-12-15 20:01:18 -0800</bug_when>
            <thetext>Created attachment 206053
updated to trunk</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2758920</commentid>
              <attachid>209787</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-01-26 18:43:36 -0800</bug_when>
            <thetext>Created attachment 209787
alternative patch

The orginal patch painted the default background color by making it the background color on the XUL tabpanel. This is elegant in some ways, because the default background color for content documents is entirely a feature of the browser chrome, but this meant that the background of the content window is often transparent, which forces us to traverse frames in the browser chrome every time we paint, and possibly interferes with scrolling optimization.

This patch takes a different approach, hewing closer to the existing code. We have a new view flag to control whether the default background color should be painted. We set this flag for the root views whose view managers would have been root view managers in the old system. We use that flag to control whether the view paints the default background color or not. I hope that this will improve performance.

One problem is that trunk and branch have just diverged due to my landing of the frame display list patch. This patch here will apply to both trunk and branch, but it&apos;s more likely to be effective on branch. On trunk it may not be effective because we&apos;ll have to traverse XUL frames to build the display list. We could land it anyway, but it would be good to know what it does to Tp on branch and I&apos;m not sure we have sensitive enough branch tinderboxes.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2759162</commentid>
            <who name="Martijn Wargers (dead)">martijn.martijn</who>
            <bug_when>2006-01-27 03:08:23 -0800</bug_when>
            <thetext>Robert, I&apos;m a bit confused, it seems to me that this bug is already fixed by your frame display lists patch, not?
See bug 204278 and bug 303813 for example, which are definetely fixed now.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2759672</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-01-27 13:18:40 -0800</bug_when>
            <thetext>This may be fixed for some &lt;browser&gt; elements, but I don&apos;t believe it&apos;s fixed for &quot;content&quot; &lt;browser&gt;s like you&apos;d find in Firefox tabs.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2790473</commentid>
            <who name="Pete Collins (MDG)">pete</who>
            <bug_when>2006-02-28 18:01:23 -0800</bug_when>
            <thetext>&gt; One problem is that trunk and branch have just diverged due to my landing of
&gt; the frame display list patch. This patch here will apply to both trunk and
&gt; branch, but it&apos;s more likely to be effective on branch. On trunk it may not be
&gt; effective because we&apos;ll have to traverse XUL frames to build the display list.
&gt; We could land it anyway, but it would be good to know what it does to Tp on
&gt; branch and I&apos;m not sure we have sensitive enough branch tinderboxes.

I tested on the trunk and this patch works exactly as expected.  We can really use this checked into the trunk and branch.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2796674</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-03-08 00:46:39 -0800</bug_when>
            <thetext>I need to do a test-landing of this patch and see what the damage is.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2796857</commentid>
            <who name="Pete Collins (MDG)">pete</who>
            <bug_when>2006-03-08 06:41:47 -0800</bug_when>
            <thetext>I&apos;ve been running w/ it for a while on a trunk build and things appear to be solid.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2797172</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-03-08 12:34:27 -0800</bug_when>
            <thetext>It&apos;s all about performance really.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2797433</commentid>
            <who name="Ben Goodger (use ben at mozilla dot org for email)">bugs</who>
            <bug_when>2006-03-08 16:46:54 -0800</bug_when>
            <thetext>Does fixing this bug mean that you should be able to overlay the content of an iframe like so? 

&lt;stack&gt;
  &lt;iframe src=&quot;http://www.homestarrunner.com/sbemail58.html&quot;/&gt;
  &lt;label&gt;Burninate!&lt;/label&gt;
&lt;/stack&gt;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2797478</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-03-08 18:03:14 -0800</bug_when>
            <thetext>Yes.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2797749</commentid>
            <who name="Pete Collins (MDG)">pete</who>
            <bug_when>2006-03-09 05:27:50 -0800</bug_when>
            <thetext>&gt; Does fixing this bug mean that you should be able to overlay the content of an
&gt; iframe like so? 

And it works quite wonderfully ... 
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2815852</commentid>
            <who name="Pete Collins (MDG)">pete</who>
            <bug_when>2006-03-31 06:31:03 -0800</bug_when>
            <thetext>&gt; And it works quite wonderfully ... 
 
Well for the most part. I do see some problems arise from time to time. For example dynamically resizing XUL controls causes problems that don&apos;t appear on unpatched builds.  </thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2843199</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-04-30 17:28:24 -0700</bug_when>
            <thetext>(In reply to comment #33)
&gt; &gt; And it works quite wonderfully ... 
&gt; 
&gt; Well for the most part. I do see some problems arise from time to time. For
&gt; example dynamically resizing XUL controls causes problems that don&apos;t appear on
&gt; unpatched builds.  

What sort of problems?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2843205</commentid>
              <attachid>220348</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-04-30 17:34:02 -0700</bug_when>
            <thetext>Created attachment 220348
updated patch

This patch is updated to fix a problem where the display item for a document&apos;s default background wasn&apos;t being recognized as opaque, so we were unnecessarily painting the chrome tabpanel&apos;s background.

It also only paints a default background on content subdocuments of chrome documents, instead of all subdocuments of chrome documents.

I would like to land this on trunk to see what the impact is.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2843585</commentid>
            <who name="Pete Collins (MDG)">pete</who>
            <bug_when>2006-05-01 05:01:03 -0700</bug_when>
            <thetext>&gt; 
&gt; I would like to land this on trunk to see what the impact is.


I&apos;m going to apply the new patch and I&apos;ll report any specific problems I find.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2845863</commentid>
              <attachid>220348</attachid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2006-05-03 11:47:07 -0700</bug_when>
            <thetext>Comment on attachment 220348
updated patch

This seems fine except for this function:

&gt; PRBool
&gt; nsDisplayBackground::IsOpaque(nsDisplayListBuilder* aBuilder) {
&gt;   // theme background overrides any other background
&gt;   if (mFrame-&gt;IsThemed())
&gt;     return PR_FALSE;
&gt; 
&gt;   PRBool isCanvas;
&gt;   const nsStyleBackground* bg;
&gt;+  nsPresContext* presContext = mFrame-&gt;GetPresContext();
&gt;   PRBool hasBG =
&gt;-    nsCSSRendering::FindBackground(mFrame-&gt;GetPresContext(), mFrame, &amp;bg, &amp;isCanvas);
&gt;-  if (!hasBG || (bg-&gt;mBackgroundFlags &amp; NS_STYLE_BG_COLOR_TRANSPARENT) ||
&gt;-      bg-&gt;mBackgroundClip != NS_STYLE_BG_CLIP_BORDER ||
&gt;-      HasNonZeroBorderRadius(mFrame-&gt;GetStyleBorder()) ||
&gt;-      NS_GET_A(bg-&gt;mBackgroundColor) &lt; 255)
&gt;+    nsCSSRendering::FindBackground(presContext, mFrame, &amp;bg, &amp;isCanvas);
&gt;+  if (!hasBG)
&gt;     return PR_FALSE;
&gt;-  return PR_TRUE;
&gt;+  PRBool isTranslucentColor;
&gt;+  if (isCanvas) {
&gt;+    nsIView* rootView;
&gt;+    presContext-&gt;GetViewManager()-&gt;GetRootView(rootView);
&gt;+    if (rootView-&gt;IsUsingDefaultBackgroundColor()) {
&gt;+      isTranslucentColor = NS_GET_A(presContext-&gt;DefaultBackgroundColor()) &lt; 255;
&gt;+    }
&gt;+  } else {
&gt;+    isTranslucentColor = NS_GET_A(bg-&gt;mBackgroundColor) &lt; 255 ||
&gt;+      (bg-&gt;mBackgroundFlags &amp; NS_STYLE_BG_COLOR_TRANSPARENT);
&gt;+  }
&gt;+  return !isTranslucentColor &amp;&amp;
&gt;+    bg-&gt;mBackgroundClip == NS_STYLE_BG_CLIP_BORDER &amp;&amp;
&gt;+    !HasNonZeroBorderRadius(mFrame-&gt;GetStyleBorder());
&gt; }

For a start, you&apos;re leaving isTranslucentColor uninitialized in one of the branches here.  But it also seems odd that we&apos;re checking background color and border-radius for the canvas default background color case -- if it&apos;s painted as a backstop by the view manager (or is it?), do those have any effect?  Maybe this should be rewritten to use an early return inside the nested if, and then no else?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2846063</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-05-03 14:39:15 -0700</bug_when>
            <thetext>(In reply to comment #37)
&gt; For a start, you&apos;re leaving isTranslucentColor uninitialized in one of the
&gt; branches here.

Indeed, I should just set it to &quot;NS_GET_A(bg-&gt;mBackgroundColor) &lt; 255 ||
(bg-&gt;mBackgroundFlags &amp; NS_STYLE_BG_COLOR_TRANSPARENT)&quot; at the top and scratch the &quot;else&quot; clause.

&gt; But it also seems odd that we&apos;re checking background color and
&gt; border-radius for the canvas default background color case -- if it&apos;s painted
&gt; as a backstop by the view manager (or is it?), do those have any effect?  

This is accounting for the backstop color change by nsCSSRendering::PaintBackground:
http://lxr.mozilla.org/mozilla/source/layout/base/nsCSSRendering.cpp#2791
which uses presContext-&gt;DefaultBackgroundColor(). The bg-&gt;mBackgroundClip and border-radius would be honoured by PaintBackgroundWithSC, if they were set, which they only would be in pathological situations of course.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2846068</commentid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2006-05-03 14:42:41 -0700</bug_when>
            <thetext>OK, I&apos;ll trust you on that, so r+sr=dbaron with the change to remove the else clause.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2846320</commentid>
              <attachid>220737</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-05-03 21:29:22 -0700</bug_when>
            <thetext>Created attachment 220737
updated patch

This is the patch as checked in.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2846348</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-05-03 22:36:12 -0700</bug_when>
            <thetext>Here are some Tp numbers:
argo: ~365 to ~410
luna: ~900 to ~933
btek: ~950 to ~965

luna Tdhtml: ~1565 to ~1580

Nothing else seems to have changed much.

Here are raw Tp numbers from argo:
BEFORE:
Avg. Median : 364 msec
  Average     : 381 msec
  Minimum     : 146 msec
  Maximum     : 2352 msec
  IDX PATH                           AVG    MED    MAX    MIN  TIMES ...
    0 home.netscape.com         	   323    303    401    293    401    321    300    303    293 
    1 my.netscape.com           	   324    318    368    306    368    310    306    320    318 
    2 www.aol.com               	   570    359   1419    346    380    359   1419    349    346 
    3 www.mapquest.com          	   213    211    231    208    211    231    208    208    211 
    4 www.moviefone.com         	   204    203    224    190    224    190    201    203    203 
    5 www.digitalcity.com       	   236    237    244    231    244    234    231    237    237 
    6 www.iplanet.com           	   270    229    437    223    233    229    437    229    223 
    7 web.icq.com               	   441    419    533    400    533    400    418    436    419 
    8 www.compuserve.com        	   233    219    266    219    266    245    219    219    219 
    9 www.msnbc.com             	   185    177    219    172    219    185    175    172    177 
   10 www.yahoo.com             	   196    202    205    175    203    199    202    175    205 
   11 bugzilla.mozilla.org      	   309    300    332    300    300    300    300    315    332 
   12 www.msn.com               	   313    308    336    302    336    302    304    318    308 
   13 slashdot.org              	   326    331    333    313    331    313    331    325    333 
   14 www.nytimes.com           	   381    383    411    356    411    386    383    356    370 
   15 www.nytimes.com_Table     	   571    566    600    553    600    553    566    566    570 
   16 www.w3.org_DOML2Core      	  1127   1105   1186   1088   1088   1096   1105   1186   1161 
   17 lxr.mozilla.org           	   735    734    754    720    731    737    754    720    734 
   18 espn.go.com               	   546    533    596    521    596    533    531    552    521 
   19 www.voodooextreme.com     	  1636   1459   2352   1444   2352   1480   1459   1444   1447 
   20 www.wired.com             	   490    472    530    458    530    458    470    472    522 
   21 hotwired.lycos.com        	   289    288    300    279    284    288    279    295    300 
   22 www.ebay.com              	   224    225    245    203    225    245    203    221    226 
   23 www.apple.com             	   159    161    168    146    168    160    163    161    146 
   24 www.amazon.com            	   266    260    294    253    294    260    253    264    259 
   25 www.altavista.com         	   210    209    224    200    224    209    200    209    212 
   26 www.zdnet.com_Gamespot.com	   404    349    623    348    623    349    348    348    355 
   27 www.spinner.com           	   327    349    367    251    314    251    357    349    367 
   28 www.microsoft.com         	   208    205    232    192    205    192    216    196    232 
   29 www.time.com              	   285    267    358    265    358    265    266    273    267 
   30 www.travelocity.com       	   289    286    320    274    320    274    279    289    286 
   31 www.expedia.com           	   326    311    389    307    389    311    307    310    317 
   32 www.quicken.com           	   264    266    283    224    266    266    281    224    283 
   33 www.zdnet.com             	   469    457    528    443    528    457    443    466    453 
   34 www.excite.com            	   281    277    315    265    315    280    265    277    271 
   35 www.google.com            	   155    151    164    149    164    151    149    151    161 
   36 www.tomshardware.com      	   437    425    482    415    482    424    425    415    442 
   37 www.cnn.com               	   556    539    637    522    637    522    528    556    539 
   38 news.cnet.com             	   297    303    317    278    317    303    278    304    284 
   39 www.sun.com               	   186    184    196    179    184    184    179    196    187 

AFTER:
  Starting Page Load Test
  Test id: 4459842D4D
  Avg. Median : 408 msec
  Average     : 426 msec
  Minimum     : 159 msec
  Maximum     : 2628 msec
  IDX PATH                           AVG    MED    MAX    MIN  TIMES ...
    0 home.netscape.com         	   367    304    642    286    642    286    299    304    305 
    1 my.netscape.com           	   302    307    314    289    289    307    291    312    314 
    2 www.aol.com               	   489    496    506    469    474    500    496    469    506 
    3 www.mapquest.com          	   207    197    253    191    253    197    195    191    200 
    4 www.moviefone.com         	   281    222    392    194    392    194    207    222    392 
    5 www.digitalcity.com       	   236    235    246    229    229    234    246    240    235 
    6 www.iplanet.com           	   287    289    303    269    269    295    303    289    283 
    7 web.icq.com               	   453    424    571    421    571    424    431    421    422 
    8 www.compuserve.com        	   250    229    344    219    344    229    229    219    229 
    9 www.msnbc.com             	   216    214    231    207    231    217    214    212    207 
   10 www.yahoo.com             	   205    202    223    188    195    202    188    223    218 
   11 bugzilla.mozilla.org      	   423    422    452    403    452    422    426    403    415 
   12 www.msn.com               	   329    319    373    312    373    312    319    326    317 
   13 slashdot.org              	   348    344    372    337    372    342    344    345    337 
   14 www.nytimes.com           	   406    393    476    375    476    400    386    393    375 
   15 www.nytimes.com_Table     	   595    595    638    557    638    595    557    606    583 
   16 www.w3.org_DOML2Core      	  1202   1186   1280   1156   1186   1280   1176   1215   1156 
   17 lxr.mozilla.org           	   735    725    764    716    725    748    722    764    716 
   18 espn.go.com               	   696    689    795    631    795    689    631    709    659 
   19 www.voodooextreme.com     	  1756   1525   2628   1499   2628   1611   1518   1499   1525 
   20 www.wired.com             	   523    514    574    500    574    500    503    525    514 
   21 hotwired.lycos.com        	   352    332    474    289    342    332    474    323    289 
   22 www.ebay.com              	   268    249    326    228    294    249    326    245    228 
   23 www.apple.com             	   187    178    225    172    225    189    172    178    174 
   24 www.amazon.com            	   266    259    292    251    292    251    259    258    271 
   25 www.altavista.com         	   223    215    244    211    237    212    244    215    211 
   26 www.zdnet.com_Gamespot.com	   419    375    603    360    603    360    375    362    399 
   27 www.spinner.com           	   548    556    588    512    512    556    588    561    527 
   28 www.microsoft.com         	   225    237    242    196    242    196    242    237    209 
   29 www.time.com              	   386    380    472    316    380    434    332    472    316 
   30 www.travelocity.com       	   303    271    400    269    400    305    269    271    271 
   31 www.expedia.com           	   327    302    429    286    429    302    286    325    297 
   32 www.quicken.com           	   268    253    337    246    337    248    257    253    246 
   33 www.zdnet.com             	   742    728    807    711    807    711    743    723    728 
   34 www.excite.com            	   298    299    338    264    338    264    299    300    289 
   35 www.google.com            	   168    169    180    159    169    161    159    174    180 
   36 www.tomshardware.com      	   558    515    735    510    735    515    515    518    510 
   37 www.cnn.com               	   627    609    714    579    714    603    579    609    632 
   38 news.cnet.com             	   331    322    364    299    364    299    313    357    322 
   39 www.sun.com               	   250    250    268    235    268    256    250    245    235 </thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2846360</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-05-03 22:48:32 -0700</bug_when>
            <thetext>I backed out, BTW.

Planetoid Tp had gone up from ~367 to ~402.

On argo, the slowdown seems to affect some sites and not others, which is very interesting. The following sites show a consistent, significant slowdown:

www.aol.com
www.iplanet.com
www.msnbc.com
bugzilla.mozilla.org
espn.go.com
www.spinner.com
www.time.com
www.zdnet.com
www.tomshardware.com
www.sun.com</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2846366</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-05-03 22:56:48 -0700</bug_when>
            <thetext>On planetoid the most consistently affected sites could be

www.aol.com
www.moviefone.com
web.icq.com
www.compuserve.com
bugzilla.mozilla.org
espn.go.com
www.wired.com
hotwired.lycos.com
www.time.com
www.zdnet.com
www.tomshardware.com
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>2855454</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-05-14 18:34:18 -0700</bug_when>
            <thetext>I profiled the aol.com content (to be precise, the result of doing &quot;Save As&quot; on axolotl&apos;s content) on my laptop, using a cairo build like argo does, and the differences between results before and after the patch are in the noise :-(.

Maybe I should try to get argo configured to run jprof during its tests...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3000834</commentid>
              <attachid>241004</attachid>
            <who name="daniel newton">djpnewton</who>
            <bug_when>2006-10-02 18:00:04 -0700</bug_when>
            <thetext>Created attachment 241004
Updated patch to trunk

I wanted to use this patch on the latest trunk and had to update a couple of lines  so I figured I may as well post it here.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3037105</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-11-13 14:59:43 -0800</bug_when>
            <thetext>I tried landing this again. Let&apos;s see how it goes.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3037805</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-11-14 11:55:09 -0800</bug_when>
            <thetext>This did cause a performance regression on bl-bldlnx01. I have a patch that will let us dump display lists into the Tinderbox log, which may help diagnose the problem. I&apos;ll check it in temporarily when that machine comes back online.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3037978</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-11-14 15:42:34 -0800</bug_when>
            <thetext>Vlad suggests that the Tp2 regression was in the noise and the Tdhtml regression, while probably real, is also tiny, so we should leave this landed. So, that&apos;s what I&apos;ll do.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3037982</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-11-14 15:47:09 -0800</bug_when>
            <thetext>(We do have to traverse more frames and build a slightly larger display list, that was always clear, so a tiny performance regression was actually inevitable)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3039517</commentid>
            <who name="daniel newton">djpnewton</who>
            <bug_when>2006-11-16 13:56:25 -0800</bug_when>
            <thetext>*** Bug 355078 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3043377</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-11-21 22:48:00 -0800</bug_when>
            <thetext>I think we&apos;ll want to back this out for 1.9alpha1. It&apos;s interacting with view update batching and that stuff is fragile. I&apos;ll back it out tomorrow.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3044258</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2006-11-22 17:13:33 -0800</bug_when>
            <thetext>Backed out</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3044782</commentid>
            <who name="Devon Jensen">velcrospud</who>
            <bug_when>2006-11-23 09:13:07 -0800</bug_when>
            <thetext>One thing I noticed while briefly testing a nightly with this patch in it - If I stacked an xul button on top of the firefox browser it would show up great, but when I would scroll the webpage quickly, I would often see a &apos;ghost&apos; button at a different spot (basically one &apos;scroll height&apos; away).  

I don&apos;t know if this is possible to fix

Can we count on this patch being in firefox 3.0?  I&apos;d like to use this for one of my extensions</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3072599</commentid>
            <who name="Michael Ventnor">ventnor.bugzilla</who>
            <bug_when>2006-12-31 17:14:45 -0800</bug_when>
            <thetext>(In reply to comment #53)
&gt; Can we count on this patch being in firefox 3.0?  I&apos;d like to use this for one
&gt; of my extensions
&gt; 

According to the Blocking1.9+ flag I assume so. But I&apos;d like to know whether this bug is still being worked on. After looking at some dependency trees, this bug is blocking quite a few important bugs.
Should the &quot;helpwanted&quot; keyword be set?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3107130</commentid>
            <who name="Gábor Stefanik">netrolller.3d</who>
            <bug_when>2007-02-10 04:05:45 -0800</bug_when>
            <thetext>Mozilla 1.6 alpha is long gone, removing tarhet milestone. Also, is this bug abandoned? The latest patch I can see is from 2006-10-02. I second the need for &quot;helpwanted&quot;.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3117811</commentid>
            <who name="Michael Ventnor">ventnor.bugzilla</who>
            <bug_when>2007-02-23 02:13:59 -0800</bug_when>
            <thetext>Why is this a P5? On http://wiki.mozilla.org/Firefox3/Gecko_Feature_List it is listed as a P1.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3117843</commentid>
            <who name="Bill Gianopoulos [:WG9s]">wgianopoulos</who>
            <bug_when>2007-02-23 05:03:26 -0800</bug_when>
            <thetext>(In reply to comment #56)
&gt; Why is this a P5? On http://wiki.mozilla.org/Firefox3/Gecko_Feature_List it is
&gt; listed as a P1.
&gt; 

Unless you have something useful to contribute.  Please stop spamming this bug.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3122466</commentid>
            <who name="Gábor Stefanik">netrolller.3d</who>
            <bug_when>2007-02-28 05:36:04 -0800</bug_when>
            <thetext>Just a quick note: The latest patch can still be applied on the recent trunk, however the issues mentioned in this bug still need resolving.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3141205</commentid>
            <who name="Gábor Stefanik">netrolller.3d</who>
            <bug_when>2007-03-21 09:29:20 -0700</bug_when>
            <thetext>Supposedly the &quot;ghost button&quot; issue will go away once view removal is complete. It seems to be a variant of bug 324819.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3154213</commentid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2007-04-05 09:58:40 -0700</bug_when>
            <thetext>I see the problem on the latest XULRunner 1.9a4. When using &lt;xul:iframe type=&quot;content&quot;&gt; it works. When using no type attribute an iframe is always rendered on top.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3154215</commentid>
              <attachid>260724</attachid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2007-04-05 10:00:24 -0700</bug_when>
            <thetext>Created attachment 260724
Testcase for iframe with and without type=content attribute</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3154217</commentid>
              <attachid>260725</attachid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2007-04-05 10:01:49 -0700</bug_when>
            <thetext>Created attachment 260725
Screenshot of the iframe testcase</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3159557</commentid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2007-04-13 00:24:46 -0700</bug_when>
            <thetext>After bug 361600 is fixed the problem described in comment 60 is still visible.
Tested with Mozilla/5.0 (Windows; U; Windows NT 5.1; de-DE; rv:1.9a4pre) Gecko/20070412</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3233539</commentid>
            <who name="Steffen Wilberg">steffen.wilberg</who>
            <bug_when>2007-06-29 02:35:31 -0700</bug_when>
            <thetext>The testcase from comment 61 looks fixed here. Contrary to the screenshot from comment 62, the lower iframe displays the red border and the text as well.
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a6pre) Gecko/20070628 Firefox/3.0a6pre

But the safe browsing notification is still hidden by the content area (bug 341950). I guess we could use another testcase here.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3233596</commentid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2007-06-29 04:04:56 -0700</bug_when>
            <thetext>The testcase always worked when displayed in the browser, as the browser is allready a content window. Testing the testcase from a chrome environment with the latest XULRunner nightly still does NOT work.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3233599</commentid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2007-06-29 04:12:58 -0700</bug_when>
            <thetext>Tested and reproducable with XULRunner: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-DE; rv:1.9a6pre) Gecko/20070627</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3311504</commentid>
            <who name="Neil Deakin (away until Sept 6)">enndeakin</who>
            <bug_when>2007-09-14 06:43:57 -0700</bug_when>
            <thetext>roc, can we at least still hook up chrome-&gt;chrome hierarchies for 1.9? This is needed for bug 395670 to fix some popup bugs, and handle frames inside popups, such as the customize dialog on Mac.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3311943</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-09-14 14:35:01 -0700</bug_when>
            <thetext>chrome-to-chrome should already be hooked up</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3312856</commentid>
            <who name="Neil Deakin (away until Sept 6)">enndeakin</who>
            <bug_when>2007-09-16 04:55:59 -0700</bug_when>
            <thetext>(In reply to comment #68)
&gt; chrome-to-chrome should already be hooked up
&gt; 

roc, OK maybe I misunderstood what you described recently. I want to make sure that iframes in popups get events targeted to them. Disabling the &apos;don&apos;t hook up chrome parents&apos; at http://lxr.mozilla.org/mozilla/source/layout/base/nsDocumentViewer.cpp#2212 causes that work, otherwise mouse events just get ignored.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3313182</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-09-16 14:21:09 -0700</bug_when>
            <thetext>ah ok, I was wrong, we&apos;re not hooking up any children of chrome shells. We probably should hook up chrome children of any shell, and that&apos;s easy, so do you want to sling me a patch for that?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3313312</commentid>
            <who name="Neil Deakin (away until Sept 6)">enndeakin</who>
            <bug_when>2007-09-16 19:33:27 -0700</bug_when>
            <thetext>(In reply to comment #70)
&gt; ah ok, I was wrong, we&apos;re not hooking up any children of chrome shells. We
&gt; probably should hook up chrome children of any shell, and that&apos;s easy, so do
&gt; you want to sling me a patch for that?
&gt; 

That would be great.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3342233</commentid>
              <attachid>285010</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-10-15 15:08:58 -0700</bug_when>
            <thetext>Created attachment 285010
hook up view hierarchies for chrome children of chrome 

Simple patch. Fairly conservative as it leaves content children of chrome unhooked, which is sad but the way we&apos;ll have to ship 1.9, I think. It will help people messing with chrome child frames.

Boris, I didn&apos;t know what to do about typeChromeWrapper and typeContentWrapper. They will generally lead to things being hooked up. Let me know if that&apos;s wrong; I&apos;m not sure what they mean.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3342477</commentid>
              <attachid>285029</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-10-15 19:17:56 -0700</bug_when>
            <thetext>Created attachment 285029
Revised patch using GetSameTypeParent as suggested by bz</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3342480</commentid>
              <attachid>285029</attachid>
            <who name="Boris Zbarsky [:bzbarsky]">bzbarsky</who>
            <bug_when>2007-10-15 19:22:28 -0700</bug_when>
            <thetext>Comment on attachment 285029
Revised patch using GetSameTypeParent as suggested by bz

r+sr=bzbarsky</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3342483</commentid>
              <attachid>285029</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-10-15 19:26:15 -0700</bug_when>
            <thetext>Comment on attachment 285029
Revised patch using GetSameTypeParent as suggested by bz

I&apos;m going to request approval because this patch does not address the bulk of this bug, and should therefore be evaluated on its own merits.

Neil, it would be useful if you could explain exactly how this will benefit.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3342808</commentid>
            <who name="Neil Deakin (away until Sept 6)">enndeakin</who>
            <bug_when>2007-10-16 05:34:55 -0700</bug_when>
            <thetext>There are cases where child frames are used in popups. The toolbar customization dialog uses a child frame. Also, the places tag editor wants an &lt;editor&gt; inside a popup. The mouse events don&apos;t get targeted properly unless the chrome views are connected.

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3349522</commentid>
              <attachid>285029</attachid>
            <who name="Damon Sicore (:damons)">dsicore</who>
            <bug_when>2007-10-23 10:16:57 -0700</bug_when>
            <thetext>Comment on attachment 285029
Revised patch using GetSameTypeParent as suggested by bz

a-&apos;ing for M9.  We will make another pass through the -&apos;s right after we unfreeze and process them again.  So, if you leave it a minus, we&apos;ll get to it ASAP.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3349540</commentid>
              <attachid>285029</attachid>
            <who name="Damon Sicore (:damons)">dsicore</who>
            <bug_when>2007-10-23 10:36:18 -0700</bug_when>
            <thetext>Comment on attachment 285029
Revised patch using GetSameTypeParent as suggested by bz

OK.  Sorry for all the status changes here, but we&apos;re still working out the best way to process approval requests for specific milestones.

So, on that note:  

Setting approval1.9+, targeting for M10, and you are clear to land once the tree is open for M10 (i.e., after tree opens, after beta).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3349542</commentid>
            <who name="Damon Sicore (:damons)">dsicore</who>
            <bug_when>2007-10-23 10:37:17 -0700</bug_when>
            <thetext>Targeting M10.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3363776</commentid>
            <who name="Mike Schroepfer">mtschrep</who>
            <bug_when>2007-11-06 19:01:15 -0800</bug_when>
            <thetext>So - why do we need this at this point in the 1.9 cycle?  </thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3363789</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-11-06 19:23:13 -0800</bug_when>
            <thetext>See comment #76. If you need more details, Neil will have to provide them.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3364316</commentid>
            <who name="Mike Schroepfer">mtschrep</who>
            <bug_when>2007-11-07 09:36:23 -0800</bug_when>
            <thetext>(In reply to comment #81)
&gt; See comment #76. If you need more details, Neil will have to provide them.
&gt; 

Right - I see that this bug does some good - but is there a driver to get this fixed in 1.9 - e.g. some new way in which this problem is exposed?   Neil?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3365260</commentid>
            <who name="Reed Loden [:reed]">reed</who>
            <bug_when>2007-11-07 20:51:25 -0800</bug_when>
            <thetext>Checking in layout/base/nsDocumentViewer.cpp;
/cvsroot/mozilla/layout/base/nsDocumentViewer.cpp,v  &lt;--  nsDocumentViewer.cpp
new revision: 1.552; previous revision: 1.551
done</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3365403</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-11-08 00:48:05 -0800</bug_when>
            <thetext>Sorry, this bug isn&apos;t fully fixed and won&apos;t be in 1.9. It needs the compositor work.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3365446</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-11-08 01:32:29 -0800</bug_when>
            <thetext>I can&apos;t think of a straightforward way to write a test for the patch that was checked in. We&apos;d have to make a mochitest that runs as a chrome-type docshell and I don&apos;t know how to do that.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3366838</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2007-11-09 00:38:57 -0800</bug_when>
            <thetext>There&apos;s nothing left here that blocks 1.9.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3468404</commentid>
            <who name="Dave Townsend [:mossop]">dtownsend</who>
            <bug_when>2008-02-05 08:36:04 -0800</bug_when>
            <thetext>*** Bug 405540 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3571789</commentid>
            <who name="Dave Townsend [:mossop]">dtownsend</who>
            <bug_when>2008-04-09 13:31:48 -0700</bug_when>
            <thetext>*** Bug 428079 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3616409</commentid>
            <who name="Chris Pearce [:cpearce (Not reading bugmail)]">chris</who>
            <bug_when>2008-05-09 11:47:16 -0700</bug_when>
            <thetext>We want to get this bug off the &quot;bugs which are have patch approved for FF3 but bug is still open&quot; list, so I&apos;m resolving-incomplete this bug and I will reopen another for followup work.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3616428</commentid>
            <who name="Chris Pearce [:cpearce (Not reading bugmail)]">chris</who>
            <bug_when>2008-05-09 11:52:27 -0700</bug_when>
            <thetext>I have created bug 433048 for followup work.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>3616435</commentid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2008-05-09 11:55:44 -0700</bug_when>
            <thetext>This bug should remain open.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4058036</commentid>
            <who name="Blair McBride [:Unfocused] (UNAVAILABLE)">blair</who>
            <bug_when>2009-04-13 21:47:38 -0700</bug_when>
            <thetext>Any chance of seeing this fixed in 1.9.2? It may block work on Taskfox.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4058331</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2009-04-14 04:17:43 -0700</bug_when>
            <thetext>Depends on how fast I make progress on compositor pieces and what the 1.9.2 schedule is.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4419016</commentid>
            <who name="Myk Melez [:myk] [@mykmelez]">myk</who>
            <bug_when>2009-11-25 16:30:33 -0800</bug_when>
            <thetext>The latest work this bug blocks is the implementation of panels in Jetpack (bug 494238), which is a high priority feature for Jetpack.

Ideally, a version of Jetpack that supports panels would be available in conjunction with the release of Firefox 3.6, and absent a fix for this bug, we&apos;ll explore every possible hack that can get us somewhat there.

But regardless of how we hack it for Firefox 3.6, we need a robust, functional implementation of panels in Jetpack by the time Firefox 3.7 rolls around, so I&apos;m requesting that this bug be considered a Gecko 1.9.3 blocker and prioritized accordingly.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4425474</commentid>
            <who name="Mike Beltzner [:beltzner, not reading bugmail]">mbeltzner</who>
            <bug_when>2009-11-27 12:40:21 -0800</bug_when>
            <thetext>Roc: I&apos;m tentatively marking this as blocking 1.9.3 to get it on your radar. It&apos;s needed for JetPack (see comment 94) capability which is a priority for Firefox 3.7.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4433247</commentid>
            <who name="David Dahl :ddahl">bugzilla</who>
            <bug_when>2009-12-02 16:23:59 -0800</bug_when>
            <thetext>Just tried to apply this patch on the current trunk (as an excersize for jetpack) - it did not apply cleanly (or at all). The current source looks like it has implemented parts of this patch but does nto return the same object. Not knowing ANYTHING about layout code, this is as far as I can go.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4433266</commentid>
            <who name="Myk Melez [:myk] [@mykmelez]">myk</who>
            <bug_when>2009-12-02 16:34:19 -0800</bug_when>
            <thetext>roc: can you recommend someone with the time and expertise to implement your suggestion in bug 494238, comment 4?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4433326</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2009-12-02 17:00:46 -0800</bug_when>
            <thetext>Mats could do it.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4433386</commentid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2009-12-02 17:32:33 -0800</bug_when>
            <thetext>Maybe that should go in a different bug and this bug should continue to be for the general fix?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4433421</commentid>
            <who name="Myk Melez [:myk] [@mykmelez]">myk</who>
            <bug_when>2009-12-02 17:50:55 -0800</bug_when>
            <thetext>(In reply to comment #99)
&gt; Maybe that should go in a different bug and this bug should continue to be for
&gt; the general fix?

Sure.  I filed bug 532569 on this.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4512879</commentid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2010-01-29 15:54:50 -0800</bug_when>
            <thetext>I don&apos;t think *this* bug blocks 1.9.3 now that bug 532569 has been separated, so setting the blocking nomination back to &quot;?&quot; (suggesting that it go to &quot;-&quot;).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527457</commentid>
              <attachid>425945</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-08 23:46:40 -0800</bug_when>
            <thetext>Created attachment 425945
Part 1: hookup view managers unconditionally

This is on top of the patch in bug 532569. It hooks up the view manager trees unconditionally.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527459</commentid>
              <attachid>425946</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-08 23:51:44 -0800</bug_when>
            <thetext>Created attachment 425946
Part 2: remove widgets from all subframes</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527478</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-09 00:37:45 -0800</bug_when>
            <thetext>These patches work surprisingly well. Part 1 breaks plugins (because plugins whose nearest enclosing widget doesn&apos;t correspond to the root of a view manager tree are hidden), but part 2 fixes them. The biggest obvious issue is that zooming is completely broken (as expected).

What remains to be done:
* fix zooming
* make sure that chrome elements that are over windowed plugins obscure those plugins instead of being obscured by them
* remove nsViewManager::EnableRefresh, which is probably going to cause subtle problems here
* carefully measure the increase in display list construction overhead for small paints in the content window, and if it&apos;s significant, figure out how to ameliorate it
* test accessibility carefully
* run tryserver tests and get them all to pass
* ?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527519</commentid>
            <who name="Marco Zehe (:MarcoZ)">marcozehe</who>
            <bug_when>2010-02-09 01:47:36 -0800</bug_when>
            <thetext>What we&apos;d need are tree tests for iframes I think. Alex, would you agree?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527524</commentid>
            <who name="alexander :surkov (:asurkov)">surkov.alexander</who>
            <bug_when>2010-02-09 02:05:00 -0800</bug_when>
            <thetext>(In reply to comment #105)
&gt; What we&apos;d need are tree tests for iframes I think. Alex, would you agree?

yes, iframe, browser and etc, anything related with nsDocAccessible and nsOuterDocAccessible.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527531</commentid>
            <who name="Marco Zehe (:MarcoZ)">marcozehe</who>
            <bug_when>2010-02-09 02:13:40 -0800</bug_when>
            <thetext>We do have tests for iframe (test_iframe.html in the &quot;trees&quot; folder), and also we do have test_tabbrowser.xul. Anything else this code touches?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527535</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-09 02:20:10 -0800</bug_when>
            <thetext>The main thing I&apos;m worried about is that AT tools might be distinguishing &quot;chrome&quot; native windows (HWNDs) from &quot;content&quot; native windows. With these patches, there&apos;s basically only one native window per toplevel window, which will look like a chrome window.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527544</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-09 02:33:37 -0800</bug_when>
            <thetext>In particular, we currently have code on Windows that sets the HWND class to MozillaUIWindowClass, MozillaContentWindowClass, or MozillaWindowClass. After these patches, that code becomes irrelevant; there is generally only one window, whose class will be MozillaUIWindowClass.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527546</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-09 02:34:41 -0800</bug_when>
            <thetext>Tryserver builds with those patches will show up here:
https://build.mozilla.org/tryserver-builds/rocallahan@mozilla.com-try-673a79f73633/</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527570</commentid>
            <who name="alexander :surkov (:asurkov)">surkov.alexander</who>
            <bug_when>2010-02-09 03:15:13 -0800</bug_when>
            <thetext>(In reply to comment #108)
&gt; The main thing I&apos;m worried about is that AT tools might be distinguishing
&gt; &quot;chrome&quot; native windows (HWNDs) from &quot;content&quot; native windows. With these
&gt; patches, there&apos;s basically only one native window per toplevel window, which
&gt; will look like a chrome window.

I think we should be fine once we got fit only top level windows have HWND. Marco, could ensure please if it doesn&apos;t affect on AT?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527576</commentid>
            <who name="Marco Zehe (:MarcoZ)">marcozehe</who>
            <bug_when>2010-02-09 03:30:34 -0800</bug_when>
            <thetext>I hope all screen readers have switched to using MSAA/IA2 to gain access to our windows. Otherwise, if they still use the algorithm of searching for MozillaContentWindowClass and then down to get to the acc tree, we might be in big trouble. I&apos;ll give all our supported ATs a spin with the try server builds.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4527689</commentid>
            <who name="Marco Zehe (:MarcoZ)">marcozehe</who>
            <bug_when>2010-02-09 06:02:42 -0800</bug_when>
            <thetext>The Windows try server build crashes upon launch when NVDA tries to access it. I don&apos;t get Crash Reporter since try is built without symbols, but the crash is 100% reproducible. Have NVDA running and launch the build, and it will crash.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4528131</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-09 10:50:27 -0800</bug_when>
            <thetext>The try server builds do have symbols available via the symbol server.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4538508</commentid>
            <who name="Marco Zehe (:MarcoZ)">marcozehe</who>
            <bug_when>2010-02-16 11:24:58 -0800</bug_when>
            <thetext>In addition, using JAWS, I get the same reproducible crash. So it&apos;s not dependent on NVDA alone.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4538674</commentid>
              <attachid>427177</attachid>
            <who name="David Bolter [:davidb] (NeedInfo me for attention)">dbolter</who>
            <bug_when>2010-02-16 12:37:41 -0800</bug_when>
            <thetext>Created attachment 427177
crash stack

(In reply to comment #114)
&gt; The try server builds do have symbols available via the symbol server.

Sorry for the delay. I tried this today and it crashes for me on startup (windows 7) with no screen reader. Stack attached. Ping me anytime to try a new build or get more debugging info. BTW the patches don&apos;t apply cleanly on trunk for me.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4538726</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-02-16 12:59:48 -0800</bug_when>
            <thetext>Rob, looks like tab previews need to be retooled for the post-child-widgets world...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4599476</commentid>
            <who name="David Bolter [:davidb] (NeedInfo me for attention)">dbolter</who>
            <bug_when>2010-03-23 11:13:41 -0700</bug_when>
            <thetext>(In reply to comment #115)
&gt; In addition, using JAWS, I get the same reproducible crash. So it&apos;s not
&gt; dependent on NVDA alone.

Marco, can you file a dependency a11y bug for this one?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4731363</commentid>
              <attachid>449631</attachid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2010-06-07 08:11:58 -0700</bug_when>
            <thetext>Created attachment 449631
Testcase for iframe overflowing when scrolled

I cannot reproduce the wrong behaviour from comment 61 anymore with the latest trunk. However I see an iframe with type=&quot;content&quot; still on top of other elements when a surrounding container gets scrolled.

The new testcase should show this when loaded within a chrome environment. Simply scroll down the lower area. The white content iframe is still visible on top of the above red container while the non content iframe (and the labels) gets hidden as expected.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4731367</commentid>
              <attachid>449633</attachid>
            <who name="Daniel Kirsch">daniel</who>
            <bug_when>2010-06-07 08:14:59 -0700</bug_when>
            <thetext>Created attachment 449633
Screenshot of testcase iframe overflowing when scrolled</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4757698</commentid>
            <who name="Damon Sicore (:damons)">dsicore</who>
            <bug_when>2010-06-21 16:28:21 -0700</bug_when>
            <thetext>After discussing this with Johnath and dbaron, nothing for beta 1 depends on this on the Firefox side.  Bumping to beta 2.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4765766</commentid>
              <attachid>453999</attachid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-06-25 04:18:41 -0700</bug_when>
            <thetext>Created attachment 453999
Part 1 refreshed

Updated to trunk.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4769024</commentid>
            <who name="Oleg Romashin (:romaxa)">romaxa</who>
            <bug_when>2010-06-27 10:12:16 -0700</bug_when>
            <thetext>Playing with last 2 patches, and have this output in recursive loop
###!!! ASSERTION: Root view had a parent, but it has the same view manager: &apos;mRootViewManager != this&apos;, file view/src/nsViewManager.cpp, line 182</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4769128</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-06-27 12:35:42 -0700</bug_when>
            <thetext>I&apos;ve not seen that. Do you have steps to reproduce or a stack of the assertion?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4769490</commentid>
              <attachid>454424</attachid>
            <who name="Oleg Romashin (:romaxa)">romaxa</who>
            <bug_when>2010-06-27 20:29:04 -0700</bug_when>
            <thetext>Created attachment 454424
Backtrace with accertion log

testing on m-c 46301:911af4c07fd4, + jimm changes enabled for linux build:
DocumentViewerImpl::MakeWindow
Also applied part1/2 patches from this patch.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4769497</commentid>
              <attachid>454426</attachid>
            <who name="Oleg Romashin (:romaxa)">romaxa</who>
            <bug_when>2010-06-27 20:36:23 -0700</bug_when>
            <thetext>Created attachment 454426
all my changes against 46301:911af4c07fd4 m-c</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4774773</commentid>
              <attachid>454426</attachid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-06-29 23:53:17 -0700</bug_when>
            <thetext>Comment on attachment 454426
all my changes against 46301:911af4c07fd4 m-c

Marking this obsolete since it&apos;s not really part of this bug.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4776597</commentid>
              <attachid>455299</attachid>
            <who name="Jim Mathies [:jimm]">jmathies</who>
            <bug_when>2010-06-30 16:05:30 -0700</bug_when>
            <thetext>Created attachment 455299
patch post 513162

No need to check for a container view in the parent widget anymore.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4781749</commentid>
            <who name="Oleg Romashin (:romaxa)">romaxa</who>
            <bug_when>2010-07-04 03:29:20 -0700</bug_when>
            <thetext>
&gt; patch post 513162
is this patch replacing  &quot;Part 1 refreshed&quot; or additional? changes seems overlapping each other</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4797790</commentid>
            <who name="Justin Dolske [:Dolske]">jdinbox</who>
            <bug_when>2010-07-15 15:22:14 -0700</bug_when>
            <thetext>Is this still planned to land for beta 2 (which freezes Monday)?

Is the tiny patch from comment 128 all that&apos;s needed now, or are some of the other patches here (and in dependent bugs) still needed?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4797792</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-07-15 15:24:48 -0700</bug_when>
            <thetext>This will not make beta 2. All the dependent bugs are still needed, plus some more that aren&apos;t filed yet.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4804129</commentid>
            <who name="">u88484</who>
            <bug_when>2010-07-19 15:11:12 -0700</bug_when>
            <thetext>(In reply to comment #131)
&gt; This will not make beta 2. All the dependent bugs are still needed, plus some
&gt; more that aren&apos;t filed yet.

I tried the tryserver build listed at http://ftp.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/tnikkel@gmail.com-5385f18dfbc5/tryserver-win32/ and the fonts on the ftp pages look horrible as well as the colors.  See screenshot: http://img841.imageshack.us/img841/8617/82319408.png

Left side is tryserver build and right side is today&apos;s nightly build with the same profile for each.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4827256</commentid>
            <who name="Mike Beltzner [:beltzner, not reading bugmail]">mbeltzner</who>
            <bug_when>2010-07-29 12:29:52 -0700</bug_when>
            <thetext>Do we expect this to hit code freeze on Monday, Aug 2, 23:00 PT? From the number of dependencies I suspect not, but it was marked a b3 blocker 10 days ago.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4827270</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-07-29 12:32:23 -0700</bug_when>
            <thetext>Unfortunately this will not make beta 3 code freeze.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4829296</commentid>
            <who name="Mike Beltzner [:beltzner, not reading bugmail]">mbeltzner</who>
            <bug_when>2010-07-30 09:33:56 -0700</bug_when>
            <thetext>Moving to betaN for now, but roc/dbaron, we need to figure out how and when we&apos;ll contain this fix.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4836803</commentid>
              <attachid>462530</attachid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-03 14:39:52 -0700</bug_when>
            <thetext>Created attachment 462530
part 1.1 - update part 1 to deal with bug 513162

This is jimm&apos;s change applied on top of part 1 so that we can separate it out and get review.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4836912</commentid>
              <attachid>453999</attachid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-03 15:24:34 -0700</bug_when>
            <thetext>Comment on attachment 453999
Part 1 refreshed

I guess these never got reviewed.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4846067</commentid>
              <attachid>425946</attachid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2010-08-06 18:46:57 -0700</bug_when>
            <thetext>Comment on attachment 425946
Part 2: remove widgets from all subframes

r=dbaron</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4846069</commentid>
              <attachid>453999</attachid>
            <who name="David Baron :dbaron: (⌚️UTC-5, no longer working on Mozilla)">dbaron</who>
            <bug_when>2010-08-06 18:49:18 -0700</bug_when>
            <thetext>Comment on attachment 453999
Part 1 refreshed

r=dbaron</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4849949</commentid>
            <who name="Vladimir Vukicevic [:vlad] [:vladv] (needinfo me, slow to respond)">vladimir</who>
            <bug_when>2010-08-09 14:41:11 -0700</bug_when>
            <thetext>Note, both fennec and desktop would really like this, but right now this breaks fennec due to 577579.  That bug should probably be fixed at the same time this lands.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4852415</commentid>
            <who name="Vladimir Vukicevic [:vlad] [:vladv] (needinfo me, slow to respond)">vladimir</who>
            <bug_when>2010-08-10 12:48:12 -0700</bug_when>
            <thetext>part 1 rotted again, looks like</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4852879</commentid>
              <attachid>464587</attachid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-10 14:44:48 -0700</bug_when>
            <thetext>Created attachment 464587
Part 1 refreshed</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4858167</commentid>
            <who name="Mike Beltzner [:beltzner, not reading bugmail]">mbeltzner</who>
            <bug_when>2010-08-12 11:26:23 -0700</bug_when>
            <thetext>roc: I think that this needs to block b5; agree?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4858628</commentid>
            <who name="Aza Raskin [:aza]">azaaza</who>
            <bug_when>2010-08-12 14:09:45 -0700</bug_when>
            <thetext>For what it is worth, this bug also blocks hardware acceleration of the kinds of animations we use in Tab Candy (bug 564978) and we&apos;d love to see it in b5.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4859170</commentid>
            <who name="Robert O&apos;Callahan (:roc) (email my personal email if necessary)">roc</who>
            <bug_when>2010-08-12 17:19:20 -0700</bug_when>
            <thetext>(In reply to comment #143)
&gt; roc: I think that this needs to block b5; agree?

Yes.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4861057</commentid>
              <attachid>465752</attachid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-13 11:28:39 -0700</bug_when>
            <thetext>Created attachment 465752
Part 2 refreshed</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4870731</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-17 19:50:27 -0700</bug_when>
            <thetext>Latest try server builds are at http://ftp.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/tnikkel@gmail.com-f9eb580dd56b/</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4870805</commentid>
            <who name="Matheus Kerschbaum">matjk7</who>
            <bug_when>2010-08-17 21:09:11 -0700</bug_when>
            <thetext>(In reply to comment #147)
&gt; Latest try server builds are at
&gt; http://ftp.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/tnikkel@gmail.com-f9eb580dd56b/

I noticed several regressions with this build (some fonts are aliased, smooth scrolling is broken, scrolling on some pages can cause rendering artifacts..), should I file individual bugs and mark them as blocking this one?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4870874</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-17 22:06:41 -0700</bug_when>
            <thetext>(In reply to comment #148)
&gt; I noticed several regressions with this build (some fonts are aliased, smooth
&gt; scrolling is broken, scrolling on some pages can cause rendering artifacts..),
&gt; should I file individual bugs and mark them as blocking this one?

Yes please.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4876004</commentid>
              <attachid>467516</attachid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-19 13:04:12 -0700</bug_when>
            <thetext>Created attachment 467516
Part 2 refreshed</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4879411</commentid>
            <who name="Chris Jones [:cjones] inactive; ni?/f?/r? if you need me">cjones.bugs</who>
            <bug_when>2010-08-20 16:43:37 -0700</bug_when>
            <thetext>Mostly note to self: I landed these patches on projects/cedar temporarily so that fennec+layers work can continue in parallel.  I&apos;m going to back them out when this lands on m-c.

http://hg.mozilla.org/projects/cedar/rev/d9181da95392
http://hg.mozilla.org/projects/cedar/rev/6d16789c6aeb
http://hg.mozilla.org/projects/cedar/rev/d28c105c1d32</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4883705</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-23 12:24:52 -0700</bug_when>
            <thetext>Latest try server build: http://ftp.mozilla.org/pub/mozilla.org/firefox/tryserver-builds/tnikkel@gmail.com-cf64eea45e07/</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4883776</commentid>
              <attachid>468409</attachid>
            <who name="Wes Kocher (:KWierso) (Not reading bugmail; email directly if needed)">kwierso</who>
            <bug_when>2010-08-23 12:50:30 -0700</bug_when>
            <thetext>Created attachment 468409
screenshot of the problem

With this tryserver build, on Windows 7, if I middle-click on a page and scroll up or down, a piece of the page gets pulled with the &quot;scroll&quot; icon.
The piece of the page that gets pulled with the scroll icon stays on the page after you click out of scroll mode, but goes away when you scroll on the page with the mousewheel or keyboard, so I guess triggering a repaint fixes it.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4897662</commentid>
            <who name="Leman Bennett [Omega]">lh.bennett</who>
            <bug_when>2010-08-27 23:45:32 -0700</bug_when>
            <thetext>(In reply to comment #153)
&gt; Created attachment 468409 [details]
&gt; screenshot of the problem
&gt; 
&gt; With this tryserver build, on Windows 7, if I middle-click on a page and scroll
&gt; up or down, a piece of the page gets pulled with the &quot;scroll&quot; icon.
&gt; The piece of the page that gets pulled with the scroll icon stays on the page
&gt; after you click out of scroll mode, but goes away when you scroll on the page
&gt; with the mousewheel or keyboard, so I guess triggering a repaint fixes it.

That&apos;s Bug 588403</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4897663</commentid>
            <who name="Leman Bennett [Omega]">lh.bennett</who>
            <bug_when>2010-08-27 23:47:10 -0700</bug_when>
            <thetext>Disregard, misread the date.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4898703</commentid>
            <who name="Bobby Holley (:bholley)">bholley</who>
            <bug_when>2010-08-28 17:59:42 -0700</bug_when>
            <thetext>It appears that this landed? I noticed the effects in the latest nightly.

part 1: http://hg.mozilla.org/mozilla-central/rev/ffacf623a9df
part 1.1: http://hg.mozilla.org/mozilla-central/rev/687b70fea4d0
part 2: http://hg.mozilla.org/mozilla-central/rev/7804b5cf4313

Should this be resolved fixed?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4898705</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-08-28 18:03:27 -0700</bug_when>
            <thetext>Yes, this landed. I haven&apos;t had a spare moment in order to mark all the bugs resolved and paste the changeset links yet.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4939330</commentid>
            <who name="CruNcher">nvidiadx</who>
            <bug_when>2010-09-14 16:52:42 -0700</bug_when>
            <thetext>There is some heavy thing going on 

http://forums.mozillazine.org/viewtopic.php?f=23&amp;t=1990331

http://img801.imageshack.us/img801/566/namorokafine.png    (Namoroka Nightly)

http://img831.imageshack.us/img831/6941/minefieldprob.png (Minefield Nightly and starting with Beta 2/ Beta 1 is ok no Kernel Explosion visible)

currently this site http://hcm.24h.com.vn/ almost kills Gecko 2.0b it stalls the GUI because of the Windows Kernel Peaking</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4940073</commentid>
            <who name="Gábor Stefanik">netrolller.3d</who>
            <bug_when>2010-09-14 23:10:42 -0700</bug_when>
            <thetext>That&apos;s probably something else - this landed in beta 5.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4970690</commentid>
            <who name="Marco Zehe (:MarcoZ)">marcozehe</who>
            <bug_when>2010-09-27 23:52:01 -0700</bug_when>
            <thetext>In the aftermatt of this bug, I received a question on my blog: http://www.marcozehe.de/2010/09/23/whats-up-with-all-those-windows/comment-page-1/#comment-63851
Basically, the developer wants to know how he can find the sidebar from inside an XPCOM extension now that we&apos;ve taken away the hwnd for it. Can someone more knowledgeable than me help out here? Thanks!</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <commentid>4970709</commentid>
            <who name="Timothy Nikkel (:tnikkel)">tnikkel</who>
            <bug_when>2010-09-28 00:02:59 -0700</bug_when>
            <thetext>I think file a new bug and get that commenter on the bug and we can figure out what exactly he needs and we can map out how to get it with existing APIs or what API we need to add to do that.</thetext>
          </long_desc>

          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130172</attachid>
            <date>2003-08-21 06:48:45 -0700</date>
            <delta_ts>2005-08-03 21:47:21 -0700</delta_ts>
            <desc>Untested patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>2547</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IGNvbnRlbnQvYmFzZS9zcmMvbnNEb2N1bWVudFZpZXdlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS
Q1MgZmlsZTogL2N2c3Jvb3QvbW96aWxsYS9jb250ZW50L2Jhc2Uvc3JjL25zRG9jdW1lbnRWaWV3
ZXIuY3BwLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjMzOApkaWZmIC11IC10IC1wIC02IC1yMS4z
MzggbnNEb2N1bWVudFZpZXdlci5jcHAKLS0tIGNvbnRlbnQvYmFzZS9zcmMvbnNEb2N1bWVudFZp
ZXdlci5jcHAJNiBBdWcgMjAwMyAwMzowNjo0MyAtMDAwMAkxLjMzOAorKysgY29udGVudC9iYXNl
L3NyYy9uc0RvY3VtZW50Vmlld2VyLmNwcAkyMSBBdWcgMjAwMyAxMzo0ODowNyAtMDAwMApAQCAt
MTgxMCw0OCArMTgxMCwxMiBAQCBEb2N1bWVudFZpZXdlckltcGw6Ok1ha2VXaW5kb3cobnNJV2lk
Z2V0CiAKICAgICBpZiAoZGF0YSkgewogICAgICAgQ2FsbFF1ZXJ5SW50ZXJmYWNlKGRhdGEsICZj
b250YWluZXJWaWV3KTsKICAgICB9CiAgIH0KIAotICBpZiAoY29udGFpbmVyVmlldykgewotICAg
IC8vIHNlZSBpZiB0aGUgY29udGFpbmVyVmlldyBoYXMgYWxyZWFkeSBiZWVuIGhvb2tlZCBpbnRv
IGEgZm9yZWlnbiB2aWV3IG1hbmFnZXIgaGllcmFyY2h5Ci0gICAgLy8gaWYgaXQgaGFzLCB0aGVu
IHdlIGhhdmUgdG8gaG9vayBpbnRvIHRoZSBoaWVyYXJjaHkgdG9vIG90aGVyd2lzZSBiYWQgdGhp
bmdzIHdpbGwgaGFwcGVuLgotICAgIG5zSVZpZXdNYW5hZ2VyKiBjb250YWluZXJWTSA9IGNvbnRh
aW5lclZpZXctPkdldFZpZXdNYW5hZ2VyKCk7Ci0gICAgbnNJVmlldyogcFZpZXcgPSBjb250YWlu
ZXJWaWV3OwotICAgIGRvIHsKLSAgICAgIHBWaWV3ID0gcFZpZXctPkdldFBhcmVudCgpOwotICAg
IH0gd2hpbGUgKHBWaWV3ICYmIHBWaWV3LT5HZXRWaWV3TWFuYWdlcigpID09IGNvbnRhaW5lclZN
KTsKLQotICAgIGlmICghcFZpZXcpIHsKLSAgICAgIC8vIE9LLCBzbyB0aGUgY29udGFpbmVyIGlz
IG5vdCBhbHJlYWR5IGhvb2tlZCB1cCBpbnRvIGEgZm9yZWlnbiB2aWV3IG1hbmFnZXIgaGllcmFy
Y2h5LgotICAgICAgLy8gVGhhdCBtZWFucyB3ZSBjYW4gY2hvb3NlIG5vdCB0byBob29rIG91cnNl
bHZlcyB1cC4KLSAgICAgIC8vCi0gICAgICAvLyBJZiB0aGUgcGFyZW50IGNvbnRhaW5lciBpcyBh
IGNocm9tZSBzaGVsbCwgb3IgYSBmcmFtZXNldCwgdGhlbiB3ZSB3b24ndCBob29rIGludG8gaXRz
IHZpZXcKLSAgICAgIC8vIHRyZWUuIFRoaXMgd2lsbCBpbXByb3ZlIHBlcmZvcm1hbmNlIGEgbGl0
dGxlIGJpdCAoZXNwZWNpYWxseSBnaXZlbiBzY3JvbGxpbmcvcGFpbnRpbmcgcGVyZiBidWdzKQot
ICAgICAgLy8gYnV0IGlzIHJlYWxseSBqdXN0IGZvciBwZWFjZSBvZiBtaW5kLiBUaGlzIGNoZWNr
IGNhbiBiZSByZW1vdmVkIGlmIHdlIHdhbnQgdG8gc3VwcG9ydCBmYW5jeQotICAgICAgLy8gY2hy
b21lIGVmZmVjdHMgbGlrZSB0cmFuc3BhcmVudCBjb250cm9scyBmbG9hdGluZyBvdmVyIGNvbnRl
bnQsIHRyYW5zcGFyZW50IFdlYiBicm93c2VycywgYW5kCi0gICAgICAvLyB0aGluZ3MgbGlrZSB0
aGF0LCBhbmQgdGhlIHBlcmYgYnVncyBhcmUgZml4ZWQuCi0gICAgICBuc0NPTVB0cjxuc0lEb2NT
aGVsbFRyZWVJdGVtPiBjb250YWluZXIoZG9fUXVlcnlJbnRlcmZhY2UobUNvbnRhaW5lcikpOwot
ICAgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gcGFyZW50Q29udGFpbmVyOwotICAg
ICAgUFJJbnQzMiBpdGVtVHlwZTsKLSAgICAgIGlmIChuc251bGwgPT0gY29udGFpbmVyCi0gICAg
ICAgICAgfHwgTlNfRkFJTEVEKGNvbnRhaW5lci0+R2V0UGFyZW50KGdldHRlcl9BZGRSZWZzKHBh
cmVudENvbnRhaW5lcikpKQotICAgICAgICAgIHx8IG5zbnVsbCA9PSBwYXJlbnRDb250YWluZXIK
LSAgICAgICAgICB8fCBOU19GQUlMRUQocGFyZW50Q29udGFpbmVyLT5HZXRJdGVtVHlwZSgmaXRl
bVR5cGUpKQotICAgICAgICAgIHx8IGl0ZW1UeXBlICE9IG5zSURvY1NoZWxsVHJlZUl0ZW06OnR5
cGVDb250ZW50KSB7Ci0gICAgICAgIGNvbnRhaW5lclZpZXcgPSBuc251bGw7Ci0gICAgICB9IGVs
c2UgewotICAgICAgICBuc0NPTVB0cjxuc0lXZWJTaGVsbD4gd2ViU2hlbGwoZG9fUXVlcnlJbnRl
cmZhY2UocGFyZW50Q29udGFpbmVyKSk7Ci0gICAgICAgIGlmIChuc251bGwgPT0gd2ViU2hlbGwg
fHwgSXNXZWJTaGVsbEFGcmFtZVNldCh3ZWJTaGVsbCkpIHsKLSAgICAgICAgICBjb250YWluZXJW
aWV3ID0gbnNudWxsOwotICAgICAgICB9Ci0gICAgICB9Ci0gICAgfQotICB9Ci0KICAgcnYgPSB2
aWV3LT5Jbml0KG1WaWV3TWFuYWdlciwgdGJvdW5kcywgY29udGFpbmVyVmlldyk7CiAgIGlmIChO
U19GQUlMRUQocnYpKQogICAgIHJldHVybiBydjsKIAogICBuc0NPTVB0cjxuc0lEb2NTaGVsbFRy
ZWVJdGVtPiB0cmVlSXRlbShkb19RdWVyeUludGVyZmFjZShtQ29udGFpbmVyKSk7CiAgIE5TX0VO
U1VSRV9UUlVFKHRyZWVJdGVtLCBOU19FUlJPUl9GQUlMVVJFKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191565</attachid>
            <date>2005-08-03 21:47:20 -0700</date>
            <delta_ts>2005-12-15 20:01:18 -0800</delta_ts>
            <desc>fix</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>12374</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IGxheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp
bGU6IC9ob21lL3JvY2FsbGFoYW4vbW96aWxsYS1jdnMtbWlycm9yL21vemlsbGEvbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDQxCmRpZmYg
LXUgLXQgLXAgLTEgLTIgLXIxLjQ0MSBuc0RvY3VtZW50Vmlld2VyLmNwcAotLS0gbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAJMzAgSnVsIDIwMDUgMjA6NTc6MDcgLTAwMDAJMS40NDEK
KysrIGxheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwCTQgQXVnIDIwMDUgMDU6MDI6NDEg
LTAwMDAKQEAgLTIxMDEsNTUgKzIxMDEsMjQgQEAgRG9jdW1lbnRWaWV3ZXJJbXBsOjpNYWtlV2lu
ZG93KG5zSVdpZGdldAogICAvLyBSZXNldCB0aGUgYm91bmRzIG9mZnNldCBzbyB0aGUgcm9vdCB2
aWV3IGlzIHNldCB0byAwLDAuIFRoZQogICAvLyBvZmZzZXQgaXMgc3BlY2lmaWVkIGluIG5zSVZp
ZXdNYW5hZ2VyOjpJbml0IGFib3ZlLgogICAvLyBCZXNpZGVzLCBsYXlvdXQgd2lsbCByZXNldCB0
aGUgcm9vdCB2aWV3IHRvICgwLDApIGR1cmluZyByZWZsb3csCiAgIC8vIHNvIGNoYW5naW5nIGl0
IHRvIDAsMCBlbGltaW5hdGVzIHBsYWNpbmcgdGhlIHJvb3QgdmlldyBpbiB0aGUKICAgLy8gd3Jv
bmcgcGxhY2UgaW5pdGlhbGx5LgogICB0Ym91bmRzLnggPSAwOwogICB0Ym91bmRzLnkgPSAwOwog
CiAgIC8vIENyZWF0ZSBhIGNoaWxkIHdpbmRvdyBvZiB0aGUgcGFyZW50IHRoYXQgaXMgb3VyICJy
b290IHZpZXcvd2luZG93IgogICAvLyBpZiBhUGFyZW50V2lkZ2V0IGhhcyBhIHZpZXcsIHdlJ2xs
IGhvb2sgb3VyIHZpZXcgbWFuYWdlciB1cCB0byBpdHMgdmlldyB0cmVlCiAgIG5zSVZpZXcqIGNv
bnRhaW5lclZpZXcgPSBuc1ZpZXc6OkdldFZpZXdGb3IoYVBhcmVudFdpZGdldCk7CiAKLSAgaWYg
KGNvbnRhaW5lclZpZXcpIHsKLSAgICAvLyBzZWUgaWYgdGhlIGNvbnRhaW5lclZpZXcgaGFzIGFs
cmVhZHkgYmVlbiBob29rZWQgaW50byBhIGZvcmVpZ24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeQot
ICAgIC8vIGlmIGl0IGhhcywgdGhlbiB3ZSBoYXZlIHRvIGhvb2sgaW50byB0aGUgaGllcmFyY2h5
IHRvbyBvdGhlcndpc2UgYmFkIHRoaW5ncyB3aWxsIGhhcHBlbi4KLSAgICBuc0lWaWV3TWFuYWdl
ciogY29udGFpbmVyVk0gPSBjb250YWluZXJWaWV3LT5HZXRWaWV3TWFuYWdlcigpOwotICAgIG5z
SVZpZXcqIHBWaWV3ID0gY29udGFpbmVyVmlldzsKLSAgICBkbyB7Ci0gICAgICBwVmlldyA9IHBW
aWV3LT5HZXRQYXJlbnQoKTsKLSAgICB9IHdoaWxlIChwVmlldyAmJiBwVmlldy0+R2V0Vmlld01h
bmFnZXIoKSA9PSBjb250YWluZXJWTSk7Ci0KLSAgICBpZiAoIXBWaWV3KSB7Ci0gICAgICAvLyBP
Sywgc28gdGhlIGNvbnRhaW5lciBpcyBub3QgYWxyZWFkeSBob29rZWQgdXAgaW50byBhIGZvcmVp
Z24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeS4KLSAgICAgIC8vIFRoYXQgbWVhbnMgd2UgY2FuIGNo
b29zZSBub3QgdG8gaG9vayBvdXJzZWx2ZXMgdXAuCi0gICAgICAvLwotICAgICAgLy8gSWYgdGhl
IHBhcmVudCBjb250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgdGhlbiB3ZSB3b24ndCBob29rIGlu
dG8gaXRzIHZpZXcKLSAgICAgIC8vIHRyZWUuIFRoaXMgd2lsbCBpbXByb3ZlIHBlcmZvcm1hbmNl
IGEgbGl0dGxlIGJpdCAoZXNwZWNpYWxseSBnaXZlbiBzY3JvbGxpbmcvcGFpbnRpbmcgcGVyZiBi
dWdzKQotICAgICAgLy8gYnV0IGlzIHJlYWxseSBqdXN0IGZvciBwZWFjZSBvZiBtaW5kLiBUaGlz
IGNoZWNrIGNhbiBiZSByZW1vdmVkIGlmIHdlIHdhbnQgdG8gc3VwcG9ydCBmYW5jeQotICAgICAg
Ly8gY2hyb21lIGVmZmVjdHMgbGlrZSB0cmFuc3BhcmVudCBjb250cm9scyBmbG9hdGluZyBvdmVy
IGNvbnRlbnQsIHRyYW5zcGFyZW50IFdlYiBicm93c2VycywgYW5kCi0gICAgICAvLyB0aGluZ3Mg
bGlrZSB0aGF0LCBhbmQgdGhlIHBlcmYgYnVncyBhcmUgZml4ZWQuCi0gICAgICBuc0NPTVB0cjxu
c0lEb2NTaGVsbFRyZWVJdGVtPiBjb250YWluZXIoZG9fUXVlcnlSZWZlcmVudChtQ29udGFpbmVy
KSk7Ci0gICAgICBuc0NPTVB0cjxuc0lEb2NTaGVsbFRyZWVJdGVtPiBwYXJlbnRDb250YWluZXI7
Ci0gICAgICBQUkludDMyIGl0ZW1UeXBlOwotICAgICAgaWYgKG5zbnVsbCA9PSBjb250YWluZXIK
LSAgICAgICAgICB8fCBOU19GQUlMRUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJl
ZnMocGFyZW50Q29udGFpbmVyKSkpCi0gICAgICAgICAgfHwgbnNudWxsID09IHBhcmVudENvbnRh
aW5lcgotICAgICAgICAgIHx8IE5TX0ZBSUxFRChwYXJlbnRDb250YWluZXItPkdldEl0ZW1UeXBl
KCZpdGVtVHlwZSkpCi0gICAgICAgICAgfHwgaXRlbVR5cGUgIT0gbnNJRG9jU2hlbGxUcmVlSXRl
bTo6dHlwZUNvbnRlbnQpIHsKLSAgICAgICAgY29udGFpbmVyVmlldyA9IG5zbnVsbDsKLSAgICAg
IH0KLSAgICB9Ci0gIH0KLQogICAvLyBDcmVhdGUgYSB2aWV3CiAgIG5zSVZpZXcqIHZpZXcgPSBt
Vmlld01hbmFnZXItPkNyZWF0ZVZpZXcodGJvdW5kcywgY29udGFpbmVyVmlldyk7CiAgIGlmICgh
dmlldykKICAgICByZXR1cm4gTlNfRVJST1JfT1VUX09GX01FTU9SWTsKIAogICAvLyBwYXNzIGlu
IGEgbmF0aXZlIHdpZGdldCB0byBiZSB0aGUgcGFyZW50IHdpZGdldCBPTkxZIGlmIHRoZSB2aWV3
IGhpZXJhcmNoeSB3aWxsIHN0YW5kIGFsb25lLgogICAvLyBvdGhlcndpc2UgdGhlIHZpZXcgd2ls
bCBmaW5kIGl0cyBvd24gcGFyZW50IHdpZGdldCBhbmQgImRvIHRoZSByaWdodCB0aGluZyIgdG8K
ICAgLy8gZXN0YWJsaXNoIGEgcGFyZW50L2NoaWxkIHdpZGdldCByZWxhdGlvbnNoaXAKICAgcnYg
PSB2aWV3LT5DcmVhdGVXaWRnZXQoa1dpZGdldENJRCwgbnNudWxsLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb250YWluZXJWaWV3ICE9IG5zbnVsbCA/IG5zbnVsbCA6IGFQYXJlbnRXaWRn
ZXQtPkdldE5hdGl2ZURhdGEoTlNfTkFUSVZFX1dJREdFVCksCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFBSX1RSVUUsIFBSX0ZBTFNFKTsKICAgaWYgKE5TX0ZBSUxFRChydikpCkluZGV4OiB0
b29sa2l0L2NvbnRlbnQvd2lkZ2V0cy9icm93c2VyLnhtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAv
aG9tZS9yb2NhbGxhaGFuL21vemlsbGEtY3ZzLW1pcnJvci9tb3ppbGxhL3Rvb2xraXQvY29udGVu
dC93aWRnZXRzL2Jyb3dzZXIueG1sLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjY4CmRpZmYgLXUg
LXQgLXAgLTEgLTIgLXIxLjY4IGJyb3dzZXIueG1sCi0tLSB0b29sa2l0L2NvbnRlbnQvd2lkZ2V0
cy9icm93c2VyLnhtbAkyNSBKdWwgMjAwNSAyMjowOTozOCAtMDAwMAkxLjY4CisrKyB0b29sa2l0
L2NvbnRlbnQvd2lkZ2V0cy9icm93c2VyLnhtbAk0IEF1ZyAyMDA1IDA1OjAyOjQxIC0wMDAwCkBA
IC0zMDMsMjUgKzMwMywyNSBAQAogCiAgICAgICA8cHJvcGVydHkgbmFtZT0iY29udGVudERvY3Vt
ZW50IgogICAgICAgICAgICAgICAgIG9uZ2V0PSJyZXR1cm4gdGhpcy53ZWJOYXZpZ2F0aW9uLmRv
Y3VtZW50OyIKICAgICAgICAgICAgICAgICByZWFkb25seT0idHJ1ZSIvPgogCiAgICAgICA8cHJv
cGVydHkgbmFtZT0iY29udGVudFRpdGxlIgogICAgICAgICAgICAgICAgIG9uZ2V0PSJyZXR1cm4g
Q29tcG9uZW50cy5sb29rdXBNZXRob2QodGhpcy5jb250ZW50RG9jdW1lbnQsICd0aXRsZScpLmNh
bGwodGhpcy5jb250ZW50RG9jdW1lbnQpOyIKICAgICAgICAgICAgICAgICByZWFkb25seT0idHJ1
ZSIvPgogCiAgICAgICA8ZmllbGQgbmFtZT0ibVByZWZzIiByZWFkb25seT0idHJ1ZSI+CiAgICAg
ICAgIENvbXBvbmVudHMuY2xhc3Nlc1snQG1vemlsbGEub3JnL3ByZWZlcmVuY2VzLXNlcnZpY2U7
MSddCiAgICAgICAgICAgICAgICAgICAuZ2V0U2VydmljZShDb21wb25lbnRzLmludGVyZmFjZXMu
bnNJUHJlZlNlcnZpY2UpCi0gICAgICAgICAgICAgICAgICAuZ2V0QnJhbmNoKG51bGwpOworICAg
ICAgICAgICAgICAgICAgLmdldEJyYW5jaChudWxsKS5RdWVyeUludGVyZmFjZShDb21wb25lbnRz
LmludGVyZmFjZXMubnNJUHJlZkJyYW5jaEludGVybmFsKTsKICAgICAgIDwvZmllbGQ+CiAKICAg
ICAgIDxmaWVsZCBuYW1lPSJtQXRvbVNlcnZpY2UiIHJlYWRvbmx5PSJ0cnVlIj4KICAgICAgICAg
Q29tcG9uZW50cy5jbGFzc2VzWydAbW96aWxsYS5vcmcvYXRvbS1zZXJ2aWNlOzEnXQogICAgICAg
ICAgICAgICAgICAgLmdldFNlcnZpY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSUF0b21TZXJ2
aWNlKTsKICAgICAgIDwvZmllbGQ+CiAKICAgICAgIDxmaWVsZCBuYW1lPSJfbVN0ckJ1bmRsZSI+
bnVsbDwvZmllbGQ+CiAKICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJtU3RyQnVuZGxlIj4KICAgICAg
ICAgPGdldHRlcj4KICAgICAgICAgPCFbQ0RBVEFbCkBAIC01NjEsMjQgKzU2MSwyNyBAQAogICAg
ICAgICAgIGNhdGNoIChlKSB7CiAgICAgICAgICAgfQogICAgICAgICAgIHRyeSB7CiAgICAgICAg
ICAgICB2YXIgc2VjdXJpdHlVSSA9IHRoaXMuc2VjdXJpdHlVSTsKICAgICAgICAgICB9CiAgICAg
ICAgICAgY2F0Y2ggKGUpIHsKICAgICAgICAgICB9CiAKICAgICAgICAgICAvLyBMaXN0ZW4gZm9y
IGZpcnN0IGxvYWQgZm9yIGxhenkgYXR0YWNobWVudCB0byBmb3JtIGZpbGwgY29udHJvbGxlcgog
ICAgICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLCB0aGlzLm9uUGFnZVNo
b3csIHRydWUpOwogICAgICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigicGFnZWhpZGUiLCB0
aGlzLm9uUGFnZUhpZGUsIHRydWUpOwogICAgICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigi
RE9NUG9wdXBCbG9ja2VkIiwgdGhpcy5vblBvcHVwQmxvY2tlZCwgZmFsc2UpOworICAgICAgICAg
IAorICAgICAgICAgIG1QcmVmcy5hZGRPYnNlcnZlcigiYnJvd3Nlci5kaXNwbGF5LmJhY2tncm91
bmRfY29sb3IiLCB0aGlzLCBmYWxzZSk7CisgICAgICAgICAgdGhpcy5vYnNlcnZlKG51bGwsICJu
c1ByZWY6Y2hhbmdlZCIsICJicm93c2VyLmRpc3BsYXkuYmFja2dyb3VuZF9jb2xvciIpOwogICAg
ICAgICBdXT4KICAgICAgIDwvY29uc3RydWN0b3I+CiAgICAgICAKICAgICAgIDxkZXN0cnVjdG9y
PgogICAgICAgICA8IVtDREFUQVsKICAgICAgICAgICB0aGlzLmRlc3Ryb3koKTsKICAgICAgICAg
XV0+CiAgICAgICA8L2Rlc3RydWN0b3I+CiAKICAgICAgIDwhLS0gVGhpcyBpcyBuZWNlc3Nhcnkg
YmVjYXVzZSB0aGUgZGVzdHJ1Y3RvciBkb2Vzbid0IGFsd2F5cyBnZXQgY2FsbGVkIHdoZW4KICAg
ICAgICAgICAgd2UgYXJlIHJlbW92ZWQgZnJvbSBhIHRhYmJyb3dzZXIuIFRoaXMgd2lsbCBiZSBl
eHBsaWNpdGx5IGNhbGxlZCBieSB0YWJicm93c2VyIC0tPgogICAgICAgPG1ldGhvZCBuYW1lPSJk
ZXN0cm95Ij4KQEAgLTYwMSwzNCArNjA0LDQwIEBACiAgICAgICAgICAgICB0aGlzLm1EcmFnRHJv
cEhhbmRsZXIuZGV0YWNoKCk7CiAgICAgICAgICAgdGhpcy5tRHJhZ0Ryb3BIYW5kbGVyID0gbnVs
bDsKIAogICAgICAgICAgIHRoaXMuZGV0YWNoRm9ybUZpbGwoKTsKICAgICAgICAgICAKICAgICAg
ICAgICB0aGlzLnNlY3VyaXR5VUkgPSBudWxsOwogICAgICAgICAgIHRoaXMuX2Zhc3RGaW5kID0g
bnVsbDsKICAgICAgICAgICB0aGlzLl93ZWJCcm93c2VyRmluZCA9IG51bGw7CiAKICAgICAgICAg
ICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IiwgdGhpcy5vblBhZ2VTaG93LCB0
cnVlKTsKICAgICAgICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBhZ2VoaWRlIiwgdGhp
cy5vblBhZ2VIaWRlLCB0cnVlKTsKICAgICAgICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIo
IkRPTVBvcHVwQmxvY2tlZCIsIHRoaXMub25Qb3B1cEJsb2NrZWQsIHRydWUpOworICAgICAgICAg
IHRoaXMubVByZWZzLnJlbW92ZU9ic2VydmVyKCJicm93c2VyLmRpc3BsYXkuYmFja2dyb3VuZF9j
b2xvciIsIHRoaXMpOwogICAgICAgICAgIF1dPgogICAgICAgICA8L2JvZHk+CiAgICAgICA8L21l
dGhvZD4KICAgICAgIAogICAgICAgPG1ldGhvZCBuYW1lPSJvYnNlcnZlIj4KICAgICAgICAgPHBh
cmFtZXRlciBuYW1lPSJhU3ViamVjdCIvPgogICAgICAgICA8cGFyYW1ldGVyIG5hbWU9ImFUb3Bp
YyIvPgogICAgICAgICA8cGFyYW1ldGVyIG5hbWU9ImFTdGF0ZSIvPgogICAgICAgICA8Ym9keT4K
ICAgICAgICAgICA8IVtDREFUQVsKKyAgICAgICAgICAgIGlmIChhVG9waWMgPT0gIm5zUHJlZjpj
aGFuZ2VkIiAmJiBhU3RhdGUgPT0gImJyb3dzZXIuZGlzcGxheS5iYWNrZ3JvdW5kX2NvbG9yIikg
eworICAgICAgICAgICAgICB0aGlzLnN0eWxlLmJhY2tncm91bmRDb2xvciA9IHRoaXMubVByZWZz
LmdldENoYXJQcmVmKCJicm93c2VyLmRpc3BsYXkuYmFja2dyb3VuZF9jb2xvciIpOworICAgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKICAgICAgICAgICAg
IGlmIChhVG9waWMgIT0gImJyb3dzZXI6cHVyZ2Utc2Vzc2lvbi1oaXN0b3J5IikKICAgICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAKICAgICAgICAgICAgIC8vIHBsYWNlIHRoZSBl
bnRyeSBhdCBjdXJyZW50IGluZGV4IGF0IHRoZSBlbmQgb2YgdGhlIGhpc3RvcnkgbGlzdCwgc28g
aXQgd29uJ3QgZ2V0IHJlbW92ZWQKICAgICAgICAgICAgIGlmICh0aGlzLnNlc3Npb25IaXN0b3J5
LmluZGV4IDwgdGhpcy5zZXNzaW9uSGlzdG9yeS5jb3VudCAtIDEpIHsKICAgICAgICAgICAgICAg
dmFyIGluZGV4RW50cnkgPSB0aGlzLnNlc3Npb25IaXN0b3J5LmdldEVudHJ5QXRJbmRleCh0aGlz
LnNlc3Npb25IaXN0b3J5LmluZGV4LCBmYWxzZSk7CiAgICAgICAgICAgICAgIHRoaXMuc2Vzc2lv
bkhpc3RvcnkuUXVlcnlJbnRlcmZhY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSVNIaXN0b3J5
SW50ZXJuYWwpOwogICAgICAgICAgICAgICBpbmRleEVudHJ5LlF1ZXJ5SW50ZXJmYWNlKENvbXBv
bmVudHMuaW50ZXJmYWNlcy5uc0lTSEVudHJ5KTsKICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9u
SGlzdG9yeS5hZGRFbnRyeShpbmRleEVudHJ5LCB0cnVlKTsKICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIAogICAgICAgICAgICAgdmFyIHB1cmdlID0gdGhpcy5zZXNzaW9uSGlzdG9yeS5jb3Vu
dDsKSW5kZXg6IHhwZmUvZ2xvYmFsL3Jlc291cmNlcy9jb250ZW50L2JpbmRpbmdzL2Jyb3dzZXIu
eG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL3JvY2FsbGFoYW4vbW96aWxsYS1jdnMtbWly
cm9yL21vemlsbGEveHBmZS9nbG9iYWwvcmVzb3VyY2VzL2NvbnRlbnQvYmluZGluZ3MvYnJvd3Nl
ci54bWwsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDAKZGlmZiAtdSAtdCAtcCAtMSAtMiAtcjEu
NDAgYnJvd3Nlci54bWwKLS0tIHhwZmUvZ2xvYmFsL3Jlc291cmNlcy9jb250ZW50L2JpbmRpbmdz
L2Jyb3dzZXIueG1sCTI4IEp1bCAyMDA1IDEzOjQ0OjIzIC0wMDAwCTEuNDAKKysrIHhwZmUvZ2xv
YmFsL3Jlc291cmNlcy9jb250ZW50L2JpbmRpbmdzL2Jyb3dzZXIueG1sCTQgQXVnIDIwMDUgMDU6
MDI6NTUgLTAwMDAKQEAgLTMzLDI1ICszMywyNSBAQAogICAgLSBkZWNpc2lvbiBieSBkZWxldGlu
ZyB0aGUgcHJvdmlzaW9ucyBhYm92ZSBhbmQgcmVwbGFjZSB0aGVtIHdpdGggdGhlIG5vdGljZQog
ICAgLSBhbmQgb3RoZXIgcHJvdmlzaW9ucyByZXF1aXJlZCBieSB0aGUgR1BMIG9yIHRoZSBMR1BM
LiBJZiB5b3UgZG8gbm90IGRlbGV0ZQogICAgLSB0aGUgcHJvdmlzaW9ucyBhYm92ZSwgYSByZWNp
cGllbnQgbWF5IHVzZSB5b3VyIHZlcnNpb24gb2YgdGhpcyBmaWxlIHVuZGVyCiAgICAtIHRoZSB0
ZXJtcyBvZiBhbnkgb25lIG9mIHRoZSBNUEwsIHRoZSBHUEwgb3IgdGhlIExHUEwuCiAgICAtCiAg
ICAtICoqKioqIEVORCBMSUNFTlNFIEJMT0NLICoqKioqIC0tPgogCiA8YmluZGluZ3MgaWQ9ImJy
b3dzZXJCaW5kaW5ncyIKICAgICAgICAgICB4bWxucz0iaHR0cDovL3d3dy5tb3ppbGxhLm9yZy94
YmwiCiAgICAgICAgICAgeG1sbnM6eHVsPSJodHRwOi8vd3d3Lm1vemlsbGEub3JnL2tleW1hc3Rl
ci9nYXRla2VlcGVyL3RoZXJlLmlzLm9ubHkueHVsIj4KIAogICA8YmluZGluZyBpZD0iYnJvd3Nl
ciIgZXh0ZW5kcz0ieHVsOmJyb3dzZXIiPgotICAgIDxpbXBsZW1lbnRhdGlvbiB0eXBlPSJhcHBs
aWNhdGlvbi94LWphdmFzY3JpcHQiIGltcGxlbWVudHM9Im5zSUFjY2Vzc2libGVQcm92aWRlciI+
CisgICAgPGltcGxlbWVudGF0aW9uIHR5cGU9ImFwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCIgaW1w
bGVtZW50cz0ibnNJQWNjZXNzaWJsZVByb3ZpZGVyLCBuc0lPYnNlcnZlciI+CiAgICAgICA8cHJv
cGVydHkgbmFtZT0iYWNjZXNzaWJsZSI+CiAgICAgICAgIDxnZXR0ZXI+CiAgICAgICAgICAgPCFb
Q0RBVEFbCiAgICAgICAgICAgICB2YXIgYWNjU2VydmljZSA9IENvbXBvbmVudHMuY2xhc3Nlc1si
QG1vemlsbGEub3JnL2FjY2Vzc2liaWxpdHlTZXJ2aWNlOzEiXS5nZXRTZXJ2aWNlKENvbXBvbmVu
dHMuaW50ZXJmYWNlcy5uc0lBY2Nlc3NpYmlsaXR5U2VydmljZSk7CiAgICAgICAgICAgICByZXR1
cm4gYWNjU2VydmljZS5jcmVhdGVPdXRlckRvY0FjY2Vzc2libGUodGhpcyk7CiAgICAgICAgICAg
XV0+CiAgICAgICAgIDwvZ2V0dGVyPgogICAgICAgPC9wcm9wZXJ0eT4KIAogICAgICAgPHByb3Bl
cnR5IG5hbWU9ImNhbkdvQmFjayIKICAgICAgICAgICAgICAgICBvbmdldD0icmV0dXJuIHRoaXMu
d2ViTmF2aWdhdGlvbi5jYW5Hb0JhY2s7IgogICAgICAgICAgICAgICAgIHJlYWRvbmx5PSJ0cnVl
Ii8+CkBAIC0yNDcsMjUgKzI0NywyNSBAQAogCiAgICAgICA8cHJvcGVydHkgbmFtZT0iY29udGVu
dERvY3VtZW50IgogICAgICAgICAgICAgICAgIG9uZ2V0PSJyZXR1cm4gdGhpcy53ZWJOYXZpZ2F0
aW9uLmRvY3VtZW50OyIKICAgICAgICAgICAgICAgICByZWFkb25seT0idHJ1ZSIvPgogCiAgICAg
ICA8cHJvcGVydHkgbmFtZT0iY29udGVudFRpdGxlIgogICAgICAgICAgICAgICAgIG9uZ2V0PSJy
ZXR1cm4gdGhpcy5jb250ZW50RG9jdW1lbnQudGl0bGU7IgogICAgICAgICAgICAgICAgIHJlYWRv
bmx5PSJ0cnVlIi8+CiAKICAgICAgIDxmaWVsZCBuYW1lPSJtUHJlZnMiIHJlYWRvbmx5PSJ0cnVl
Ij4KICAgICAgICAgQ29tcG9uZW50cy5jbGFzc2VzWydAbW96aWxsYS5vcmcvcHJlZmVyZW5jZXMt
c2VydmljZTsxJ10KICAgICAgICAgICAgICAgICAgIC5nZXRTZXJ2aWNlKENvbXBvbmVudHMuaW50
ZXJmYWNlcy5uc0lQcmVmU2VydmljZSkKLSAgICAgICAgICAgICAgICAgIC5nZXRCcmFuY2gobnVs
bCk7CisgICAgICAgICAgICAgICAgICAuZ2V0QnJhbmNoKG51bGwpLlF1ZXJ5SW50ZXJmYWNlKENv
bXBvbmVudHMuaW50ZXJmYWNlcy5uc0lQcmVmQnJhbmNoSW50ZXJuYWwpOwogICAgICAgPC9maWVs
ZD4KIAogICAgICAgPGZpZWxkIG5hbWU9Im1BdG9tU2VydmljZSIgcmVhZG9ubHk9InRydWUiPgog
ICAgICAgICBDb21wb25lbnRzLmNsYXNzZXNbJ0Btb3ppbGxhLm9yZy9hdG9tLXNlcnZpY2U7MSdd
CiAgICAgICAgICAgICAgICAgICAuZ2V0U2VydmljZShDb21wb25lbnRzLmludGVyZmFjZXMubnNJ
QXRvbVNlcnZpY2UpOwogICAgICAgPC9maWVsZD4KIAogICAgICAgPGZpZWxkIG5hbWU9Il9tU3Ry
QnVuZGxlIj5udWxsPC9maWVsZD4KIAogICAgICAgPHByb3BlcnR5IG5hbWU9Im1TdHJCdW5kbGUi
PgogICAgICAgICA8Z2V0dGVyPgogICAgICAgICA8IVtDREFUQVsKQEAgLTM1MywyNCArMzUzLDI3
IEBACiAgICAgICAgICAgY2F0Y2ggKGUpIHsKICAgICAgICAgICB9CiAgICAgICAgICAgdHJ5IHsK
ICAgICAgICAgICAgIGNvbnN0IFNFQ1VSRUJST1dTRVJVSV9DT05UUkFDVElEID0gIkBtb3ppbGxh
Lm9yZy9zZWN1cmVfYnJvd3Nlcl91aTsxIjsKICAgICAgICAgICAgIGlmICghdGhpcy5oYXNBdHRy
aWJ1dGUoImRpc2FibGVzZWN1cml0eSIpICYmCiAgICAgICAgICAgICAgICAgU0VDVVJFQlJPV1NF
UlVJX0NPTlRSQUNUSUQgaW4gQ29tcG9uZW50cy5jbGFzc2VzKSB7CiAgICAgICAgICAgICAgIHZh
ciBzZWN1cml0eVVJID0gQ29tcG9uZW50cy5jbGFzc2VzW1NFQ1VSRUJST1dTRVJVSV9DT05UUkFD
VElEXS5jcmVhdGVJbnN0YW5jZShDb21wb25lbnRzLmludGVyZmFjZXMubnNJU2VjdXJlQnJvd3Nl
clVJKTsKICAgICAgICAgICAgICAgc2VjdXJpdHlVSS5pbml0KHRoaXMuY29udGVudFdpbmRvdyk7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfQogICAgICAgICAgIGNhdGNoIChlKSB7CiAgICAg
ICAgICAgfQorICAgICAgICAgIAorICAgICAgICAgIG1QcmVmcy5hZGRPYnNlcnZlcigiYnJvd3Nl
ci5kaXNwbGF5LmJhY2tncm91bmRfY29sb3IiLCB0aGlzLCBmYWxzZSk7CisgICAgICAgICAgdGhp
cy5vYnNlcnZlKG51bGwsICJuc1ByZWY6Y2hhbmdlZCIsICJicm93c2VyLmRpc3BsYXkuYmFja2dy
b3VuZF9jb2xvciIpOwogICAgICAgICBdXT4KICAgICAgIDwvY29uc3RydWN0b3I+CiAgICAgICAK
ICAgICAgIDxkZXN0cnVjdG9yPgogICAgICAgICA8IVtDREFUQVsKICAgICAgICAgICB0aGlzLmRl
c3Ryb3koKTsKICAgICAgICAgXV0+CiAgICAgICA8L2Rlc3RydWN0b3I+CiAKICAgICAgIDwhLS0g
VGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgZGVzdHJ1Y3RvciBpcyBub3QgY2FsbGVkCiAg
ICAgICAgICAgIHByb21wdGx5IHdoZW4gd2UgYXJlIHJlbW92ZWQgZnJvbSBhIHRhYmJyb3dzZXIu
IFRoaXMgd2lsbCBiZQogICAgICAgICAgICBleHBsaWNpdGx5IGNhbGxlZCBieSB0YWJicm93c2Vy
IC0tPgpAQCAtMzgwLDI3ICszODMsNDIgQEAKICAgICAgICAgICBpZiAodGhpcy5tRGVzdHJveWVk
KQogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgIHRoaXMubURlc3Ryb3llZCA9IHRydWU7
CiAKICAgICAgICAgICBpZiAodGhpcy5tRHJhZ0Ryb3BIYW5kbGVyKQogICAgICAgICAgICAgdGhp
cy5tRHJhZ0Ryb3BIYW5kbGVyLmRldGFjaCgpOwogICAgICAgICAgIHRoaXMubURyYWdEcm9wSGFu
ZGxlciA9IG51bGw7CiAKICAgICAgICAgICB0aGlzLnNlY3VyaXR5VUkgPSBudWxsOwogICAgICAg
ICAgIHRoaXMuZm9jdXNlZFdpbmRvdyA9IG51bGw7CiAgICAgICAgICAgdGhpcy5mb2N1c2VkRWxl
bWVudCA9IG51bGw7CiAgICAgICAgICAgdGhpcy5fd2ViQnJvd3NlckZpbmQgPSBudWxsOworICAg
ICAgICAgIHRoaXMubVByZWZzLnJlbW92ZU9ic2VydmVyKCJicm93c2VyLmRpc3BsYXkuYmFja2dy
b3VuZF9jb2xvciIsIHRoaXMpOwogICAgICAgICBdXT4KICAgICAgICAgPC9ib2R5PgogICAgICAg
PC9tZXRob2Q+CisKKyAgICAgIDxtZXRob2QgbmFtZT0ib2JzZXJ2ZSI+CisgICAgICAgIDxwYXJh
bWV0ZXIgbmFtZT0iYVN1YmplY3QiLz4KKyAgICAgICAgPHBhcmFtZXRlciBuYW1lPSJhVG9waWMi
Lz4KKyAgICAgICAgPHBhcmFtZXRlciBuYW1lPSJhU3RhdGUiLz4KKyAgICAgICAgPGJvZHk+Cisg
ICAgICAgICAgPCFbQ0RBVEFbCisgICAgICAgICAgICBpZiAoYVRvcGljID09ICJuc1ByZWY6Y2hh
bmdlZCIgJiYgYVN0YXRlID09ICJicm93c2VyLmRpc3BsYXkuYmFja2dyb3VuZF9jb2xvciIpIHsK
KyAgICAgICAgICAgICAgdGhpcy5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSB0aGlzLm1QcmVmcy5n
ZXRDaGFyUHJlZigiYnJvd3Nlci5kaXNwbGF5LmJhY2tncm91bmRfY29sb3IiKTsKKyAgICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICAgIF1dPgorICAgICAgICA8L2Jv
ZHk+CisgICAgICA8L21ldGhvZD4KICAgICA8L2ltcGxlbWVudGF0aW9uPgogCiAgICAgPGhhbmRs
ZXJzPgogICAgICAgPGhhbmRsZXIgZXZlbnQ9ImtleXByZXNzIiBrZXljb2RlPSJWS19GNyIgZ3Jv
dXA9InN5c3RlbSI+CiAgICAgICAgIDwhW0NEQVRBWwogICAgICAgICAgIGlmIChldmVudC5nZXRQ
cmV2ZW50RGVmYXVsdCgpIHx8ICFldmVudC5pc1RydXN0ZWQpCiAgICAgICAgICAgICByZXR1cm47
CiAKICAgICAgICAgICAvLyBUb2dnbGUgYnJvd3NlIHdpdGggY2FyZXQgbW9kZQogICAgICAgICAg
IHZhciBicm93c2VXaXRoQ2FyZXRPbiA9IGZhbHNlOwogICAgICAgICAgIHZhciB3YXJuID0gdHJ1
ZTsKIAo=
</data>
<flag name="review"
          id="103531"
          type_id="937"
          status="+"
          setter="dbaron"
    />
    <flag name="superreview"
          id="103532"
          type_id="5"
          status="+"
          setter="dbaron"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206053</attachid>
            <date>2005-12-15 20:01:18 -0800</date>
            <delta_ts>2010-08-10 14:37:41 -0700</delta_ts>
            <desc>updated to trunk</desc>
            <filename>patch2</filename>
            <type>text/plain</type>
            <size>12270</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IGxheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp
bGU6IC9ob21lL3JvY2FsbGFoYW4vbW96aWxsYS1jdnMtbWlycm9yL21vemlsbGEvbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDY4CmRpZmYg
LXUgLXQgLXAgLTEgLTIgLXIxLjQ2OCBuc0RvY3VtZW50Vmlld2VyLmNwcAotLS0gbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAJOSBEZWMgMjAwNSAxMToxMDozNCAtMDAwMAkxLjQ2OAor
KysgbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAJMTYgRGVjIDIwMDUgMDM6NDA6NDIg
LTAwMDAKQEAgLTIyNTEsNTUgKzIyNTEsMjQgQEAgRG9jdW1lbnRWaWV3ZXJJbXBsOjpNYWtlV2lu
ZG93KG5zSVdpZGdldAogICAvLyBSZXNldCB0aGUgYm91bmRzIG9mZnNldCBzbyB0aGUgcm9vdCB2
aWV3IGlzIHNldCB0byAwLDAuIFRoZQogICAvLyBvZmZzZXQgaXMgc3BlY2lmaWVkIGluIG5zSVZp
ZXdNYW5hZ2VyOjpJbml0IGFib3ZlLgogICAvLyBCZXNpZGVzLCBsYXlvdXQgd2lsbCByZXNldCB0
aGUgcm9vdCB2aWV3IHRvICgwLDApIGR1cmluZyByZWZsb3csCiAgIC8vIHNvIGNoYW5naW5nIGl0
IHRvIDAsMCBlbGltaW5hdGVzIHBsYWNpbmcgdGhlIHJvb3QgdmlldyBpbiB0aGUKICAgLy8gd3Jv
bmcgcGxhY2UgaW5pdGlhbGx5LgogICB0Ym91bmRzLnggPSAwOwogICB0Ym91bmRzLnkgPSAwOwog
CiAgIC8vIENyZWF0ZSBhIGNoaWxkIHdpbmRvdyBvZiB0aGUgcGFyZW50IHRoYXQgaXMgb3VyICJy
b290IHZpZXcvd2luZG93IgogICAvLyBpZiBhUGFyZW50V2lkZ2V0IGhhcyBhIHZpZXcsIHdlJ2xs
IGhvb2sgb3VyIHZpZXcgbWFuYWdlciB1cCB0byBpdHMgdmlldyB0cmVlCiAgIG5zSVZpZXcqIGNv
bnRhaW5lclZpZXcgPSBuc1ZpZXc6OkdldFZpZXdGb3IoYVBhcmVudFdpZGdldCk7CiAKLSAgaWYg
KGNvbnRhaW5lclZpZXcpIHsKLSAgICAvLyBzZWUgaWYgdGhlIGNvbnRhaW5lclZpZXcgaGFzIGFs
cmVhZHkgYmVlbiBob29rZWQgaW50byBhIGZvcmVpZ24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeQot
ICAgIC8vIGlmIGl0IGhhcywgdGhlbiB3ZSBoYXZlIHRvIGhvb2sgaW50byB0aGUgaGllcmFyY2h5
IHRvbyBvdGhlcndpc2UgYmFkIHRoaW5ncyB3aWxsIGhhcHBlbi4KLSAgICBuc0lWaWV3TWFuYWdl
ciogY29udGFpbmVyVk0gPSBjb250YWluZXJWaWV3LT5HZXRWaWV3TWFuYWdlcigpOwotICAgIG5z
SVZpZXcqIHBWaWV3ID0gY29udGFpbmVyVmlldzsKLSAgICBkbyB7Ci0gICAgICBwVmlldyA9IHBW
aWV3LT5HZXRQYXJlbnQoKTsKLSAgICB9IHdoaWxlIChwVmlldyAmJiBwVmlldy0+R2V0Vmlld01h
bmFnZXIoKSA9PSBjb250YWluZXJWTSk7Ci0KLSAgICBpZiAoIXBWaWV3KSB7Ci0gICAgICAvLyBP
Sywgc28gdGhlIGNvbnRhaW5lciBpcyBub3QgYWxyZWFkeSBob29rZWQgdXAgaW50byBhIGZvcmVp
Z24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeS4KLSAgICAgIC8vIFRoYXQgbWVhbnMgd2UgY2FuIGNo
b29zZSBub3QgdG8gaG9vayBvdXJzZWx2ZXMgdXAuCi0gICAgICAvLwotICAgICAgLy8gSWYgdGhl
IHBhcmVudCBjb250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgdGhlbiB3ZSB3b24ndCBob29rIGlu
dG8gaXRzIHZpZXcKLSAgICAgIC8vIHRyZWUuIFRoaXMgd2lsbCBpbXByb3ZlIHBlcmZvcm1hbmNl
IGEgbGl0dGxlIGJpdCAoZXNwZWNpYWxseSBnaXZlbiBzY3JvbGxpbmcvcGFpbnRpbmcgcGVyZiBi
dWdzKQotICAgICAgLy8gYnV0IGlzIHJlYWxseSBqdXN0IGZvciBwZWFjZSBvZiBtaW5kLiBUaGlz
IGNoZWNrIGNhbiBiZSByZW1vdmVkIGlmIHdlIHdhbnQgdG8gc3VwcG9ydCBmYW5jeQotICAgICAg
Ly8gY2hyb21lIGVmZmVjdHMgbGlrZSB0cmFuc3BhcmVudCBjb250cm9scyBmbG9hdGluZyBvdmVy
IGNvbnRlbnQsIHRyYW5zcGFyZW50IFdlYiBicm93c2VycywgYW5kCi0gICAgICAvLyB0aGluZ3Mg
bGlrZSB0aGF0LCBhbmQgdGhlIHBlcmYgYnVncyBhcmUgZml4ZWQuCi0gICAgICBuc0NPTVB0cjxu
c0lEb2NTaGVsbFRyZWVJdGVtPiBjb250YWluZXIoZG9fUXVlcnlSZWZlcmVudChtQ29udGFpbmVy
KSk7Ci0gICAgICBuc0NPTVB0cjxuc0lEb2NTaGVsbFRyZWVJdGVtPiBwYXJlbnRDb250YWluZXI7
Ci0gICAgICBQUkludDMyIGl0ZW1UeXBlOwotICAgICAgaWYgKG5zbnVsbCA9PSBjb250YWluZXIK
LSAgICAgICAgICB8fCBOU19GQUlMRUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJl
ZnMocGFyZW50Q29udGFpbmVyKSkpCi0gICAgICAgICAgfHwgbnNudWxsID09IHBhcmVudENvbnRh
aW5lcgotICAgICAgICAgIHx8IE5TX0ZBSUxFRChwYXJlbnRDb250YWluZXItPkdldEl0ZW1UeXBl
KCZpdGVtVHlwZSkpCi0gICAgICAgICAgfHwgaXRlbVR5cGUgIT0gbnNJRG9jU2hlbGxUcmVlSXRl
bTo6dHlwZUNvbnRlbnQpIHsKLSAgICAgICAgY29udGFpbmVyVmlldyA9IG5zbnVsbDsKLSAgICAg
IH0KLSAgICB9Ci0gIH0KLQogICAvLyBDcmVhdGUgYSB2aWV3CiAgIG5zSVZpZXcqIHZpZXcgPSBt
Vmlld01hbmFnZXItPkNyZWF0ZVZpZXcodGJvdW5kcywgY29udGFpbmVyVmlldyk7CiAgIGlmICgh
dmlldykKICAgICByZXR1cm4gTlNfRVJST1JfT1VUX09GX01FTU9SWTsKIAogICAvLyBwYXNzIGlu
IGEgbmF0aXZlIHdpZGdldCB0byBiZSB0aGUgcGFyZW50IHdpZGdldCBPTkxZIGlmIHRoZSB2aWV3
IGhpZXJhcmNoeSB3aWxsIHN0YW5kIGFsb25lLgogICAvLyBvdGhlcndpc2UgdGhlIHZpZXcgd2ls
bCBmaW5kIGl0cyBvd24gcGFyZW50IHdpZGdldCBhbmQgImRvIHRoZSByaWdodCB0aGluZyIgdG8K
ICAgLy8gZXN0YWJsaXNoIGEgcGFyZW50L2NoaWxkIHdpZGdldCByZWxhdGlvbnNoaXAKICAgcnYg
PSB2aWV3LT5DcmVhdGVXaWRnZXQoa1dpZGdldENJRCwgbnNudWxsLAogICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb250YWluZXJWaWV3ICE9IG5zbnVsbCA/IG5zbnVsbCA6IGFQYXJlbnRXaWRn
ZXQtPkdldE5hdGl2ZURhdGEoTlNfTkFUSVZFX1dJREdFVCksCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFBSX1RSVUUsIFBSX0ZBTFNFKTsKICAgaWYgKE5TX0ZBSUxFRChydikpCkluZGV4OiB0
b29sa2l0L2NvbnRlbnQvd2lkZ2V0cy9icm93c2VyLnhtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAv
aG9tZS9yb2NhbGxhaGFuL21vemlsbGEtY3ZzLW1pcnJvci9tb3ppbGxhL3Rvb2xraXQvY29udGVu
dC93aWRnZXRzL2Jyb3dzZXIueG1sLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjgxCmRpZmYgLXUg
LXQgLXAgLTEgLTIgLXIxLjgxIGJyb3dzZXIueG1sCi0tLSB0b29sa2l0L2NvbnRlbnQvd2lkZ2V0
cy9icm93c2VyLnhtbAkxIE5vdiAyMDA1IDA0OjEzOjIxIC0wMDAwCTEuODEKKysrIHRvb2xraXQv
Y29udGVudC93aWRnZXRzL2Jyb3dzZXIueG1sCTE2IERlYyAyMDA1IDAzOjQ2OjAwIC0wMDAwCkBA
IC0zMTEsMjUgKzMxMSwyNiBAQAogCiAgICAgICA8cHJvcGVydHkgbmFtZT0iY29udGVudERvY3Vt
ZW50IgogICAgICAgICAgICAgICAgIG9uZ2V0PSJyZXR1cm4gdGhpcy53ZWJOYXZpZ2F0aW9uLmRv
Y3VtZW50OyIKICAgICAgICAgICAgICAgICByZWFkb25seT0idHJ1ZSIvPgogCiAgICAgICA8cHJv
cGVydHkgbmFtZT0iY29udGVudFRpdGxlIgogICAgICAgICAgICAgICAgIG9uZ2V0PSJyZXR1cm4g
dGhpcy5jb250ZW50RG9jdW1lbnQudGl0bGU7IgogICAgICAgICAgICAgICAgIHJlYWRvbmx5PSJ0
cnVlIi8+CiAKICAgICAgIDxmaWVsZCBuYW1lPSJtUHJlZnMiIHJlYWRvbmx5PSJ0cnVlIj4KICAg
ICAgICAgQ29tcG9uZW50cy5jbGFzc2VzWydAbW96aWxsYS5vcmcvcHJlZmVyZW5jZXMtc2Vydmlj
ZTsxJ10KICAgICAgICAgICAgICAgICAgIC5nZXRTZXJ2aWNlKENvbXBvbmVudHMuaW50ZXJmYWNl
cy5uc0lQcmVmU2VydmljZSkKLSAgICAgICAgICAgICAgICAgIC5nZXRCcmFuY2gobnVsbCk7Cisg
ICAgICAgICAgICAgICAgICAuZ2V0QnJhbmNoKG51bGwpCisgICAgICAgICAgICAgICAgICAuUXVl
cnlJbnRlcmZhY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSVByZWZCcmFuY2hJbnRlcm5hbCk7
CiAgICAgICA8L2ZpZWxkPgogCiAgICAgICA8ZmllbGQgbmFtZT0ibUF0b21TZXJ2aWNlIiByZWFk
b25seT0idHJ1ZSI+CiAgICAgICAgIENvbXBvbmVudHMuY2xhc3Nlc1snQG1vemlsbGEub3JnL2F0
b20tc2VydmljZTsxJ10KICAgICAgICAgICAgICAgICAgIC5nZXRTZXJ2aWNlKENvbXBvbmVudHMu
aW50ZXJmYWNlcy5uc0lBdG9tU2VydmljZSk7CiAgICAgICA8L2ZpZWxkPgogCiAgICAgICA8Zmll
bGQgbmFtZT0iX21TdHJCdW5kbGUiPm51bGw8L2ZpZWxkPgogCiAgICAgICA8cHJvcGVydHkgbmFt
ZT0ibVN0ckJ1bmRsZSI+CiAgICAgICAgIDxnZXR0ZXI+CiAgICAgICAgIDwhW0NEQVRBWwpAQCAt
NTcyLDI0ICs1NzMsMjcgQEAKICAgICAgICAgICBjYXRjaCAoZSkgewogICAgICAgICAgIH0KICAg
ICAgICAgICB0cnkgewogICAgICAgICAgICAgdmFyIHNlY3VyaXR5VUkgPSB0aGlzLnNlY3VyaXR5
VUk7CiAgICAgICAgICAgfQogICAgICAgICAgIGNhdGNoIChlKSB7CiAgICAgICAgICAgfQogCiAg
ICAgICAgICAgLy8gTGlzdGVuIGZvciBmaXJzdCBsb2FkIGZvciBsYXp5IGF0dGFjaG1lbnQgdG8g
Zm9ybSBmaWxsIGNvbnRyb2xsZXIKICAgICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoInBh
Z2VzaG93IiwgdGhpcy5vblBhZ2VTaG93LCB0cnVlKTsKICAgICAgICAgICB0aGlzLmFkZEV2ZW50
TGlzdGVuZXIoInBhZ2VoaWRlIiwgdGhpcy5vblBhZ2VIaWRlLCB0cnVlKTsKICAgICAgICAgICB0
aGlzLmFkZEV2ZW50TGlzdGVuZXIoIkRPTVBvcHVwQmxvY2tlZCIsIHRoaXMub25Qb3B1cEJsb2Nr
ZWQsIGZhbHNlKTsKKyAgICAgICAgICAKKyAgICAgICAgICBtUHJlZnMuYWRkT2JzZXJ2ZXIoImJy
b3dzZXIuZGlzcGxheS5iYWNrZ3JvdW5kX2NvbG9yIiwgdGhpcywgZmFsc2UpOworICAgICAgICAg
IHRoaXMub2JzZXJ2ZShudWxsLCAibnNQcmVmOmNoYW5nZWQiLCAiYnJvd3Nlci5kaXNwbGF5LmJh
Y2tncm91bmRfY29sb3IiKTsKICAgICAgICAgXV0+CiAgICAgICA8L2NvbnN0cnVjdG9yPgogICAg
ICAgCiAgICAgICA8ZGVzdHJ1Y3Rvcj4KICAgICAgICAgPCFbQ0RBVEFbCiAgICAgICAgICAgdGhp
cy5kZXN0cm95KCk7CiAgICAgICAgIF1dPgogICAgICAgPC9kZXN0cnVjdG9yPgogCiAgICAgICA8
IS0tIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIGRlc3RydWN0b3IgZG9lc24ndCBhbHdh
eXMgZ2V0IGNhbGxlZCB3aGVuCiAgICAgICAgICAgIHdlIGFyZSByZW1vdmVkIGZyb20gYSB0YWJi
cm93c2VyLiBUaGlzIHdpbGwgYmUgZXhwbGljaXRseSBjYWxsZWQgYnkgdGFiYnJvd3NlciAtLT4K
ICAgICAgIDxtZXRob2QgbmFtZT0iZGVzdHJveSI+CkBAIC02MTEsMzQgKzYxNSw0MCBAQAogICAg
ICAgICAgIGlmICh0aGlzLm1EcmFnRHJvcEhhbmRsZXIpCiAgICAgICAgICAgICB0aGlzLm1EcmFn
RHJvcEhhbmRsZXIuZGV0YWNoKCk7CiAgICAgICAgICAgdGhpcy5tRHJhZ0Ryb3BIYW5kbGVyID0g
bnVsbDsKIAogICAgICAgICAgIHRoaXMuZGV0YWNoRm9ybUZpbGwoKTsKICAgICAgICAgICAKICAg
ICAgICAgICB0aGlzLl9mYXN0RmluZCA9IG51bGw7CiAgICAgICAgICAgdGhpcy5fd2ViQnJvd3Nl
ckZpbmQgPSBudWxsOwogCiAgICAgICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCJwYWdl
c2hvdyIsIHRoaXMub25QYWdlU2hvdywgdHJ1ZSk7CiAgICAgICAgICAgdGhpcy5yZW1vdmVFdmVu
dExpc3RlbmVyKCJwYWdlaGlkZSIsIHRoaXMub25QYWdlSGlkZSwgdHJ1ZSk7CiAgICAgICAgICAg
dGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Qb3B1cEJsb2NrZWQiLCB0aGlzLm9uUG9wdXBC
bG9ja2VkLCB0cnVlKTsKKyAgICAgICAgICB0aGlzLm1QcmVmcy5yZW1vdmVPYnNlcnZlcigiYnJv
d3Nlci5kaXNwbGF5LmJhY2tncm91bmRfY29sb3IiLCB0aGlzKTsKICAgICAgICAgICBdXT4KICAg
ICAgICAgPC9ib2R5PgogICAgICAgPC9tZXRob2Q+CiAgICAgICAKICAgICAgIDxtZXRob2QgbmFt
ZT0ib2JzZXJ2ZSI+CiAgICAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYVN1YmplY3QiLz4KICAgICAg
ICAgPHBhcmFtZXRlciBuYW1lPSJhVG9waWMiLz4KICAgICAgICAgPHBhcmFtZXRlciBuYW1lPSJh
U3RhdGUiLz4KICAgICAgICAgPGJvZHk+CiAgICAgICAgICAgPCFbQ0RBVEFbCisgICAgICAgICAg
ICBpZiAoYVRvcGljID09ICJuc1ByZWY6Y2hhbmdlZCIgJiYgYVN0YXRlID09ICJicm93c2VyLmRp
c3BsYXkuYmFja2dyb3VuZF9jb2xvciIpIHsKKyAgICAgICAgICAgICAgdGhpcy5zdHlsZS5iYWNr
Z3JvdW5kQ29sb3IgPSB0aGlzLm1QcmVmcy5nZXRDaGFyUHJlZigiYnJvd3Nlci5kaXNwbGF5LmJh
Y2tncm91bmRfY29sb3IiKTsKKyAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQor
ICAgICAgICAgIAogICAgICAgICAgICAgaWYgKGFUb3BpYyAhPSAiYnJvd3NlcjpwdXJnZS1zZXNz
aW9uLWhpc3RvcnkiKQogICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgIAogICAg
ICAgICAgICAgLy8gcGxhY2UgdGhlIGVudHJ5IGF0IGN1cnJlbnQgaW5kZXggYXQgdGhlIGVuZCBv
ZiB0aGUgaGlzdG9yeSBsaXN0LCBzbyBpdCB3b24ndCBnZXQgcmVtb3ZlZAogICAgICAgICAgICAg
aWYgKHRoaXMuc2Vzc2lvbkhpc3RvcnkuaW5kZXggPCB0aGlzLnNlc3Npb25IaXN0b3J5LmNvdW50
IC0gMSkgewogICAgICAgICAgICAgICB2YXIgaW5kZXhFbnRyeSA9IHRoaXMuc2Vzc2lvbkhpc3Rv
cnkuZ2V0RW50cnlBdEluZGV4KHRoaXMuc2Vzc2lvbkhpc3RvcnkuaW5kZXgsIGZhbHNlKTsKICAg
ICAgICAgICAgICAgdGhpcy5zZXNzaW9uSGlzdG9yeS5RdWVyeUludGVyZmFjZShDb21wb25lbnRz
LmludGVyZmFjZXMubnNJU0hpc3RvcnlJbnRlcm5hbCk7CiAgICAgICAgICAgICAgIGluZGV4RW50
cnkuUXVlcnlJbnRlcmZhY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSVNIRW50cnkpOwogICAg
ICAgICAgICAgICB0aGlzLnNlc3Npb25IaXN0b3J5LmFkZEVudHJ5KGluZGV4RW50cnksIHRydWUp
OwogICAgICAgICAgICAgfQogICAgICAgICAgICAgCiAgICAgICAgICAgICB2YXIgcHVyZ2UgPSB0
aGlzLnNlc3Npb25IaXN0b3J5LmNvdW50OwpJbmRleDogeHBmZS9nbG9iYWwvcmVzb3VyY2VzL2Nv
bnRlbnQvYmluZGluZ3MvYnJvd3Nlci54bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUvcm9j
YWxsYWhhbi9tb3ppbGxhLWN2cy1taXJyb3IvbW96aWxsYS94cGZlL2dsb2JhbC9yZXNvdXJjZXMv
Y29udGVudC9iaW5kaW5ncy9icm93c2VyLnhtbCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS40Nwpk
aWZmIC11IC10IC1wIC0xIC0yIC1yMS40NyBicm93c2VyLnhtbAotLS0geHBmZS9nbG9iYWwvcmVz
b3VyY2VzL2NvbnRlbnQvYmluZGluZ3MvYnJvd3Nlci54bWwJOCBOb3YgMjAwNSAxNDoxNjo0NSAt
MDAwMAkxLjQ3CisrKyB4cGZlL2dsb2JhbC9yZXNvdXJjZXMvY29udGVudC9iaW5kaW5ncy9icm93
c2VyLnhtbAkxNiBEZWMgMjAwNSAwMzo0NDowNyAtMDAwMApAQCAtMzMsMjUgKzMzLDI1IEBACiAg
ICAtIGRlY2lzaW9uIGJ5IGRlbGV0aW5nIHRoZSBwcm92aXNpb25zIGFib3ZlIGFuZCByZXBsYWNl
IHRoZW0gd2l0aCB0aGUgbm90aWNlCiAgICAtIGFuZCBvdGhlciBwcm92aXNpb25zIHJlcXVpcmVk
IGJ5IHRoZSBHUEwgb3IgdGhlIExHUEwuIElmIHlvdSBkbyBub3QgZGVsZXRlCiAgICAtIHRoZSBw
cm92aXNpb25zIGFib3ZlLCBhIHJlY2lwaWVudCBtYXkgdXNlIHlvdXIgdmVyc2lvbiBvZiB0aGlz
IGZpbGUgdW5kZXIKICAgIC0gdGhlIHRlcm1zIG9mIGFueSBvbmUgb2YgdGhlIE1QTCwgdGhlIEdQ
TCBvciB0aGUgTEdQTC4KICAgIC0KICAgIC0gKioqKiogRU5EIExJQ0VOU0UgQkxPQ0sgKioqKiog
LS0+CiAKIDxiaW5kaW5ncyBpZD0iYnJvd3NlckJpbmRpbmdzIgogICAgICAgICAgIHhtbG5zPSJo
dHRwOi8vd3d3Lm1vemlsbGEub3JnL3hibCIKICAgICAgICAgICB4bWxuczp4dWw9Imh0dHA6Ly93
d3cubW96aWxsYS5vcmcva2V5bWFzdGVyL2dhdGVrZWVwZXIvdGhlcmUuaXMub25seS54dWwiPgog
CiAgIDxiaW5kaW5nIGlkPSJicm93c2VyIiBleHRlbmRzPSJ4dWw6YnJvd3NlciI+Ci0gICAgPGlt
cGxlbWVudGF0aW9uIHR5cGU9ImFwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCIgaW1wbGVtZW50cz0i
bnNJQWNjZXNzaWJsZVByb3ZpZGVyIj4KKyAgICA8aW1wbGVtZW50YXRpb24gdHlwZT0iYXBwbGlj
YXRpb24veC1qYXZhc2NyaXB0IiBpbXBsZW1lbnRzPSJuc0lBY2Nlc3NpYmxlUHJvdmlkZXIsIG5z
SU9ic2VydmVyIj4KICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJhY2Nlc3NpYmxlIj4KICAgICAgICAg
PGdldHRlcj4KICAgICAgICAgICA8IVtDREFUQVsKICAgICAgICAgICAgIHZhciBhY2NTZXJ2aWNl
ID0gQ29tcG9uZW50cy5jbGFzc2VzWyJAbW96aWxsYS5vcmcvYWNjZXNzaWJpbGl0eVNlcnZpY2U7
MSJdLmdldFNlcnZpY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSUFjY2Vzc2liaWxpdHlTZXJ2
aWNlKTsKICAgICAgICAgICAgIHJldHVybiBhY2NTZXJ2aWNlLmNyZWF0ZU91dGVyRG9jQWNjZXNz
aWJsZSh0aGlzKTsKICAgICAgICAgICBdXT4KICAgICAgICAgPC9nZXR0ZXI+CiAgICAgICA8L3By
b3BlcnR5PgogCiAgICAgICA8cHJvcGVydHkgbmFtZT0iY2FuR29CYWNrIgogICAgICAgICAgICAg
ICAgIG9uZ2V0PSJyZXR1cm4gdGhpcy53ZWJOYXZpZ2F0aW9uLmNhbkdvQmFjazsiCiAgICAgICAg
ICAgICAgICAgcmVhZG9ubHk9InRydWUiLz4KQEAgLTI3MywyNSArMjczLDI1IEBACiAKICAgICAg
IDxwcm9wZXJ0eSBuYW1lPSJjb250ZW50RG9jdW1lbnQiCiAgICAgICAgICAgICAgICAgb25nZXQ9
InJldHVybiB0aGlzLndlYk5hdmlnYXRpb24uZG9jdW1lbnQ7IgogICAgICAgICAgICAgICAgIHJl
YWRvbmx5PSJ0cnVlIi8+CiAKICAgICAgIDxwcm9wZXJ0eSBuYW1lPSJjb250ZW50VGl0bGUiCiAg
ICAgICAgICAgICAgICAgb25nZXQ9InJldHVybiB0aGlzLmNvbnRlbnREb2N1bWVudC50aXRsZTsi
CiAgICAgICAgICAgICAgICAgcmVhZG9ubHk9InRydWUiLz4KIAogICAgICAgPGZpZWxkIG5hbWU9
Im1QcmVmcyIgcmVhZG9ubHk9InRydWUiPgogICAgICAgICBDb21wb25lbnRzLmNsYXNzZXNbJ0Bt
b3ppbGxhLm9yZy9wcmVmZXJlbmNlcy1zZXJ2aWNlOzEnXQogICAgICAgICAgICAgICAgICAgLmdl
dFNlcnZpY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSVByZWZTZXJ2aWNlKQotICAgICAgICAg
ICAgICAgICAgLmdldEJyYW5jaChudWxsKTsKKyAgICAgICAgICAgICAgICAgIC5nZXRCcmFuY2go
bnVsbCkuUXVlcnlJbnRlcmZhY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSVByZWZCcmFuY2hJ
bnRlcm5hbCk7CiAgICAgICA8L2ZpZWxkPgogCiAgICAgICA8ZmllbGQgbmFtZT0ibUF0b21TZXJ2
aWNlIiByZWFkb25seT0idHJ1ZSI+CiAgICAgICAgIENvbXBvbmVudHMuY2xhc3Nlc1snQG1vemls
bGEub3JnL2F0b20tc2VydmljZTsxJ10KICAgICAgICAgICAgICAgICAgIC5nZXRTZXJ2aWNlKENv
bXBvbmVudHMuaW50ZXJmYWNlcy5uc0lBdG9tU2VydmljZSk7CiAgICAgICA8L2ZpZWxkPgogCiAg
ICAgICA8ZmllbGQgbmFtZT0iX21TdHJCdW5kbGUiPm51bGw8L2ZpZWxkPgogCiAgICAgICA8cHJv
cGVydHkgbmFtZT0ibVN0ckJ1bmRsZSI+CiAgICAgICAgIDxnZXR0ZXI+CiAgICAgICAgIDwhW0NE
QVRBWwpAQCAtNDM3LDQ4ICs0MzcsNjYgQEAKICAgICAgICAgICBjYXRjaCAoZSkgewogICAgICAg
ICAgIH0KICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgY29uc3QgU0VDVVJFQlJPV1NFUlVJ
X0NPTlRSQUNUSUQgPSAiQG1vemlsbGEub3JnL3NlY3VyZV9icm93c2VyX3VpOzEiOwogICAgICAg
ICAgICAgaWYgKCF0aGlzLnNlY3VyaXR5VUkgJiYgIXRoaXMuaGFzQXR0cmlidXRlKCJkaXNhYmxl
c2VjdXJpdHkiKSAmJgogICAgICAgICAgICAgICAgIFNFQ1VSRUJST1dTRVJVSV9DT05UUkFDVElE
IGluIENvbXBvbmVudHMuY2xhc3NlcykgewogICAgICAgICAgICAgICB2YXIgc2VjdXJpdHlVSSA9
IENvbXBvbmVudHMuY2xhc3Nlc1tTRUNVUkVCUk9XU0VSVUlfQ09OVFJBQ1RJRF0uY3JlYXRlSW5z
dGFuY2UoQ29tcG9uZW50cy5pbnRlcmZhY2VzLm5zSVNlY3VyZUJyb3dzZXJVSSk7CiAgICAgICAg
ICAgICAgIHNlY3VyaXR5VUkuaW5pdCh0aGlzLmNvbnRlbnRXaW5kb3cpOwogICAgICAgICAgICAg
fQogICAgICAgICAgIH0KICAgICAgICAgICBjYXRjaCAoZSkgewogICAgICAgICAgIH0KKyAKKyAg
ICAgICAgICBtUHJlZnMuYWRkT2JzZXJ2ZXIoImJyb3dzZXIuZGlzcGxheS5iYWNrZ3JvdW5kX2Nv
bG9yIiwgdGhpcywgZmFsc2UpOworICAgICAgICAgIHRoaXMub2JzZXJ2ZShudWxsLCAibnNQcmVm
OmNoYW5nZWQiLCAiYnJvd3Nlci5kaXNwbGF5LmJhY2tncm91bmRfY29sb3IiKTsKICAgICAgICAg
XV0+CiAgICAgICAgIDwvYm9keT4KICAgICAgIDwvbWV0aG9kPgogICAgICAgCiAgICAgICA8IS0t
IFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIGRlc3RydWN0b3IgaXMgbm90IGNhbGxlZAog
ICAgICAgICAgICBwcm9tcHRseSB3aGVuIHdlIGFyZSByZW1vdmVkIGZyb20gYSB0YWJicm93c2Vy
LiBUaGlzIHdpbGwgYmUKICAgICAgICAgICAgZXhwbGljaXRseSBjYWxsZWQgYnkgdGFiYnJvd3Nl
ciAtLT4KICAgICAgIDxtZXRob2QgbmFtZT0iZGVzdHJveSI+CiAgICAgICAgIDxib2R5PgogICAg
ICAgICA8IVtDREFUQVsKICAgICAgICAgICBpZiAodGhpcy5tRGVzdHJveWVkKQogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAgIHRoaXMubURlc3Ryb3llZCA9IHRydWU7CiAKICAgICAgICAg
ICBpZiAodGhpcy5tRHJhZ0Ryb3BIYW5kbGVyKQogICAgICAgICAgICAgdGhpcy5tRHJhZ0Ryb3BI
YW5kbGVyLmRldGFjaCgpOwogICAgICAgICAgIHRoaXMubURyYWdEcm9wSGFuZGxlciA9IG51bGw7
CiAKICAgICAgICAgICB0aGlzLmZvY3VzZWRXaW5kb3cgPSBudWxsOwogICAgICAgICAgIHRoaXMu
Zm9jdXNlZEVsZW1lbnQgPSBudWxsOwogICAgICAgICAgIHRoaXMuX3dlYkJyb3dzZXJGaW5kID0g
bnVsbDsKKyAgICAgICAgICB0aGlzLm1QcmVmcy5yZW1vdmVPYnNlcnZlcigiYnJvd3Nlci5kaXNw
bGF5LmJhY2tncm91bmRfY29sb3IiLCB0aGlzKTsKICAgICAgICAgXV0+CiAgICAgICAgIDwvYm9k
eT4KICAgICAgIDwvbWV0aG9kPgorCisgICAgICA8bWV0aG9kIG5hbWU9Im9ic2VydmUiPgorICAg
ICAgICA8cGFyYW1ldGVyIG5hbWU9ImFTdWJqZWN0Ii8+CisgICAgICAgIDxwYXJhbWV0ZXIgbmFt
ZT0iYVRvcGljIi8+CisgICAgICAgIDxwYXJhbWV0ZXIgbmFtZT0iYVN0YXRlIi8+CisgICAgICAg
IDxib2R5PgorICAgICAgICAgIDwhW0NEQVRBWworICAgICAgICAgICAgaWYgKGFUb3BpYyA9PSAi
bnNQcmVmOmNoYW5nZWQiICYmIGFTdGF0ZSA9PSAiYnJvd3Nlci5kaXNwbGF5LmJhY2tncm91bmRf
Y29sb3IiKSB7CisgICAgICAgICAgICAgIHRoaXMuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gdGhp
cy5tUHJlZnMuZ2V0Q2hhclByZWYoImJyb3dzZXIuZGlzcGxheS5iYWNrZ3JvdW5kX2NvbG9yIik7
CisgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICBdXT4KKyAg
ICAgICAgPC9ib2R5PgorICAgICAgPC9tZXRob2Q+CiAgICAgPC9pbXBsZW1lbnRhdGlvbj4KIAog
ICAgIDxoYW5kbGVycz4KICAgICAgIDxoYW5kbGVyIGV2ZW50PSJrZXlwcmVzcyIga2V5Y29kZT0i
VktfRjciIGdyb3VwPSJzeXN0ZW0iPgogICAgICAgICA8IVtDREFUQVsKICAgICAgICAgICBpZiAo
ZXZlbnQuZ2V0UHJldmVudERlZmF1bHQoKSB8fCAhZXZlbnQuaXNUcnVzdGVkKQogICAgICAgICAg
ICAgcmV0dXJuOwogCiAgICAgICAgICAgLy8gVG9nZ2xlIGJyb3dzZSB3aXRoIGNhcmV0IG1vZGUK
ICAgICAgICAgICB2YXIgYnJvd3NlV2l0aENhcmV0T24gPSBmYWxzZTsKICAgICAgICAgICB2YXIg
d2FybiA9IHRydWU7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209787</attachid>
            <date>2006-01-26 18:43:36 -0800</date>
            <delta_ts>2010-08-10 14:38:20 -0700</delta_ts>
            <desc>alternative patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>8553</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IHZpZXcvcHVibGljL25zSVZpZXcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9y
b2NhbGxhaGFuL21vemlsbGEtY3ZzLW1pcnJvci9tb3ppbGxhL3ZpZXcvcHVibGljL25zSVZpZXcu
aCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMy44OQpkaWZmIC11IC10IC1wIC0xIC0yIC1yMy44OSBu
c0lWaWV3LmgKLS0tIHZpZXcvcHVibGljL25zSVZpZXcuaAkxMSBOb3YgMjAwNSAxNDozNjoxMyAt
MDAwMAkzLjg5CisrKyB2aWV3L3B1YmxpYy9uc0lWaWV3LmgJMjcgSmFuIDIwMDYgMDA6MDM6MTIg
LTAwMDAKQEAgLTgxLDI0ICs4MSwyNiBAQCBlbnVtIG5zVmlld1Zpc2liaWxpdHkgewogCiAvLyBJ
bmRpY2F0ZXMgdGhhdCB0aGUgdmlldyBpcyB1c2luZyBhdXRvIHotaW5kZXhpbmcKICNkZWZpbmUg
TlNfVklFV19GTEFHX0FVVE9fWklOREVYICAgICAgICAgIDB4MDAwNAogCiAvLyBJbmRpY2F0ZXMg
dGhhdCB0aGUgdmlldyBpcyBhIGZsb2F0aW5nIHZpZXcuCiAjZGVmaW5lIE5TX1ZJRVdfRkxBR19G
TE9BVElORyAgICAgICAgICAgICAweDAwMDgKIAogLy8gSWYgc2V0IGl0IGluZGljYXRlcyB0aGF0
IHRoaXMgdmlldyBzaG91bGQgYmUKIC8vIGRpc3BsYXllZCBhYm92ZSB6LWluZGV4OmF1dG8gdmll
d3MgaWYgdGhpcyB2aWV3IAogLy8gaXMgei1pbmRleDphdXRvIGFsc28KICNkZWZpbmUgTlNfVklF
V19GTEFHX1RPUE1PU1QgICAgICAgICAgICAgIDB4MDAxMAogCisjZGVmaW5lIE5TX1ZJRVdfRkxB
R19VU0VfREVGQVVMVF9CQUNLR1JPVU5EIDB4MDAyMAorCiBzdHJ1Y3QgbnNWaWV3WkluZGV4IHsK
ICAgUFJCb29sIG1Jc0F1dG87CiAgIFBSSW50MzIgbVpJbmRleDsKICAgUFJCb29sIG1Jc1RvcG1v
c3Q7CiAgIAogICBuc1ZpZXdaSW5kZXgoUFJCb29sIGFJc0F1dG8sIFBSSW50MzIgYVpJbmRleCwg
UFJCb29sIGFJc1RvcG1vc3QpCiAgICAgOiBtSXNBdXRvKGFJc0F1dG8pLCBtWkluZGV4KGFaSW5k
ZXgpLCBtSXNUb3Btb3N0KGFJc1RvcG1vc3QpIHt9CiB9OwogCiAvLy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAog
LyoqCkBAIC0yNzMsMjUgKzI3NSwzNyBAQCBwdWJsaWM6CiAgICAqLwogICB2b2lkIFNldEhhc1Vu
aWZvcm1CYWNrZ3JvdW5kKFBSQm9vbCBhVW5pZm9ybSkgewogICAgIGlmIChhVW5pZm9ybSkgewog
ICAgICAgbVZGbGFncyB8PSBOU19WSUVXX0ZMQUdfVU5JRk9STV9CQUNLR1JPVU5EOwogICAgIH0g
ZWxzZSB7CiAgICAgICBtVkZsYWdzICY9IH5OU19WSUVXX0ZMQUdfVU5JRk9STV9CQUNLR1JPVU5E
OwogICAgIH0KICAgfQogCiAgIFBSQm9vbCBIYXNVbmlmb3JtQmFja2dyb3VuZCgpIHsKICAgICBy
ZXR1cm4gbVZGbGFncyAmIE5TX1ZJRVdfRkxBR19VTklGT1JNX0JBQ0tHUk9VTkQ7CiAgIH0KKyAg
CisgIHZvaWQgU2V0VXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcihQUkJvb2wgYVVzZURlZmF1bHQp
IHsKKyAgICBpZiAoYVVzZURlZmF1bHQpIHsKKyAgICAgIG1WRmxhZ3MgfD0gTlNfVklFV19GTEFH
X1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQ7CisgICAgfSBlbHNlIHsKKyAgICAgIG1WRmxhZ3MgJj0g
fk5TX1ZJRVdfRkxBR19VU0VfREVGQVVMVF9CQUNLR1JPVU5EOworICAgIH0KKyAgfQogCisgIFBS
Qm9vbCBJc1VzaW5nRGVmYXVsdEJhY2tncm91bmRDb2xvcigpIHsKKyAgICByZXR1cm4gbVZGbGFn
cyAmIE5TX1ZJRVdfRkxBR19VU0VfREVGQVVMVF9CQUNLR1JPVU5EOworICB9CisgIAogICAvKioK
ICAgICogU2V0IHRoZSB2aWV3J3MgbGluayB0byBjbGllbnQgb3duZWQgZGF0YS4KICAgICogQHBh
cmFtIGFEYXRhIC0gZGF0YSB0byBhc3NvY2lhdGUgd2l0aCB2aWV3LiBuc251bGwgdG8gZGlzYXNz
b2NpYXRlCiAgICAqLwogICB2b2lkIFNldENsaWVudERhdGEodm9pZCAqYURhdGEpIHsgbUNsaWVu
dERhdGEgPSBhRGF0YTsgfQogCiAgIC8qKgogICAgKiBRdWVyeSB0aGUgdmlldyBmb3IgaXQncyBs
aW5rIHRvIGNsaWVudCBvd25lZCBkYXRhLgogICAgKiBAcmVzdWx0IGRhdGEgYXNzb2NpYXRlZCB3
aXRoIHZpZXcgb3IgbnNudWxsIGlmIHRoZXJlIGlzIG5vbmUuCiAgICAqLwogICB2b2lkKiBHZXRD
bGllbnREYXRhKCkgY29uc3QgeyByZXR1cm4gbUNsaWVudERhdGE7IH0KIApJbmRleDogbGF5b3V0
L2Jhc2UvbnNDU1NSZW5kZXJpbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL3JvY2Fs
bGFoYW4vbW96aWxsYS1jdnMtbWlycm9yL21vemlsbGEvbGF5b3V0L2Jhc2UvbnNDU1NSZW5kZXJp
bmcuY3BwLHYKcmV0cmlldmluZyByZXZpc2lvbiAzLjI3MwpkaWZmIC11IC10IC1wIC0xIC0yIC1y
My4yNzMgbnNDU1NSZW5kZXJpbmcuY3BwCi0tLSBsYXlvdXQvYmFzZS9uc0NTU1JlbmRlcmluZy5j
cHAJMzAgTm92IDIwMDUgMTM6MjY6MzQgLTAwMDAJMy4yNzMKKysrIGxheW91dC9iYXNlL25zQ1NT
UmVuZGVyaW5nLmNwcAkyNyBKYW4gMjAwNiAwMjoyMDo1OCAtMDAwMApAQCAtMjc2NCwzNyArMjc2
NCwzNiBAQCBuc0NTU1JlbmRlcmluZzo6UGFpbnRCYWNrZ3JvdW5kKG5zUHJlc0NvCiAgICAgcmV0
dXJuOwogICB9CiAKICAgaWYgKCFjb2xvcikKICAgICByZXR1cm47CiAgIG5zU3R5bGVCYWNrZ3Jv
dW5kIGNhbnZhc0NvbG9yKCpjb2xvcik7CiAKICAgbnNJVmlld01hbmFnZXIqIHZtID0gYVByZXND
b250ZXh0LT5HZXRWaWV3TWFuYWdlcigpOwogCiAgIGlmIChjYW52YXNDb2xvci5tQmFja2dyb3Vu
ZEZsYWdzICYgTlNfU1RZTEVfQkdfQ09MT1JfVFJBTlNQQVJFTlQpIHsKICAgICBuc0lWaWV3KiBy
b290VmlldzsKICAgICB2bS0+R2V0Um9vdFZpZXcocm9vdFZpZXcpOwotICAgIGlmICghcm9vdFZp
ZXctPkdldFBhcmVudCgpKSB7Ci0gICAgICBQUkJvb2wgd2lkZ2V0SXNUcmFuc2x1Y2VudCA9IFBS
X0ZBTFNFOwotCi0gICAgICBpZiAocm9vdFZpZXctPkhhc1dpZGdldCgpKSB7Ci0gICAgICAgIHJv
b3RWaWV3LT5HZXRXaWRnZXQoKS0+R2V0V2luZG93VHJhbnNsdWNlbmN5KHdpZGdldElzVHJhbnNs
dWNlbnQpOwotICAgICAgfQotICAgICAgCi0gICAgICBpZiAoIXdpZGdldElzVHJhbnNsdWNlbnQp
IHsKLSAgICAgICAgLy8gRW5zdXJlIHRoYXQgd2UgYWx3YXlzIHBhaW50IGEgY29sb3IgZm9yIHRo
ZSByb290IChpbiBjYXNlIHRoZXJlJ3MKLSAgICAgICAgLy8gbm8gYmFja2dyb3VuZCBhdCBhbGwg
b3IgYSBwYXJ0bHkgdHJhbnNwYXJlbnQgaW1hZ2UpLgotICAgICAgICBjYW52YXNDb2xvci5tQmFj
a2dyb3VuZEZsYWdzICY9IH5OU19TVFlMRV9CR19DT0xPUl9UUkFOU1BBUkVOVDsKLSAgICAgICAg
Y2FudmFzQ29sb3IubUJhY2tncm91bmRDb2xvciA9IGFQcmVzQ29udGV4dC0+RGVmYXVsdEJhY2tn
cm91bmRDb2xvcigpOwotICAgICAgfQorICAgIFBSQm9vbCB1c2VEZWZhdWx0QmFja2dyb3VuZENv
bG9yID0gcm9vdFZpZXctPklzVXNpbmdEZWZhdWx0QmFja2dyb3VuZENvbG9yKCk7CisgICAgaWYg
KCFyb290Vmlldy0+R2V0UGFyZW50KCkgJiYgcm9vdFZpZXctPkhhc1dpZGdldCgpKSB7CisgICAg
ICBQUkJvb2wgd2lkZ2V0SXNUcmFuc2x1Y2VudDsKKyAgICAgIHJvb3RWaWV3LT5HZXRXaWRnZXQo
KS0+R2V0V2luZG93VHJhbnNsdWNlbmN5KHdpZGdldElzVHJhbnNsdWNlbnQpOworICAgICAgdXNl
RGVmYXVsdEJhY2tncm91bmRDb2xvciA9ICF3aWRnZXRJc1RyYW5zbHVjZW50OworICAgIH0KKyAg
ICAKKyAgICBpZiAodXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcikgeworICAgICAgLy8gRW5zdXJl
IHRoYXQgd2UgYWx3YXlzIHBhaW50IGEgY29sb3IgZm9yIHRoZSByb290IChpbiBjYXNlIHRoZXJl
J3MKKyAgICAgIC8vIG5vIGJhY2tncm91bmQgYXQgYWxsIG9yIGEgcGFydGx5IHRyYW5zcGFyZW50
IGltYWdlKS4KKyAgICAgIGNhbnZhc0NvbG9yLm1CYWNrZ3JvdW5kRmxhZ3MgJj0gfk5TX1NUWUxF
X0JHX0NPTE9SX1RSQU5TUEFSRU5UOworICAgICAgY2FudmFzQ29sb3IubUJhY2tncm91bmRDb2xv
ciA9IGFQcmVzQ29udGV4dC0+RGVmYXVsdEJhY2tncm91bmRDb2xvcigpOwogICAgIH0KICAgfQog
CiAgIHZtLT5TZXREZWZhdWx0QmFja2dyb3VuZENvbG9yKGNhbnZhc0NvbG9yLm1CYWNrZ3JvdW5k
Q29sb3IpOwogCiAgIC8vIFNpbmNlIG5zSFRNTENvbnRhaW5lckZyYW1lOjpDcmVhdGVWaWV3Rm9y
RnJhbWUgbWlnaHQgaGF2ZSBjcmVhdGVkCiAgIC8vIHRoZSB2aWV3IGJlZm9yZSB3ZSBrbmV3IGFi
b3V0IHRoZSBjaGlsZCB3aXRoIHRoZSBmaXhlZCBiYWNrZ3JvdW5kCiAgIC8vIGF0dGFjaG1lbnQg
KHJvb3Qgb3IgQk9EWSkgb3IgdGhlIHN0eWxlc2hlZXQgc3BlY2lmeWluZyB0aGF0CiAgIC8vIGF0
dGFjaG1lbnQsIHNldCB0aGUgQml0Qmx0IGZsYWcgaGVyZSBhcyB3ZWxsLgogICBpZiAoY2FudmFz
Q29sb3IubUJhY2tncm91bmRBdHRhY2htZW50ID09IE5TX1NUWUxFX0JHX0FUVEFDSE1FTlRfRklY
RUQpIHsKICAgICBuc0lWaWV3ICp2aWV3ID0gYUZvckZyYW1lLT5HZXRWaWV3KCk7CiAgICAgaWYg
KHZpZXcpCkluZGV4OiBsYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
ClJDUyBmaWxlOiAvaG9tZS9yb2NhbGxhaGFuL21vemlsbGEtY3ZzLW1pcnJvci9tb3ppbGxhL2xh
eW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjQ2
OQpkaWZmIC11IC10IC1wIC0xIC0yIC1yMS40NjkgbnNEb2N1bWVudFZpZXdlci5jcHAKLS0tIGxh
eW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwCTEyIEphbiAyMDA2IDA2OjMwOjA1IC0wMDAw
CTEuNDY5CisrKyBsYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcAkyNyBKYW4gMjAwNiAw
MjoxNDoyMSAtMDAwMApAQCAtMjI1MCw2MyArMjI1MCw0NSBAQCBEb2N1bWVudFZpZXdlckltcGw6
Ok1ha2VXaW5kb3cobnNJV2lkZ2V0CiAgIGlmIChOU19GQUlMRUQocnYpKQogICAgIHJldHVybiBy
djsKIAogICAvLyBSZXNldCB0aGUgYm91bmRzIG9mZnNldCBzbyB0aGUgcm9vdCB2aWV3IGlzIHNl
dCB0byAwLDAuIFRoZQogICAvLyBvZmZzZXQgaXMgc3BlY2lmaWVkIGluIG5zSVZpZXdNYW5hZ2Vy
OjpJbml0IGFib3ZlLgogICAvLyBCZXNpZGVzLCBsYXlvdXQgd2lsbCByZXNldCB0aGUgcm9vdCB2
aWV3IHRvICgwLDApIGR1cmluZyByZWZsb3csCiAgIC8vIHNvIGNoYW5naW5nIGl0IHRvIDAsMCBl
bGltaW5hdGVzIHBsYWNpbmcgdGhlIHJvb3QgdmlldyBpbiB0aGUKICAgLy8gd3JvbmcgcGxhY2Ug
aW5pdGlhbGx5LgogICB0Ym91bmRzLnggPSAwOwogICB0Ym91bmRzLnkgPSAwOwogCiAgIC8vIENy
ZWF0ZSBhIGNoaWxkIHdpbmRvdyBvZiB0aGUgcGFyZW50IHRoYXQgaXMgb3VyICJyb290IHZpZXcv
d2luZG93IgotICAvLyBpZiBhUGFyZW50V2lkZ2V0IGhhcyBhIHZpZXcsIHdlJ2xsIGhvb2sgb3Vy
IHZpZXcgbWFuYWdlciB1cCB0byBpdHMgdmlldyB0cmVlCiAgIG5zSVZpZXcqIGNvbnRhaW5lclZp
ZXcgPSBuc1ZpZXc6OkdldFZpZXdGb3IoYVBhcmVudFdpZGdldCk7CiAKLSAgaWYgKGNvbnRhaW5l
clZpZXcpIHsKLSAgICAvLyBzZWUgaWYgdGhlIGNvbnRhaW5lclZpZXcgaGFzIGFscmVhZHkgYmVl
biBob29rZWQgaW50byBhIGZvcmVpZ24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeQotICAgIC8vIGlm
IGl0IGhhcywgdGhlbiB3ZSBoYXZlIHRvIGhvb2sgaW50byB0aGUgaGllcmFyY2h5IHRvbyBvdGhl
cndpc2UgYmFkIHRoaW5ncyB3aWxsIGhhcHBlbi4KLSAgICBuc0lWaWV3TWFuYWdlciogY29udGFp
bmVyVk0gPSBjb250YWluZXJWaWV3LT5HZXRWaWV3TWFuYWdlcigpOwotICAgIG5zSVZpZXcqIHBW
aWV3ID0gY29udGFpbmVyVmlldzsKLSAgICBkbyB7Ci0gICAgICBwVmlldyA9IHBWaWV3LT5HZXRQ
YXJlbnQoKTsKLSAgICB9IHdoaWxlIChwVmlldyAmJiBwVmlldy0+R2V0Vmlld01hbmFnZXIoKSA9
PSBjb250YWluZXJWTSk7Ci0KLSAgICBpZiAoIXBWaWV3KSB7Ci0gICAgICAvLyBPSywgc28gdGhl
IGNvbnRhaW5lciBpcyBub3QgYWxyZWFkeSBob29rZWQgdXAgaW50byBhIGZvcmVpZ24gdmlldyBt
YW5hZ2VyIGhpZXJhcmNoeS4KLSAgICAgIC8vIFRoYXQgbWVhbnMgd2UgY2FuIGNob29zZSBub3Qg
dG8gaG9vayBvdXJzZWx2ZXMgdXAuCi0gICAgICAvLwotICAgICAgLy8gSWYgdGhlIHBhcmVudCBj
b250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgdGhlbiB3ZSB3b24ndCBob29rIGludG8gaXRzIHZp
ZXcKLSAgICAgIC8vIHRyZWUuIFRoaXMgd2lsbCBpbXByb3ZlIHBlcmZvcm1hbmNlIGEgbGl0dGxl
IGJpdCAoZXNwZWNpYWxseSBnaXZlbiBzY3JvbGxpbmcvcGFpbnRpbmcgcGVyZiBidWdzKQotICAg
ICAgLy8gYnV0IGlzIHJlYWxseSBqdXN0IGZvciBwZWFjZSBvZiBtaW5kLiBUaGlzIGNoZWNrIGNh
biBiZSByZW1vdmVkIGlmIHdlIHdhbnQgdG8gc3VwcG9ydCBmYW5jeQotICAgICAgLy8gY2hyb21l
IGVmZmVjdHMgbGlrZSB0cmFuc3BhcmVudCBjb250cm9scyBmbG9hdGluZyBvdmVyIGNvbnRlbnQs
IHRyYW5zcGFyZW50IFdlYiBicm93c2VycywgYW5kCi0gICAgICAvLyB0aGluZ3MgbGlrZSB0aGF0
LCBhbmQgdGhlIHBlcmYgYnVncyBhcmUgZml4ZWQuCi0gICAgICBuc0NPTVB0cjxuc0lEb2NTaGVs
bFRyZWVJdGVtPiBjb250YWluZXIoZG9fUXVlcnlSZWZlcmVudChtQ29udGFpbmVyKSk7Ci0gICAg
ICBuc0NPTVB0cjxuc0lEb2NTaGVsbFRyZWVJdGVtPiBwYXJlbnRDb250YWluZXI7Ci0gICAgICBQ
UkludDMyIGl0ZW1UeXBlOwotICAgICAgaWYgKG5zbnVsbCA9PSBjb250YWluZXIKLSAgICAgICAg
ICB8fCBOU19GQUlMRUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJlZnMocGFyZW50
Q29udGFpbmVyKSkpCi0gICAgICAgICAgfHwgbnNudWxsID09IHBhcmVudENvbnRhaW5lcgotICAg
ICAgICAgIHx8IE5TX0ZBSUxFRChwYXJlbnRDb250YWluZXItPkdldEl0ZW1UeXBlKCZpdGVtVHlw
ZSkpCi0gICAgICAgICAgfHwgaXRlbVR5cGUgIT0gbnNJRG9jU2hlbGxUcmVlSXRlbTo6dHlwZUNv
bnRlbnQpIHsKLSAgICAgICAgY29udGFpbmVyVmlldyA9IG5zbnVsbDsKLSAgICAgIH0KLSAgICB9
Ci0gIH0KLQogICAvLyBDcmVhdGUgYSB2aWV3CiAgIG5zSVZpZXcqIHZpZXcgPSBtVmlld01hbmFn
ZXItPkNyZWF0ZVZpZXcodGJvdW5kcywgY29udGFpbmVyVmlldyk7CiAgIGlmICghdmlldykKICAg
ICByZXR1cm4gTlNfRVJST1JfT1VUX09GX01FTU9SWTsKIAorICBpZiAoY29udGFpbmVyVmlldykg
eworICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRhaW5lcihkb19RdWVyeVJl
ZmVyZW50KG1Db250YWluZXIpKTsKKyAgICBuc0NPTVB0cjxuc0lEb2NTaGVsbFRyZWVJdGVtPiBw
YXJlbnRDb250YWluZXI7CisgICAgUFJJbnQzMiBpdGVtVHlwZTsKKyAgICBpZiAobnNudWxsID09
IGNvbnRhaW5lcgorICAgICAgICB8fCBOU19GQUlMRUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0
dGVyX0FkZFJlZnMocGFyZW50Q29udGFpbmVyKSkpCisgICAgICAgIHx8IG5zbnVsbCA9PSBwYXJl
bnRDb250YWluZXIKKyAgICAgICAgfHwgTlNfRkFJTEVEKHBhcmVudENvbnRhaW5lci0+R2V0SXRl
bVR5cGUoJml0ZW1UeXBlKSkKKyAgICAgICAgfHwgaXRlbVR5cGUgIT0gbnNJRG9jU2hlbGxUcmVl
SXRlbTo6dHlwZUNvbnRlbnQpIHsKKyAgICAgIC8vIFRoZSBkb2N1bWVudCBjaGlsZHJlbiBvZiBj
aHJvbWUgZG9jdW1lbnRzIGdldCB0aGUgZGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLgorICAgICAg
dmlldy0+U2V0VXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcihQUl9UUlVFKTsKKyAgICB9CisgIH0K
KwogICAvLyBwYXNzIGluIGEgbmF0aXZlIHdpZGdldCB0byBiZSB0aGUgcGFyZW50IHdpZGdldCBP
TkxZIGlmIHRoZSB2aWV3IGhpZXJhcmNoeSB3aWxsIHN0YW5kIGFsb25lLgogICAvLyBvdGhlcndp
c2UgdGhlIHZpZXcgd2lsbCBmaW5kIGl0cyBvd24gcGFyZW50IHdpZGdldCBhbmQgImRvIHRoZSBy
aWdodCB0aGluZyIgdG8KICAgLy8gZXN0YWJsaXNoIGEgcGFyZW50L2NoaWxkIHdpZGdldCByZWxh
dGlvbnNoaXAKICAgcnYgPSB2aWV3LT5DcmVhdGVXaWRnZXQoa1dpZGdldENJRCwgbnNudWxsLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJWaWV3ICE9IG5zbnVsbCA/IG5zbnVs
bCA6IGFQYXJlbnRXaWRnZXQtPkdldE5hdGl2ZURhdGEoTlNfTkFUSVZFX1dJREdFVCksCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFBSX1RSVUUsIFBSX0ZBTFNFKTsKICAgaWYgKE5TX0ZBSUxF
RChydikpCiAgICAgcmV0dXJuIHJ2OwogCiAgIC8vIFNldHVwIGhpZXJhcmNoaWNhbCByZWxhdGlv
bnNoaXAgaW4gdmlldyBtYW5hZ2VyCiAgIG1WaWV3TWFuYWdlci0+U2V0Um9vdFZpZXcodmlldyk7
CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>220348</attachid>
            <date>2006-04-30 17:34:02 -0700</date>
            <delta_ts>2006-05-03 21:29:22 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>11649</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IHZpZXcvcHVibGljL25zSVZpZXcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9y
b2NhbGxhaGFuL21vemlsbGEtY3ZzLW1pcnJvci9tb3ppbGxhL3ZpZXcvcHVibGljL25zSVZpZXcu
aCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMy44OQpkaWZmIC11IC10IC1wIC0xIC0yIC1yMy44OSBu
c0lWaWV3LmgKLS0tIHZpZXcvcHVibGljL25zSVZpZXcuaAkxMSBOb3YgMjAwNSAxNDozNjoxMyAt
MDAwMAkzLjg5CisrKyB2aWV3L3B1YmxpYy9uc0lWaWV3LmgJMzAgQXByIDIwMDYgMjM6MTg6NDIg
LTAwMDAKQEAgLTgxLDI0ICs4MSwyNiBAQCBlbnVtIG5zVmlld1Zpc2liaWxpdHkgewogCiAvLyBJ
bmRpY2F0ZXMgdGhhdCB0aGUgdmlldyBpcyB1c2luZyBhdXRvIHotaW5kZXhpbmcKICNkZWZpbmUg
TlNfVklFV19GTEFHX0FVVE9fWklOREVYICAgICAgICAgIDB4MDAwNAogCiAvLyBJbmRpY2F0ZXMg
dGhhdCB0aGUgdmlldyBpcyBhIGZsb2F0aW5nIHZpZXcuCiAjZGVmaW5lIE5TX1ZJRVdfRkxBR19G
TE9BVElORyAgICAgICAgICAgICAweDAwMDgKIAogLy8gSWYgc2V0IGl0IGluZGljYXRlcyB0aGF0
IHRoaXMgdmlldyBzaG91bGQgYmUKIC8vIGRpc3BsYXllZCBhYm92ZSB6LWluZGV4OmF1dG8gdmll
d3MgaWYgdGhpcyB2aWV3IAogLy8gaXMgei1pbmRleDphdXRvIGFsc28KICNkZWZpbmUgTlNfVklF
V19GTEFHX1RPUE1PU1QgICAgICAgICAgICAgIDB4MDAxMAogCisjZGVmaW5lIE5TX1ZJRVdfRkxB
R19VU0VfREVGQVVMVF9CQUNLR1JPVU5EIDB4MDAyMAorCiBzdHJ1Y3QgbnNWaWV3WkluZGV4IHsK
ICAgUFJCb29sIG1Jc0F1dG87CiAgIFBSSW50MzIgbVpJbmRleDsKICAgUFJCb29sIG1Jc1RvcG1v
c3Q7CiAgIAogICBuc1ZpZXdaSW5kZXgoUFJCb29sIGFJc0F1dG8sIFBSSW50MzIgYVpJbmRleCwg
UFJCb29sIGFJc1RvcG1vc3QpCiAgICAgOiBtSXNBdXRvKGFJc0F1dG8pLCBtWkluZGV4KGFaSW5k
ZXgpLCBtSXNUb3Btb3N0KGFJc1RvcG1vc3QpIHt9CiB9OwogCiAvLy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAog
LyoqCkBAIC0yNzMsMjUgKzI3NSwzNyBAQCBwdWJsaWM6CiAgICAqLwogICB2b2lkIFNldEhhc1Vu
aWZvcm1CYWNrZ3JvdW5kKFBSQm9vbCBhVW5pZm9ybSkgewogICAgIGlmIChhVW5pZm9ybSkgewog
ICAgICAgbVZGbGFncyB8PSBOU19WSUVXX0ZMQUdfVU5JRk9STV9CQUNLR1JPVU5EOwogICAgIH0g
ZWxzZSB7CiAgICAgICBtVkZsYWdzICY9IH5OU19WSUVXX0ZMQUdfVU5JRk9STV9CQUNLR1JPVU5E
OwogICAgIH0KICAgfQogCiAgIFBSQm9vbCBIYXNVbmlmb3JtQmFja2dyb3VuZCgpIHsKICAgICBy
ZXR1cm4gbVZGbGFncyAmIE5TX1ZJRVdfRkxBR19VTklGT1JNX0JBQ0tHUk9VTkQ7CiAgIH0KKyAg
CisgIHZvaWQgU2V0VXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcihQUkJvb2wgYVVzZURlZmF1bHQp
IHsKKyAgICBpZiAoYVVzZURlZmF1bHQpIHsKKyAgICAgIG1WRmxhZ3MgfD0gTlNfVklFV19GTEFH
X1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQ7CisgICAgfSBlbHNlIHsKKyAgICAgIG1WRmxhZ3MgJj0g
fk5TX1ZJRVdfRkxBR19VU0VfREVGQVVMVF9CQUNLR1JPVU5EOworICAgIH0KKyAgfQogCisgIFBS
Qm9vbCBJc1VzaW5nRGVmYXVsdEJhY2tncm91bmRDb2xvcigpIHsKKyAgICByZXR1cm4gbVZGbGFn
cyAmIE5TX1ZJRVdfRkxBR19VU0VfREVGQVVMVF9CQUNLR1JPVU5EOworICB9CisgIAogICAvKioK
ICAgICogU2V0IHRoZSB2aWV3J3MgbGluayB0byBjbGllbnQgb3duZWQgZGF0YS4KICAgICogQHBh
cmFtIGFEYXRhIC0gZGF0YSB0byBhc3NvY2lhdGUgd2l0aCB2aWV3LiBuc251bGwgdG8gZGlzYXNz
b2NpYXRlCiAgICAqLwogICB2b2lkIFNldENsaWVudERhdGEodm9pZCAqYURhdGEpIHsgbUNsaWVu
dERhdGEgPSBhRGF0YTsgfQogCiAgIC8qKgogICAgKiBRdWVyeSB0aGUgdmlldyBmb3IgaXQncyBs
aW5rIHRvIGNsaWVudCBvd25lZCBkYXRhLgogICAgKiBAcmVzdWx0IGRhdGEgYXNzb2NpYXRlZCB3
aXRoIHZpZXcgb3IgbnNudWxsIGlmIHRoZXJlIGlzIG5vbmUuCiAgICAqLwogICB2b2lkKiBHZXRD
bGllbnREYXRhKCkgY29uc3QgeyByZXR1cm4gbUNsaWVudERhdGE7IH0KIApJbmRleDogbGF5b3V0
L2Jhc2UvbnNDU1NSZW5kZXJpbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL3JvY2Fs
bGFoYW4vbW96aWxsYS1jdnMtbWlycm9yL21vemlsbGEvbGF5b3V0L2Jhc2UvbnNDU1NSZW5kZXJp
bmcuY3BwLHYKcmV0cmlldmluZyByZXZpc2lvbiAzLjI4MwpkaWZmIC11IC10IC1wIC0xIC0yIC1y
My4yODMgbnNDU1NSZW5kZXJpbmcuY3BwCi0tLSBsYXlvdXQvYmFzZS9uc0NTU1JlbmRlcmluZy5j
cHAJMjUgQXByIDIwMDYgMDk6MTk6MjkgLTAwMDAJMy4yODMKKysrIGxheW91dC9iYXNlL25zQ1NT
UmVuZGVyaW5nLmNwcAkxIE1heSAyMDA2IDAwOjAzOjU3IC0wMDAwCkBAIC0yNjU5LDI0ICsyNjU5
LDI2IEBAIEZpbmRDYW52YXNCYWNrZ3JvdW5kKG5zSUZyYW1lKiBhRm9yRnJhbWUKICAgICAgICAg
ICB9CiAgICAgICAgIH0KICAgICAgIH0KICAgICB9CiAKICAgICAqYUJhY2tncm91bmQgPSByZXN1
bHQ7CiAgIH0gZWxzZSB7CiAgICAgLy8gVGhpcyBzaG91bGQgYWx3YXlzIGdpdmUgdHJhbnNwYXJl
bnQsIHNvIHdlJ2xsIGZpbGwgaXQgaW4gd2l0aCB0aGUKICAgICAvLyBkZWZhdWx0IGNvbG9yIGlm
IG5lZWRlZC4gIFRoaXMgc2VlbXMgdG8gaGFwcGVuIGEgYml0IHdoaWxlIGEgcGFnZSBpcwogICAg
IC8vIGJlaW5nIGxvYWRlZC4KICAgICAqYUJhY2tncm91bmQgPSBhRm9yRnJhbWUtPkdldFN0eWxl
QmFja2dyb3VuZCgpOwogICB9CiAgIAogICByZXR1cm4gUFJfVFJVRTsKIH0KIAogaW5saW5lIFBS
Qm9vbAogRmluZEVsZW1lbnRCYWNrZ3JvdW5kKG5zSUZyYW1lKiBhRm9yRnJhbWUsCiAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgbnNTdHlsZUJhY2tncm91bmQqKiBhQmFja2dyb3VuZCkKIHsK
ICAgbnNJRnJhbWUgKnBhcmVudEZyYW1lID0gYUZvckZyYW1lLT5HZXRQYXJlbnQoKTsKICAgLy8g
WFhYbGRiIFdlIHNob3VsZG4ndCBoYXZlIHRvIG51bGwtY2hlY2sgfHBhcmVudEZyYW1lfCBoZXJl
LgogICBpZiAocGFyZW50RnJhbWUgJiYgSXNDYW52YXNGcmFtZShwYXJlbnRGcmFtZSkgPT0gcGFy
ZW50RnJhbWUpIHsKICAgICAvLyBDaGVjayB0aGF0IHdlJ3JlIHJlYWxseSB0aGUgcm9vdCAocmF0
aGVyIHRoYW4gaW4gYW5vdGhlciBjaGlsZCBsaXN0KS4KQEAgLTI3ODAsMzcgKzI3ODIsMzYgQEAg
bnNDU1NSZW5kZXJpbmc6OlBhaW50QmFja2dyb3VuZChuc1ByZXNDbwogICAgICAgICAgICAgICAg
ICAgICAgICAgICBhRGlydHlSZWN0LCBhQm9yZGVyQXJlYSwgKmNvbG9yLCBhQm9yZGVyLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICBhUGFkZGluZywgYVVzZVByaW50U2V0dGluZ3MsIGFCR0Ns
aXBSZWN0KTsKICAgICByZXR1cm47CiAgIH0KIAogICBuc1N0eWxlQmFja2dyb3VuZCBjYW52YXND
b2xvcigqY29sb3IpOwogCiAgIG5zSVZpZXdNYW5hZ2VyKiB2bSA9IGFQcmVzQ29udGV4dC0+R2V0
Vmlld01hbmFnZXIoKTsKIAogICBpZiAoY2FudmFzQ29sb3IubUJhY2tncm91bmRGbGFncyAmIE5T
X1NUWUxFX0JHX0NPTE9SX1RSQU5TUEFSRU5UKSB7CiAgICAgbnNJVmlldyogcm9vdFZpZXc7CiAg
ICAgdm0tPkdldFJvb3RWaWV3KHJvb3RWaWV3KTsKLSAgICBpZiAoIXJvb3RWaWV3LT5HZXRQYXJl
bnQoKSkgewotICAgICAgUFJCb29sIHdpZGdldElzVHJhbnNsdWNlbnQgPSBQUl9GQUxTRTsKKyAg
ICBQUkJvb2wgdXNlRGVmYXVsdEJhY2tncm91bmRDb2xvciA9IHJvb3RWaWV3LT5Jc1VzaW5nRGVm
YXVsdEJhY2tncm91bmRDb2xvcigpOworICAgIGlmICghcm9vdFZpZXctPkdldFBhcmVudCgpICYm
IHJvb3RWaWV3LT5IYXNXaWRnZXQoKSkgeworICAgICAgUFJCb29sIHdpZGdldElzVHJhbnNsdWNl
bnQ7CisgICAgICByb290Vmlldy0+R2V0V2lkZ2V0KCktPkdldFdpbmRvd1RyYW5zbHVjZW5jeSh3
aWRnZXRJc1RyYW5zbHVjZW50KTsKKyAgICAgIHVzZURlZmF1bHRCYWNrZ3JvdW5kQ29sb3IgPSAh
d2lkZ2V0SXNUcmFuc2x1Y2VudDsKKyAgICB9CiAKLSAgICAgIGlmIChyb290Vmlldy0+SGFzV2lk
Z2V0KCkpIHsKLSAgICAgICAgcm9vdFZpZXctPkdldFdpZGdldCgpLT5HZXRXaW5kb3dUcmFuc2x1
Y2VuY3kod2lkZ2V0SXNUcmFuc2x1Y2VudCk7Ci0gICAgICB9Ci0gICAgICAKLSAgICAgIGlmICgh
d2lkZ2V0SXNUcmFuc2x1Y2VudCkgewotICAgICAgICAvLyBFbnN1cmUgdGhhdCB3ZSBhbHdheXMg
cGFpbnQgYSBjb2xvciBmb3IgdGhlIHJvb3QgKGluIGNhc2UgdGhlcmUncwotICAgICAgICAvLyBu
byBiYWNrZ3JvdW5kIGF0IGFsbCBvciBhIHBhcnRseSB0cmFuc3BhcmVudCBpbWFnZSkuCi0gICAg
ICAgIGNhbnZhc0NvbG9yLm1CYWNrZ3JvdW5kRmxhZ3MgJj0gfk5TX1NUWUxFX0JHX0NPTE9SX1RS
QU5TUEFSRU5UOwotICAgICAgICBjYW52YXNDb2xvci5tQmFja2dyb3VuZENvbG9yID0gYVByZXND
b250ZXh0LT5EZWZhdWx0QmFja2dyb3VuZENvbG9yKCk7Ci0gICAgICB9CisgICAgaWYgKHVzZURl
ZmF1bHRCYWNrZ3JvdW5kQ29sb3IpIHsKKyAgICAgIC8vIEVuc3VyZSB0aGF0IHdlIGFsd2F5cyBw
YWludCBhIGNvbG9yIGZvciB0aGUgcm9vdCAoaW4gY2FzZSB0aGVyZSdzCisgICAgICAvLyBubyBi
YWNrZ3JvdW5kIGF0IGFsbCBvciBhIHBhcnRseSB0cmFuc3BhcmVudCBpbWFnZSkuCisgICAgICBj
YW52YXNDb2xvci5tQmFja2dyb3VuZEZsYWdzICY9IH5OU19TVFlMRV9CR19DT0xPUl9UUkFOU1BB
UkVOVDsKKyAgICAgIGNhbnZhc0NvbG9yLm1CYWNrZ3JvdW5kQ29sb3IgPSBhUHJlc0NvbnRleHQt
PkRlZmF1bHRCYWNrZ3JvdW5kQ29sb3IoKTsKICAgICB9CiAgIH0KIAogICB2bS0+U2V0RGVmYXVs
dEJhY2tncm91bmRDb2xvcihjYW52YXNDb2xvci5tQmFja2dyb3VuZENvbG9yKTsKIAogICAvLyBT
aW5jZSBuc0hUTUxDb250YWluZXJGcmFtZTo6Q3JlYXRlVmlld0ZvckZyYW1lIG1pZ2h0IGhhdmUg
Y3JlYXRlZAogICAvLyB0aGUgdmlldyBiZWZvcmUgd2Uga25ldyBhYm91dCB0aGUgY2hpbGQgd2l0
aCB0aGUgZml4ZWQgYmFja2dyb3VuZAogICAvLyBhdHRhY2htZW50IChyb290IG9yIEJPRFkpIG9y
IHRoZSBzdHlsZXNoZWV0IHNwZWNpZnlpbmcgdGhhdAogICAvLyBhdHRhY2htZW50LCBzZXQgdGhl
IEJpdEJsdCBmbGFnIGhlcmUgYXMgd2VsbC4KICAgaWYgKGNhbnZhc0NvbG9yLm1CYWNrZ3JvdW5k
QXR0YWNobWVudCA9PSBOU19TVFlMRV9CR19BVFRBQ0hNRU5UX0ZJWEVEKSB7CiAgICAgbnNJVmll
dyAqdmlldyA9IGFGb3JGcmFtZS0+R2V0VmlldygpOwogICAgIGlmICh2aWV3KQpJbmRleDogbGF5
b3V0L2Jhc2UvbnNEaXNwbGF5TGlzdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUvcm9j
YWxsYWhhbi9tb3ppbGxhLWN2cy1taXJyb3IvbW96aWxsYS9sYXlvdXQvYmFzZS9uc0Rpc3BsYXlM
aXN0LmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMy4xMwpkaWZmIC11IC10IC1wIC0xIC0yIC1y
My4xMyBuc0Rpc3BsYXlMaXN0LmNwcAotLS0gbGF5b3V0L2Jhc2UvbnNEaXNwbGF5TGlzdC5jcHAJ
MjEgQXByIDIwMDYgMTk6MTM6NTggLTAwMDAJMy4xMworKysgbGF5b3V0L2Jhc2UvbnNEaXNwbGF5
TGlzdC5jcHAJMSBNYXkgMjAwNiAwMDoxMTozNyAtMDAwMApAQCAtNDI5LDMyICs0MjksNDMgQEAg
SGFzTm9uWmVyb0JvcmRlclJhZGl1cyhjb25zdCBuc1N0eWxlQm9yZAogCiAgIHJldHVybiBQUl9G
QUxTRTsKIH0KIAogUFJCb29sCiBuc0Rpc3BsYXlCYWNrZ3JvdW5kOjpJc09wYXF1ZShuc0Rpc3Bs
YXlMaXN0QnVpbGRlciogYUJ1aWxkZXIpIHsKICAgLy8gdGhlbWUgYmFja2dyb3VuZCBvdmVycmlk
ZXMgYW55IG90aGVyIGJhY2tncm91bmQKICAgaWYgKG1GcmFtZS0+SXNUaGVtZWQoKSkKICAgICBy
ZXR1cm4gUFJfRkFMU0U7CiAKICAgUFJCb29sIGlzQ2FudmFzOwogICBjb25zdCBuc1N0eWxlQmFj
a2dyb3VuZCogYmc7CisgIG5zUHJlc0NvbnRleHQqIHByZXNDb250ZXh0ID0gbUZyYW1lLT5HZXRQ
cmVzQ29udGV4dCgpOwogICBQUkJvb2wgaGFzQkcgPQotICAgIG5zQ1NTUmVuZGVyaW5nOjpGaW5k
QmFja2dyb3VuZChtRnJhbWUtPkdldFByZXNDb250ZXh0KCksIG1GcmFtZSwgJmJnLCAmaXNDYW52
YXMpOwotICBpZiAoIWhhc0JHIHx8IChiZy0+bUJhY2tncm91bmRGbGFncyAmIE5TX1NUWUxFX0JH
X0NPTE9SX1RSQU5TUEFSRU5UKSB8fAotICAgICAgYmctPm1CYWNrZ3JvdW5kQ2xpcCAhPSBOU19T
VFlMRV9CR19DTElQX0JPUkRFUiB8fAotICAgICAgSGFzTm9uWmVyb0JvcmRlclJhZGl1cyhtRnJh
bWUtPkdldFN0eWxlQm9yZGVyKCkpIHx8Ci0gICAgICBOU19HRVRfQShiZy0+bUJhY2tncm91bmRD
b2xvcikgPCAyNTUpCisgICAgbnNDU1NSZW5kZXJpbmc6OkZpbmRCYWNrZ3JvdW5kKHByZXNDb250
ZXh0LCBtRnJhbWUsICZiZywgJmlzQ2FudmFzKTsKKyAgaWYgKCFoYXNCRykKICAgICByZXR1cm4g
UFJfRkFMU0U7Ci0gIHJldHVybiBQUl9UUlVFOworICBQUkJvb2wgaXNUcmFuc2x1Y2VudENvbG9y
OworICBpZiAoaXNDYW52YXMpIHsKKyAgICBuc0lWaWV3KiByb290VmlldzsKKyAgICBwcmVzQ29u
dGV4dC0+R2V0Vmlld01hbmFnZXIoKS0+R2V0Um9vdFZpZXcocm9vdFZpZXcpOworICAgIGlmIChy
b290Vmlldy0+SXNVc2luZ0RlZmF1bHRCYWNrZ3JvdW5kQ29sb3IoKSkgeworICAgICAgaXNUcmFu
c2x1Y2VudENvbG9yID0gTlNfR0VUX0EocHJlc0NvbnRleHQtPkRlZmF1bHRCYWNrZ3JvdW5kQ29s
b3IoKSkgPCAyNTU7CisgICAgfQorICB9IGVsc2UgeworICAgIGlzVHJhbnNsdWNlbnRDb2xvciA9
IE5TX0dFVF9BKGJnLT5tQmFja2dyb3VuZENvbG9yKSA8IDI1NSB8fAorICAgICAgKGJnLT5tQmFj
a2dyb3VuZEZsYWdzICYgTlNfU1RZTEVfQkdfQ09MT1JfVFJBTlNQQVJFTlQpOworICB9CisgIHJl
dHVybiAhaXNUcmFuc2x1Y2VudENvbG9yICYmCisgICAgYmctPm1CYWNrZ3JvdW5kQ2xpcCA9PSBO
U19TVFlMRV9CR19DTElQX0JPUkRFUiAmJgorICAgICFIYXNOb25aZXJvQm9yZGVyUmFkaXVzKG1G
cmFtZS0+R2V0U3R5bGVCb3JkZXIoKSk7CiB9CiAKIFBSQm9vbAogbnNEaXNwbGF5QmFja2dyb3Vu
ZDo6SXNVbmlmb3JtKG5zRGlzcGxheUxpc3RCdWlsZGVyKiBhQnVpbGRlcikgewogICAvLyB0aGVt
ZSBiYWNrZ3JvdW5kIG92ZXJyaWRlcyBhbnkgb3RoZXIgYmFja2dyb3VuZAogICBpZiAobUZyYW1l
LT5Jc1RoZW1lZCgpKQogICAgIHJldHVybiBQUl9GQUxTRTsKIAogICBQUkJvb2wgaXNDYW52YXM7
CiAgIGNvbnN0IG5zU3R5bGVCYWNrZ3JvdW5kKiBiZzsKICAgUFJCb29sIGhhc0JHID0KICAgICBu
c0NTU1JlbmRlcmluZzo6RmluZEJhY2tncm91bmQobUZyYW1lLT5HZXRQcmVzQ29udGV4dCgpLCBt
RnJhbWUsICZiZywgJmlzQ2FudmFzKTsKSW5kZXg6IGxheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL3JvY2FsbGFoYW4vbW96aWxsYS1jdnMt
bWlycm9yL21vemlsbGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAsdgpyZXRyaWV2
aW5nIHJldmlzaW9uIDEuNDgxCmRpZmYgLXUgLXQgLXAgLTEgLTIgLXIxLjQ4MSBuc0RvY3VtZW50
Vmlld2VyLmNwcAotLS0gbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAJMTkgQXByIDIw
MDYgMjE6MTQ6NTcgLTAwMDAJMS40ODEKKysrIGxheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIu
Y3BwCTMwIEFwciAyMDA2IDIzOjI1OjQ5IC0wMDAwCkBAIC0yMjg1LDYzICsyMjg1LDQ3IEBAIERv
Y3VtZW50Vmlld2VySW1wbDo6TWFrZVdpbmRvdyhuc0lXaWRnZXQKICAgaWYgKE5TX0ZBSUxFRChy
dikpCiAgICAgcmV0dXJuIHJ2OwogCiAgIC8vIFJlc2V0IHRoZSBib3VuZHMgb2Zmc2V0IHNvIHRo
ZSByb290IHZpZXcgaXMgc2V0IHRvIDAsMC4gVGhlCiAgIC8vIG9mZnNldCBpcyBzcGVjaWZpZWQg
aW4gbnNJVmlld01hbmFnZXI6OkluaXQgYWJvdmUuCiAgIC8vIEJlc2lkZXMsIGxheW91dCB3aWxs
IHJlc2V0IHRoZSByb290IHZpZXcgdG8gKDAsMCkgZHVyaW5nIHJlZmxvdywKICAgLy8gc28gY2hh
bmdpbmcgaXQgdG8gMCwwIGVsaW1pbmF0ZXMgcGxhY2luZyB0aGUgcm9vdCB2aWV3IGluIHRoZQog
ICAvLyB3cm9uZyBwbGFjZSBpbml0aWFsbHkuCiAgIHRib3VuZHMueCA9IDA7CiAgIHRib3VuZHMu
eSA9IDA7CiAKICAgLy8gQ3JlYXRlIGEgY2hpbGQgd2luZG93IG9mIHRoZSBwYXJlbnQgdGhhdCBp
cyBvdXIgInJvb3Qgdmlldy93aW5kb3ciCi0gIC8vIGlmIGFQYXJlbnRXaWRnZXQgaGFzIGEgdmll
dywgd2UnbGwgaG9vayBvdXIgdmlldyBtYW5hZ2VyIHVwIHRvIGl0cyB2aWV3IHRyZWUKICAgbnNJ
VmlldyogY29udGFpbmVyVmlldyA9IG5zVmlldzo6R2V0Vmlld0ZvcihhUGFyZW50V2lkZ2V0KTsK
IAotICBpZiAoY29udGFpbmVyVmlldykgewotICAgIC8vIHNlZSBpZiB0aGUgY29udGFpbmVyVmll
dyBoYXMgYWxyZWFkeSBiZWVuIGhvb2tlZCBpbnRvIGEgZm9yZWlnbiB2aWV3IG1hbmFnZXIgaGll
cmFyY2h5Ci0gICAgLy8gaWYgaXQgaGFzLCB0aGVuIHdlIGhhdmUgdG8gaG9vayBpbnRvIHRoZSBo
aWVyYXJjaHkgdG9vIG90aGVyd2lzZSBiYWQgdGhpbmdzIHdpbGwgaGFwcGVuLgotICAgIG5zSVZp
ZXdNYW5hZ2VyKiBjb250YWluZXJWTSA9IGNvbnRhaW5lclZpZXctPkdldFZpZXdNYW5hZ2VyKCk7
Ci0gICAgbnNJVmlldyogcFZpZXcgPSBjb250YWluZXJWaWV3OwotICAgIGRvIHsKLSAgICAgIHBW
aWV3ID0gcFZpZXctPkdldFBhcmVudCgpOwotICAgIH0gd2hpbGUgKHBWaWV3ICYmIHBWaWV3LT5H
ZXRWaWV3TWFuYWdlcigpID09IGNvbnRhaW5lclZNKTsKLQotICAgIGlmICghcFZpZXcpIHsKLSAg
ICAgIC8vIE9LLCBzbyB0aGUgY29udGFpbmVyIGlzIG5vdCBhbHJlYWR5IGhvb2tlZCB1cCBpbnRv
IGEgZm9yZWlnbiB2aWV3IG1hbmFnZXIgaGllcmFyY2h5LgotICAgICAgLy8gVGhhdCBtZWFucyB3
ZSBjYW4gY2hvb3NlIG5vdCB0byBob29rIG91cnNlbHZlcyB1cC4KLSAgICAgIC8vCi0gICAgICAv
LyBJZiB0aGUgcGFyZW50IGNvbnRhaW5lciBpcyBhIGNocm9tZSBzaGVsbCB0aGVuIHdlIHdvbid0
IGhvb2sgaW50byBpdHMgdmlldwotICAgICAgLy8gdHJlZS4gVGhpcyB3aWxsIGltcHJvdmUgcGVy
Zm9ybWFuY2UgYSBsaXR0bGUgYml0IChlc3BlY2lhbGx5IGdpdmVuIHNjcm9sbGluZy9wYWludGlu
ZyBwZXJmIGJ1Z3MpCi0gICAgICAvLyBidXQgaXMgcmVhbGx5IGp1c3QgZm9yIHBlYWNlIG9mIG1p
bmQuIFRoaXMgY2hlY2sgY2FuIGJlIHJlbW92ZWQgaWYgd2Ugd2FudCB0byBzdXBwb3J0IGZhbmN5
Ci0gICAgICAvLyBjaHJvbWUgZWZmZWN0cyBsaWtlIHRyYW5zcGFyZW50IGNvbnRyb2xzIGZsb2F0
aW5nIG92ZXIgY29udGVudCwgdHJhbnNwYXJlbnQgV2ViIGJyb3dzZXJzLCBhbmQKLSAgICAgIC8v
IHRoaW5ncyBsaWtlIHRoYXQsIGFuZCB0aGUgcGVyZiBidWdzIGFyZSBmaXhlZC4KLSAgICAgIG5z
Q09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRhaW5lcihkb19RdWVyeVJlZmVyZW50KG1D
b250YWluZXIpKTsKLSAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IHBhcmVudENv
bnRhaW5lcjsKLSAgICAgIFBSSW50MzIgaXRlbVR5cGU7Ci0gICAgICBpZiAobnNudWxsID09IGNv
bnRhaW5lcgotICAgICAgICAgIHx8IE5TX0ZBSUxFRChjb250YWluZXItPkdldFBhcmVudChnZXR0
ZXJfQWRkUmVmcyhwYXJlbnRDb250YWluZXIpKSkKLSAgICAgICAgICB8fCBuc251bGwgPT0gcGFy
ZW50Q29udGFpbmVyCi0gICAgICAgICAgfHwgTlNfRkFJTEVEKHBhcmVudENvbnRhaW5lci0+R2V0
SXRlbVR5cGUoJml0ZW1UeXBlKSkKLSAgICAgICAgICB8fCBpdGVtVHlwZSAhPSBuc0lEb2NTaGVs
bFRyZWVJdGVtOjp0eXBlQ29udGVudCkgewotICAgICAgICBjb250YWluZXJWaWV3ID0gbnNudWxs
OwotICAgICAgfQotICAgIH0KLSAgfQotCiAgIC8vIENyZWF0ZSBhIHZpZXcKICAgbnNJVmlldyog
dmlldyA9IG1WaWV3TWFuYWdlci0+Q3JlYXRlVmlldyh0Ym91bmRzLCBjb250YWluZXJWaWV3KTsK
ICAgaWYgKCF2aWV3KQogICAgIHJldHVybiBOU19FUlJPUl9PVVRfT0ZfTUVNT1JZOwogCisgIGlm
IChjb250YWluZXJWaWV3KSB7CisgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gY29u
dGFpbmVyKGRvX1F1ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcikpOworICAgIG5zQ09NUHRyPG5zSURv
Y1NoZWxsVHJlZUl0ZW0+IHBhcmVudENvbnRhaW5lcjsKKyAgICBQUkludDMyIGl0ZW1UeXBlOwor
ICAgIFBSSW50MzIgcGFyZW50SXRlbVR5cGU7CisgICAgaWYgKGNvbnRhaW5lcgorICAgICAgICAm
JiBOU19TVUNDRUVERUQoY29udGFpbmVyLT5HZXRJdGVtVHlwZSgmaXRlbVR5cGUpKQorICAgICAg
ICAmJiBpdGVtVHlwZSA9PSBuc0lEb2NTaGVsbFRyZWVJdGVtOjp0eXBlQ29udGVudAorICAgICAg
ICAmJiBOU19TVUNDRUVERUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJlZnMocGFy
ZW50Q29udGFpbmVyKSkpCisgICAgICAgICYmIHBhcmVudENvbnRhaW5lcgorICAgICAgICAmJiBO
U19TVUNDRUVERUQocGFyZW50Q29udGFpbmVyLT5HZXRJdGVtVHlwZSgmcGFyZW50SXRlbVR5cGUp
KQorICAgICAgICAmJiBwYXJlbnRJdGVtVHlwZSAhPSBuc0lEb2NTaGVsbFRyZWVJdGVtOjp0eXBl
Q29udGVudCkgeworICAgICAgdmlldy0+U2V0VXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcihQUl9U
UlVFKTsKKyAgICB9CisgIH0KKwogICAvLyBwYXNzIGluIGEgbmF0aXZlIHdpZGdldCB0byBiZSB0
aGUgcGFyZW50IHdpZGdldCBPTkxZIGlmIHRoZSB2aWV3IGhpZXJhcmNoeSB3aWxsIHN0YW5kIGFs
b25lLgogICAvLyBvdGhlcndpc2UgdGhlIHZpZXcgd2lsbCBmaW5kIGl0cyBvd24gcGFyZW50IHdp
ZGdldCBhbmQgImRvIHRoZSByaWdodCB0aGluZyIgdG8KICAgLy8gZXN0YWJsaXNoIGEgcGFyZW50
L2NoaWxkIHdpZGdldCByZWxhdGlvbnNoaXAKICAgcnYgPSB2aWV3LT5DcmVhdGVXaWRnZXQoa1dp
ZGdldENJRCwgbnNudWxsLAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJWaWV3
ICE9IG5zbnVsbCA/IG5zbnVsbCA6IGFQYXJlbnRXaWRnZXQtPkdldE5hdGl2ZURhdGEoTlNfTkFU
SVZFX1dJREdFVCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBSX1RSVUUsIFBSX0ZBTFNF
KTsKICAgaWYgKE5TX0ZBSUxFRChydikpCiAgICAgcmV0dXJuIHJ2OwogCiAgIC8vIFNldHVwIGhp
ZXJhcmNoaWNhbCByZWxhdGlvbnNoaXAgaW4gdmlldyBtYW5hZ2VyCiAgIG1WaWV3TWFuYWdlci0+
U2V0Um9vdFZpZXcodmlldyk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>220737</attachid>
            <date>2006-05-03 21:29:22 -0700</date>
            <delta_ts>2010-08-10 14:38:49 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>10891</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IG1vemlsbGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQpSQ1MgZmlsZTogL2N2c3Jvb3QvbW96aWxsYS9sYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2Vy
LmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS40ODEKcmV0cmlldmluZyByZXZpc2lvbiAxLjQ4
MgpkaWZmIC11IC10IC1wIC0xIC0yIC1yMS40ODEgLXIxLjQ4MgotLS0gbW96aWxsYS9sYXlvdXQv
YmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcAkxOSBBcHIgMjAwNiAyMToxNDo1NyAtMDAwMAkxLjQ4
MQorKysgbW96aWxsYS9sYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcAk0IE1heSAyMDA2
IDAzOjQ2OjE5IC0wMDAwCTEuNDgyCkBAIC0yMjg1LDYzICsyMjg1LDQ3IEBAIERvY3VtZW50Vmll
d2VySW1wbDo6TWFrZVdpbmRvdyhuc0lXaWRnZXQKICAgaWYgKE5TX0ZBSUxFRChydikpCiAgICAg
cmV0dXJuIHJ2OwogCiAgIC8vIFJlc2V0IHRoZSBib3VuZHMgb2Zmc2V0IHNvIHRoZSByb290IHZp
ZXcgaXMgc2V0IHRvIDAsMC4gVGhlCiAgIC8vIG9mZnNldCBpcyBzcGVjaWZpZWQgaW4gbnNJVmll
d01hbmFnZXI6OkluaXQgYWJvdmUuCiAgIC8vIEJlc2lkZXMsIGxheW91dCB3aWxsIHJlc2V0IHRo
ZSByb290IHZpZXcgdG8gKDAsMCkgZHVyaW5nIHJlZmxvdywKICAgLy8gc28gY2hhbmdpbmcgaXQg
dG8gMCwwIGVsaW1pbmF0ZXMgcGxhY2luZyB0aGUgcm9vdCB2aWV3IGluIHRoZQogICAvLyB3cm9u
ZyBwbGFjZSBpbml0aWFsbHkuCiAgIHRib3VuZHMueCA9IDA7CiAgIHRib3VuZHMueSA9IDA7CiAK
ICAgLy8gQ3JlYXRlIGEgY2hpbGQgd2luZG93IG9mIHRoZSBwYXJlbnQgdGhhdCBpcyBvdXIgInJv
b3Qgdmlldy93aW5kb3ciCi0gIC8vIGlmIGFQYXJlbnRXaWRnZXQgaGFzIGEgdmlldywgd2UnbGwg
aG9vayBvdXIgdmlldyBtYW5hZ2VyIHVwIHRvIGl0cyB2aWV3IHRyZWUKICAgbnNJVmlldyogY29u
dGFpbmVyVmlldyA9IG5zVmlldzo6R2V0Vmlld0ZvcihhUGFyZW50V2lkZ2V0KTsKIAotICBpZiAo
Y29udGFpbmVyVmlldykgewotICAgIC8vIHNlZSBpZiB0aGUgY29udGFpbmVyVmlldyBoYXMgYWxy
ZWFkeSBiZWVuIGhvb2tlZCBpbnRvIGEgZm9yZWlnbiB2aWV3IG1hbmFnZXIgaGllcmFyY2h5Ci0g
ICAgLy8gaWYgaXQgaGFzLCB0aGVuIHdlIGhhdmUgdG8gaG9vayBpbnRvIHRoZSBoaWVyYXJjaHkg
dG9vIG90aGVyd2lzZSBiYWQgdGhpbmdzIHdpbGwgaGFwcGVuLgotICAgIG5zSVZpZXdNYW5hZ2Vy
KiBjb250YWluZXJWTSA9IGNvbnRhaW5lclZpZXctPkdldFZpZXdNYW5hZ2VyKCk7Ci0gICAgbnNJ
VmlldyogcFZpZXcgPSBjb250YWluZXJWaWV3OwotICAgIGRvIHsKLSAgICAgIHBWaWV3ID0gcFZp
ZXctPkdldFBhcmVudCgpOwotICAgIH0gd2hpbGUgKHBWaWV3ICYmIHBWaWV3LT5HZXRWaWV3TWFu
YWdlcigpID09IGNvbnRhaW5lclZNKTsKLQotICAgIGlmICghcFZpZXcpIHsKLSAgICAgIC8vIE9L
LCBzbyB0aGUgY29udGFpbmVyIGlzIG5vdCBhbHJlYWR5IGhvb2tlZCB1cCBpbnRvIGEgZm9yZWln
biB2aWV3IG1hbmFnZXIgaGllcmFyY2h5LgotICAgICAgLy8gVGhhdCBtZWFucyB3ZSBjYW4gY2hv
b3NlIG5vdCB0byBob29rIG91cnNlbHZlcyB1cC4KLSAgICAgIC8vCi0gICAgICAvLyBJZiB0aGUg
cGFyZW50IGNvbnRhaW5lciBpcyBhIGNocm9tZSBzaGVsbCB0aGVuIHdlIHdvbid0IGhvb2sgaW50
byBpdHMgdmlldwotICAgICAgLy8gdHJlZS4gVGhpcyB3aWxsIGltcHJvdmUgcGVyZm9ybWFuY2Ug
YSBsaXR0bGUgYml0IChlc3BlY2lhbGx5IGdpdmVuIHNjcm9sbGluZy9wYWludGluZyBwZXJmIGJ1
Z3MpCi0gICAgICAvLyBidXQgaXMgcmVhbGx5IGp1c3QgZm9yIHBlYWNlIG9mIG1pbmQuIFRoaXMg
Y2hlY2sgY2FuIGJlIHJlbW92ZWQgaWYgd2Ugd2FudCB0byBzdXBwb3J0IGZhbmN5Ci0gICAgICAv
LyBjaHJvbWUgZWZmZWN0cyBsaWtlIHRyYW5zcGFyZW50IGNvbnRyb2xzIGZsb2F0aW5nIG92ZXIg
Y29udGVudCwgdHJhbnNwYXJlbnQgV2ViIGJyb3dzZXJzLCBhbmQKLSAgICAgIC8vIHRoaW5ncyBs
aWtlIHRoYXQsIGFuZCB0aGUgcGVyZiBidWdzIGFyZSBmaXhlZC4KLSAgICAgIG5zQ09NUHRyPG5z
SURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRhaW5lcihkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIp
KTsKLSAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IHBhcmVudENvbnRhaW5lcjsK
LSAgICAgIFBSSW50MzIgaXRlbVR5cGU7Ci0gICAgICBpZiAobnNudWxsID09IGNvbnRhaW5lcgot
ICAgICAgICAgIHx8IE5TX0ZBSUxFRChjb250YWluZXItPkdldFBhcmVudChnZXR0ZXJfQWRkUmVm
cyhwYXJlbnRDb250YWluZXIpKSkKLSAgICAgICAgICB8fCBuc251bGwgPT0gcGFyZW50Q29udGFp
bmVyCi0gICAgICAgICAgfHwgTlNfRkFJTEVEKHBhcmVudENvbnRhaW5lci0+R2V0SXRlbVR5cGUo
Jml0ZW1UeXBlKSkKLSAgICAgICAgICB8fCBpdGVtVHlwZSAhPSBuc0lEb2NTaGVsbFRyZWVJdGVt
Ojp0eXBlQ29udGVudCkgewotICAgICAgICBjb250YWluZXJWaWV3ID0gbnNudWxsOwotICAgICAg
fQotICAgIH0KLSAgfQotCiAgIC8vIENyZWF0ZSBhIHZpZXcKICAgbnNJVmlldyogdmlldyA9IG1W
aWV3TWFuYWdlci0+Q3JlYXRlVmlldyh0Ym91bmRzLCBjb250YWluZXJWaWV3KTsKICAgaWYgKCF2
aWV3KQogICAgIHJldHVybiBOU19FUlJPUl9PVVRfT0ZfTUVNT1JZOwogCisgIGlmIChjb250YWlu
ZXJWaWV3KSB7CisgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gY29udGFpbmVyKGRv
X1F1ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcikpOworICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJl
ZUl0ZW0+IHBhcmVudENvbnRhaW5lcjsKKyAgICBQUkludDMyIGl0ZW1UeXBlOworICAgIFBSSW50
MzIgcGFyZW50SXRlbVR5cGU7CisgICAgaWYgKGNvbnRhaW5lcgorICAgICAgICAmJiBOU19TVUND
RUVERUQoY29udGFpbmVyLT5HZXRJdGVtVHlwZSgmaXRlbVR5cGUpKQorICAgICAgICAmJiBpdGVt
VHlwZSA9PSBuc0lEb2NTaGVsbFRyZWVJdGVtOjp0eXBlQ29udGVudAorICAgICAgICAmJiBOU19T
VUNDRUVERUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJlZnMocGFyZW50Q29udGFp
bmVyKSkpCisgICAgICAgICYmIHBhcmVudENvbnRhaW5lcgorICAgICAgICAmJiBOU19TVUNDRUVE
RUQocGFyZW50Q29udGFpbmVyLT5HZXRJdGVtVHlwZSgmcGFyZW50SXRlbVR5cGUpKQorICAgICAg
ICAmJiBwYXJlbnRJdGVtVHlwZSAhPSBuc0lEb2NTaGVsbFRyZWVJdGVtOjp0eXBlQ29udGVudCkg
eworICAgICAgdmlldy0+U2V0VXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcihQUl9UUlVFKTsKKyAg
ICB9CisgIH0KKwogICAvLyBwYXNzIGluIGEgbmF0aXZlIHdpZGdldCB0byBiZSB0aGUgcGFyZW50
IHdpZGdldCBPTkxZIGlmIHRoZSB2aWV3IGhpZXJhcmNoeSB3aWxsIHN0YW5kIGFsb25lLgogICAv
LyBvdGhlcndpc2UgdGhlIHZpZXcgd2lsbCBmaW5kIGl0cyBvd24gcGFyZW50IHdpZGdldCBhbmQg
ImRvIHRoZSByaWdodCB0aGluZyIgdG8KICAgLy8gZXN0YWJsaXNoIGEgcGFyZW50L2NoaWxkIHdp
ZGdldCByZWxhdGlvbnNoaXAKICAgcnYgPSB2aWV3LT5DcmVhdGVXaWRnZXQoa1dpZGdldENJRCwg
bnNudWxsLAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJWaWV3ICE9IG5zbnVs
bCA/IG5zbnVsbCA6IGFQYXJlbnRXaWRnZXQtPkdldE5hdGl2ZURhdGEoTlNfTkFUSVZFX1dJREdF
VCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBSX1RSVUUsIFBSX0ZBTFNFKTsKICAgaWYg
KE5TX0ZBSUxFRChydikpCiAgICAgcmV0dXJuIHJ2OwogCiAgIC8vIFNldHVwIGhpZXJhcmNoaWNh
bCByZWxhdGlvbnNoaXAgaW4gdmlldyBtYW5hZ2VyCiAgIG1WaWV3TWFuYWdlci0+U2V0Um9vdFZp
ZXcodmlldyk7CiAKSW5kZXg6IG1vemlsbGEvbGF5b3V0L2Jhc2UvbnNEaXNwbGF5TGlzdC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQpSQ1MgZmlsZTogL2N2c3Jvb3QvbW96aWxsYS9sYXlvdXQvYmFzZS9uc0Rpc3Bs
YXlMaXN0LmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMy4xNQpyZXRyaWV2aW5nIHJldmlzaW9u
IDMuMTYKZGlmZiAtdSAtdCAtcCAtMSAtMiAtcjMuMTUgLXIzLjE2Ci0tLSBtb3ppbGxhL2xheW91
dC9iYXNlL25zRGlzcGxheUxpc3QuY3BwCTI3IEFwciAyMDA2IDAyOjQ1OjAyIC0wMDAwCTMuMTUK
KysrIG1vemlsbGEvbGF5b3V0L2Jhc2UvbnNEaXNwbGF5TGlzdC5jcHAJNCBNYXkgMjAwNiAwMzo0
NjoxOSAtMDAwMAkzLjE2CkBAIC00OTksMzIgKzQ5OSw0MSBAQCBIYXNOb25aZXJvQm9yZGVyUmFk
aXVzKGNvbnN0IG5zU3R5bGVCb3JkCiAKICAgcmV0dXJuIFBSX0ZBTFNFOwogfQogCiBQUkJvb2wK
IG5zRGlzcGxheUJhY2tncm91bmQ6OklzT3BhcXVlKG5zRGlzcGxheUxpc3RCdWlsZGVyKiBhQnVp
bGRlcikgewogICAvLyB0aGVtZSBiYWNrZ3JvdW5kIG92ZXJyaWRlcyBhbnkgb3RoZXIgYmFja2dy
b3VuZAogICBpZiAobUZyYW1lLT5Jc1RoZW1lZCgpKQogICAgIHJldHVybiBQUl9GQUxTRTsKIAog
ICBQUkJvb2wgaXNDYW52YXM7CiAgIGNvbnN0IG5zU3R5bGVCYWNrZ3JvdW5kKiBiZzsKKyAgbnNQ
cmVzQ29udGV4dCogcHJlc0NvbnRleHQgPSBtRnJhbWUtPkdldFByZXNDb250ZXh0KCk7CiAgIFBS
Qm9vbCBoYXNCRyA9Ci0gICAgbnNDU1NSZW5kZXJpbmc6OkZpbmRCYWNrZ3JvdW5kKG1GcmFtZS0+
R2V0UHJlc0NvbnRleHQoKSwgbUZyYW1lLCAmYmcsICZpc0NhbnZhcyk7Ci0gIGlmICghaGFzQkcg
fHwgKGJnLT5tQmFja2dyb3VuZEZsYWdzICYgTlNfU1RZTEVfQkdfQ09MT1JfVFJBTlNQQVJFTlQp
IHx8Ci0gICAgICBiZy0+bUJhY2tncm91bmRDbGlwICE9IE5TX1NUWUxFX0JHX0NMSVBfQk9SREVS
IHx8Ci0gICAgICBIYXNOb25aZXJvQm9yZGVyUmFkaXVzKG1GcmFtZS0+R2V0U3R5bGVCb3JkZXIo
KSkgfHwKLSAgICAgIE5TX0dFVF9BKGJnLT5tQmFja2dyb3VuZENvbG9yKSA8IDI1NSkKKyAgICBu
c0NTU1JlbmRlcmluZzo6RmluZEJhY2tncm91bmQocHJlc0NvbnRleHQsIG1GcmFtZSwgJmJnLCAm
aXNDYW52YXMpOworICBpZiAoIWhhc0JHKQogICAgIHJldHVybiBQUl9GQUxTRTsKLSAgcmV0dXJu
IFBSX1RSVUU7CisgIFBSQm9vbCBpc1RyYW5zbHVjZW50Q29sb3IgPSBOU19HRVRfQShiZy0+bUJh
Y2tncm91bmRDb2xvcikgPCAyNTUgfHwKKyAgICAoYmctPm1CYWNrZ3JvdW5kRmxhZ3MgJiBOU19T
VFlMRV9CR19DT0xPUl9UUkFOU1BBUkVOVCk7CisgIGlmIChpc0NhbnZhcykgeworICAgIG5zSVZp
ZXcqIHJvb3RWaWV3OworICAgIHByZXNDb250ZXh0LT5HZXRWaWV3TWFuYWdlcigpLT5HZXRSb290
Vmlldyhyb290Vmlldyk7CisgICAgaWYgKHJvb3RWaWV3LT5Jc1VzaW5nRGVmYXVsdEJhY2tncm91
bmRDb2xvcigpKSB7CisgICAgICBpc1RyYW5zbHVjZW50Q29sb3IgPSBOU19HRVRfQShwcmVzQ29u
dGV4dC0+RGVmYXVsdEJhY2tncm91bmRDb2xvcigpKSA8IDI1NTsKKyAgICB9CisgIH0KKyAgcmV0
dXJuICFpc1RyYW5zbHVjZW50Q29sb3IgJiYKKyAgICBiZy0+bUJhY2tncm91bmRDbGlwID09IE5T
X1NUWUxFX0JHX0NMSVBfQk9SREVSICYmCisgICAgIUhhc05vblplcm9Cb3JkZXJSYWRpdXMobUZy
YW1lLT5HZXRTdHlsZUJvcmRlcigpKTsKIH0KIAogUFJCb29sCiBuc0Rpc3BsYXlCYWNrZ3JvdW5k
OjpJc1VuaWZvcm0obnNEaXNwbGF5TGlzdEJ1aWxkZXIqIGFCdWlsZGVyKSB7CiAgIC8vIHRoZW1l
IGJhY2tncm91bmQgb3ZlcnJpZGVzIGFueSBvdGhlciBiYWNrZ3JvdW5kCiAgIGlmIChtRnJhbWUt
PklzVGhlbWVkKCkpCiAgICAgcmV0dXJuIFBSX0ZBTFNFOwogCiAgIFBSQm9vbCBpc0NhbnZhczsK
ICAgY29uc3QgbnNTdHlsZUJhY2tncm91bmQqIGJnOwogICBQUkJvb2wgaGFzQkcgPQogICAgIG5z
Q1NTUmVuZGVyaW5nOjpGaW5kQmFja2dyb3VuZChtRnJhbWUtPkdldFByZXNDb250ZXh0KCksIG1G
cmFtZSwgJmJnLCAmaXNDYW52YXMpOwpJbmRleDogbW96aWxsYS9sYXlvdXQvYmFzZS9uc0NTU1Jl
bmRlcmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2c3Jvb3QvbW96aWxsYS9sYXlvdXQv
YmFzZS9uc0NTU1JlbmRlcmluZy5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDMuMjg0CnJldHJp
ZXZpbmcgcmV2aXNpb24gMy4yODUKZGlmZiAtdSAtdCAtcCAtMSAtMiAtcjMuMjg0IC1yMy4yODUK
LS0tIG1vemlsbGEvbGF5b3V0L2Jhc2UvbnNDU1NSZW5kZXJpbmcuY3BwCTI4IEFwciAyMDA2IDIz
OjIxOjAxIC0wMDAwCTMuMjg0CisrKyBtb3ppbGxhL2xheW91dC9iYXNlL25zQ1NTUmVuZGVyaW5n
LmNwcAk0IE1heSAyMDA2IDAzOjQ2OjE3IC0wMDAwCTMuMjg1CkBAIC0yNzgyLDM3ICsyNzgyLDM2
IEBAIG5zQ1NTUmVuZGVyaW5nOjpQYWludEJhY2tncm91bmQobnNQcmVzQ28KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYURpcnR5UmVjdCwgYUJvcmRlckFyZWEsICpjb2xvciwgYUJvcmRlciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYVBhZGRpbmcsIGFVc2VQcmludFNldHRpbmdzLCBh
QkdDbGlwUmVjdCk7CiAgICAgcmV0dXJuOwogICB9CiAKICAgbnNTdHlsZUJhY2tncm91bmQgY2Fu
dmFzQ29sb3IoKmNvbG9yKTsKIAogICBuc0lWaWV3TWFuYWdlciogdm0gPSBhUHJlc0NvbnRleHQt
PkdldFZpZXdNYW5hZ2VyKCk7CiAKICAgaWYgKGNhbnZhc0NvbG9yLm1CYWNrZ3JvdW5kRmxhZ3Mg
JiBOU19TVFlMRV9CR19DT0xPUl9UUkFOU1BBUkVOVCkgewogICAgIG5zSVZpZXcqIHJvb3RWaWV3
OwogICAgIHZtLT5HZXRSb290Vmlldyhyb290Vmlldyk7Ci0gICAgaWYgKCFyb290Vmlldy0+R2V0
UGFyZW50KCkpIHsKLSAgICAgIFBSQm9vbCB3aWRnZXRJc1RyYW5zbHVjZW50ID0gUFJfRkFMU0U7
CisgICAgUFJCb29sIHVzZURlZmF1bHRCYWNrZ3JvdW5kQ29sb3IgPSByb290Vmlldy0+SXNVc2lu
Z0RlZmF1bHRCYWNrZ3JvdW5kQ29sb3IoKTsKKyAgICBpZiAoIXJvb3RWaWV3LT5HZXRQYXJlbnQo
KSAmJiByb290Vmlldy0+SGFzV2lkZ2V0KCkpIHsKKyAgICAgIFBSQm9vbCB3aWRnZXRJc1RyYW5z
bHVjZW50OworICAgICAgcm9vdFZpZXctPkdldFdpZGdldCgpLT5HZXRXaW5kb3dUcmFuc2x1Y2Vu
Y3kod2lkZ2V0SXNUcmFuc2x1Y2VudCk7CisgICAgICB1c2VEZWZhdWx0QmFja2dyb3VuZENvbG9y
ID0gIXdpZGdldElzVHJhbnNsdWNlbnQ7CisgICAgfQogCi0gICAgICBpZiAocm9vdFZpZXctPkhh
c1dpZGdldCgpKSB7Ci0gICAgICAgIHJvb3RWaWV3LT5HZXRXaWRnZXQoKS0+R2V0V2luZG93VHJh
bnNsdWNlbmN5KHdpZGdldElzVHJhbnNsdWNlbnQpOwotICAgICAgfQotICAgICAgCi0gICAgICBp
ZiAoIXdpZGdldElzVHJhbnNsdWNlbnQpIHsKLSAgICAgICAgLy8gRW5zdXJlIHRoYXQgd2UgYWx3
YXlzIHBhaW50IGEgY29sb3IgZm9yIHRoZSByb290IChpbiBjYXNlIHRoZXJlJ3MKLSAgICAgICAg
Ly8gbm8gYmFja2dyb3VuZCBhdCBhbGwgb3IgYSBwYXJ0bHkgdHJhbnNwYXJlbnQgaW1hZ2UpLgot
ICAgICAgICBjYW52YXNDb2xvci5tQmFja2dyb3VuZEZsYWdzICY9IH5OU19TVFlMRV9CR19DT0xP
Ul9UUkFOU1BBUkVOVDsKLSAgICAgICAgY2FudmFzQ29sb3IubUJhY2tncm91bmRDb2xvciA9IGFQ
cmVzQ29udGV4dC0+RGVmYXVsdEJhY2tncm91bmRDb2xvcigpOwotICAgICAgfQorICAgIGlmICh1
c2VEZWZhdWx0QmFja2dyb3VuZENvbG9yKSB7CisgICAgICAvLyBFbnN1cmUgdGhhdCB3ZSBhbHdh
eXMgcGFpbnQgYSBjb2xvciBmb3IgdGhlIHJvb3QgKGluIGNhc2UgdGhlcmUncworICAgICAgLy8g
bm8gYmFja2dyb3VuZCBhdCBhbGwgb3IgYSBwYXJ0bHkgdHJhbnNwYXJlbnQgaW1hZ2UpLgorICAg
ICAgY2FudmFzQ29sb3IubUJhY2tncm91bmRGbGFncyAmPSB+TlNfU1RZTEVfQkdfQ09MT1JfVFJB
TlNQQVJFTlQ7CisgICAgICBjYW52YXNDb2xvci5tQmFja2dyb3VuZENvbG9yID0gYVByZXNDb250
ZXh0LT5EZWZhdWx0QmFja2dyb3VuZENvbG9yKCk7CiAgICAgfQogICB9CiAKICAgdm0tPlNldERl
ZmF1bHRCYWNrZ3JvdW5kQ29sb3IoY2FudmFzQ29sb3IubUJhY2tncm91bmRDb2xvcik7CiAKICAg
Ly8gU2luY2UgbnNIVE1MQ29udGFpbmVyRnJhbWU6OkNyZWF0ZVZpZXdGb3JGcmFtZSBtaWdodCBo
YXZlIGNyZWF0ZWQKICAgLy8gdGhlIHZpZXcgYmVmb3JlIHdlIGtuZXcgYWJvdXQgdGhlIGNoaWxk
IHdpdGggdGhlIGZpeGVkIGJhY2tncm91bmQKICAgLy8gYXR0YWNobWVudCAocm9vdCBvciBCT0RZ
KSBvciB0aGUgc3R5bGVzaGVldCBzcGVjaWZ5aW5nIHRoYXQKICAgLy8gYXR0YWNobWVudCwgc2V0
IHRoZSBCaXRCbHQgZmxhZyBoZXJlIGFzIHdlbGwuCiAgIGlmIChjYW52YXNDb2xvci5tQmFja2dy
b3VuZEF0dGFjaG1lbnQgPT0gTlNfU1RZTEVfQkdfQVRUQUNITUVOVF9GSVhFRCkgewogICAgIG5z
SVZpZXcgKnZpZXcgPSBhRm9yRnJhbWUtPkdldFZpZXcoKTsKICAgICBpZiAodmlldykKSW5kZXg6
IG1vemlsbGEvdmlldy9wdWJsaWMvbnNJVmlldy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnNy
b290L21vemlsbGEvdmlldy9wdWJsaWMvbnNJVmlldy5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAz
Ljg5CnJldHJpZXZpbmcgcmV2aXNpb24gMy45MApkaWZmIC11IC10IC1wIC0xIC0yIC1yMy44OSAt
cjMuOTAKLS0tIG1vemlsbGEvdmlldy9wdWJsaWMvbnNJVmlldy5oCTExIE5vdiAyMDA1IDE0OjM2
OjEzIC0wMDAwCTMuODkKKysrIG1vemlsbGEvdmlldy9wdWJsaWMvbnNJVmlldy5oCTQgTWF5IDIw
MDYgMDM6NDY6MTYgLTAwMDAJMy45MApAQCAtODEsMjQgKzgxLDI2IEBAIGVudW0gbnNWaWV3Vmlz
aWJpbGl0eSB7CiAKIC8vIEluZGljYXRlcyB0aGF0IHRoZSB2aWV3IGlzIHVzaW5nIGF1dG8gei1p
bmRleGluZwogI2RlZmluZSBOU19WSUVXX0ZMQUdfQVVUT19aSU5ERVggICAgICAgICAgMHgwMDA0
CiAKIC8vIEluZGljYXRlcyB0aGF0IHRoZSB2aWV3IGlzIGEgZmxvYXRpbmcgdmlldy4KICNkZWZp
bmUgTlNfVklFV19GTEFHX0ZMT0FUSU5HICAgICAgICAgICAgIDB4MDAwOAogCiAvLyBJZiBzZXQg
aXQgaW5kaWNhdGVzIHRoYXQgdGhpcyB2aWV3IHNob3VsZCBiZQogLy8gZGlzcGxheWVkIGFib3Zl
IHotaW5kZXg6YXV0byB2aWV3cyBpZiB0aGlzIHZpZXcgCiAvLyBpcyB6LWluZGV4OmF1dG8gYWxz
bwogI2RlZmluZSBOU19WSUVXX0ZMQUdfVE9QTU9TVCAgICAgICAgICAgICAgMHgwMDEwCiAKKyNk
ZWZpbmUgTlNfVklFV19GTEFHX1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQgMHgwMDIwCisKIHN0cnVj
dCBuc1ZpZXdaSW5kZXggewogICBQUkJvb2wgbUlzQXV0bzsKICAgUFJJbnQzMiBtWkluZGV4Owog
ICBQUkJvb2wgbUlzVG9wbW9zdDsKICAgCiAgIG5zVmlld1pJbmRleChQUkJvb2wgYUlzQXV0bywg
UFJJbnQzMiBhWkluZGV4LCBQUkJvb2wgYUlzVG9wbW9zdCkKICAgICA6IG1Jc0F1dG8oYUlzQXV0
byksIG1aSW5kZXgoYVpJbmRleCksIG1Jc1RvcG1vc3QoYUlzVG9wbW9zdCkge30KIH07CiAKIC8v
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQogCiAvKioKQEAgLTI3MywyNSArMjc1LDM3IEBAIHB1YmxpYzoKICAgICov
CiAgIHZvaWQgU2V0SGFzVW5pZm9ybUJhY2tncm91bmQoUFJCb29sIGFVbmlmb3JtKSB7CiAgICAg
aWYgKGFVbmlmb3JtKSB7CiAgICAgICBtVkZsYWdzIHw9IE5TX1ZJRVdfRkxBR19VTklGT1JNX0JB
Q0tHUk9VTkQ7CiAgICAgfSBlbHNlIHsKICAgICAgIG1WRmxhZ3MgJj0gfk5TX1ZJRVdfRkxBR19V
TklGT1JNX0JBQ0tHUk9VTkQ7CiAgICAgfQogICB9CiAKICAgUFJCb29sIEhhc1VuaWZvcm1CYWNr
Z3JvdW5kKCkgewogICAgIHJldHVybiBtVkZsYWdzICYgTlNfVklFV19GTEFHX1VOSUZPUk1fQkFD
S0dST1VORDsKICAgfQorICAKKyAgdm9pZCBTZXRVc2VEZWZhdWx0QmFja2dyb3VuZENvbG9yKFBS
Qm9vbCBhVXNlRGVmYXVsdCkgeworICAgIGlmIChhVXNlRGVmYXVsdCkgeworICAgICAgbVZGbGFn
cyB8PSBOU19WSUVXX0ZMQUdfVVNFX0RFRkFVTFRfQkFDS0dST1VORDsKKyAgICB9IGVsc2Ugewor
ICAgICAgbVZGbGFncyAmPSB+TlNfVklFV19GTEFHX1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQ7Cisg
ICAgfQorICB9CiAKKyAgUFJCb29sIElzVXNpbmdEZWZhdWx0QmFja2dyb3VuZENvbG9yKCkgewor
ICAgIHJldHVybiBtVkZsYWdzICYgTlNfVklFV19GTEFHX1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQ7
CisgIH0KKyAgCiAgIC8qKgogICAgKiBTZXQgdGhlIHZpZXcncyBsaW5rIHRvIGNsaWVudCBvd25l
ZCBkYXRhLgogICAgKiBAcGFyYW0gYURhdGEgLSBkYXRhIHRvIGFzc29jaWF0ZSB3aXRoIHZpZXcu
IG5zbnVsbCB0byBkaXNhc3NvY2lhdGUKICAgICovCiAgIHZvaWQgU2V0Q2xpZW50RGF0YSh2b2lk
ICphRGF0YSkgeyBtQ2xpZW50RGF0YSA9IGFEYXRhOyB9CiAKICAgLyoqCiAgICAqIFF1ZXJ5IHRo
ZSB2aWV3IGZvciBpdCdzIGxpbmsgdG8gY2xpZW50IG93bmVkIGRhdGEuCiAgICAqIEByZXN1bHQg
ZGF0YSBhc3NvY2lhdGVkIHdpdGggdmlldyBvciBuc251bGwgaWYgdGhlcmUgaXMgbm9uZS4KICAg
ICovCiAgIHZvaWQqIEdldENsaWVudERhdGEoKSBjb25zdCB7IHJldHVybiBtQ2xpZW50RGF0YTsg
fQogCg==
</data>
<flag name="review"
          id="134592"
          type_id="937"
          status="+"
          setter="roc"
    />
    <flag name="superreview"
          id="134593"
          type_id="5"
          status="+"
          setter="roc"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241004</attachid>
            <date>2006-10-02 18:00:04 -0700</date>
            <delta_ts>2010-08-10 14:39:15 -0700</delta_ts>
            <desc>Updated patch to trunk</desc>
            <filename>bug130078_update.patch</filename>
            <type>text/plain</type>
            <size>7722</size>
            <attacher>djpnewton</attacher>
            
              <data encoding="base64">SW5kZXg6IGxheW91dC9iYXNlL25zQ1NTUmVuZGVyaW5nLmNwcA0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZp
bGU6IC9jdnNyb290L21vemlsbGEvbGF5b3V0L2Jhc2UvbnNDU1NSZW5kZXJpbmcuY3BwLHYNCnJl
dHJpZXZpbmcgcmV2aXNpb24gMy4yOTANCmRpZmYgLXUgLXIzLjI5MCBuc0NTU1JlbmRlcmluZy5j
cHANCi0tLSBsYXlvdXQvYmFzZS9uc0NTU1JlbmRlcmluZy5jcHAJMTkgU2VwIDIwMDYgMjI6MDU6
MzIgLTAwMDAJMy4yOTANCisrKyBsYXlvdXQvYmFzZS9uc0NTU1JlbmRlcmluZy5jcHAJMiBPY3Qg
MjAwNiAwMjo0MToxNiAtMDAwMA0KQEAgLTI3OTUsMTkgKzI3OTUsMTggQEANCiAgIGlmIChjYW52
YXNDb2xvci5tQmFja2dyb3VuZEZsYWdzICYgTlNfU1RZTEVfQkdfQ09MT1JfVFJBTlNQQVJFTlQp
IHsNCiAgICAgbnNJVmlldyogcm9vdFZpZXc7DQogICAgIHZtLT5HZXRSb290Vmlldyhyb290Vmll
dyk7DQotICAgIGlmICghcm9vdFZpZXctPkdldFBhcmVudCgpKSB7DQotICAgICAgUFJCb29sIHdp
ZGdldElzVHJhbnNsdWNlbnQgPSBQUl9GQUxTRTsNCisgICAgUFJCb29sIHVzZURlZmF1bHRCYWNr
Z3JvdW5kQ29sb3IgPSByb290Vmlldy0+SXNVc2luZ0RlZmF1bHRCYWNrZ3JvdW5kQ29sb3IoKTsN
CisgICAgaWYgKCFyb290Vmlldy0+R2V0UGFyZW50KCkgJiYgcm9vdFZpZXctPkhhc1dpZGdldCgp
KSB7DQorICAgICAgUFJCb29sIHdpZGdldElzVHJhbnNsdWNlbnQ7DQorICAgICAgcm9vdFZpZXct
PkdldFdpZGdldCgpLT5HZXRXaW5kb3dUcmFuc2x1Y2VuY3kod2lkZ2V0SXNUcmFuc2x1Y2VudCk7
DQorICAgICAgdXNlRGVmYXVsdEJhY2tncm91bmRDb2xvciA9ICF3aWRnZXRJc1RyYW5zbHVjZW50
Ow0KKyAgICB9DQogDQotICAgICAgaWYgKHJvb3RWaWV3LT5IYXNXaWRnZXQoKSkgew0KLSAgICAg
ICAgcm9vdFZpZXctPkdldFdpZGdldCgpLT5HZXRXaW5kb3dUcmFuc2x1Y2VuY3kod2lkZ2V0SXNU
cmFuc2x1Y2VudCk7DQotICAgICAgfQ0KLSAgICAgIA0KLSAgICAgIGlmICghd2lkZ2V0SXNUcmFu
c2x1Y2VudCkgew0KLSAgICAgICAgLy8gRW5zdXJlIHRoYXQgd2UgYWx3YXlzIHBhaW50IGEgY29s
b3IgZm9yIHRoZSByb290IChpbiBjYXNlIHRoZXJlJ3MNCi0gICAgICAgIC8vIG5vIGJhY2tncm91
bmQgYXQgYWxsIG9yIGEgcGFydGx5IHRyYW5zcGFyZW50IGltYWdlKS4NCi0gICAgICAgIGNhbnZh
c0NvbG9yLm1CYWNrZ3JvdW5kRmxhZ3MgJj0gfk5TX1NUWUxFX0JHX0NPTE9SX1RSQU5TUEFSRU5U
Ow0KLSAgICAgICAgY2FudmFzQ29sb3IubUJhY2tncm91bmRDb2xvciA9IGFQcmVzQ29udGV4dC0+
RGVmYXVsdEJhY2tncm91bmRDb2xvcigpOw0KLSAgICAgIH0NCisgICAgaWYgKHVzZURlZmF1bHRC
YWNrZ3JvdW5kQ29sb3IpIHsNCisgICAgICAvLyBFbnN1cmUgdGhhdCB3ZSBhbHdheXMgcGFpbnQg
YSBjb2xvciBmb3IgdGhlIHJvb3QgKGluIGNhc2UgdGhlcmUncw0KKyAgICAgIC8vIG5vIGJhY2tn
cm91bmQgYXQgYWxsIG9yIGEgcGFydGx5IHRyYW5zcGFyZW50IGltYWdlKS4NCisgICAgICBjYW52
YXNDb2xvci5tQmFja2dyb3VuZEZsYWdzICY9IH5OU19TVFlMRV9CR19DT0xPUl9UUkFOU1BBUkVO
VDsNCisgICAgICBjYW52YXNDb2xvci5tQmFja2dyb3VuZENvbG9yID0gYVByZXNDb250ZXh0LT5E
ZWZhdWx0QmFja2dyb3VuZENvbG9yKCk7DQogICAgIH0NCiAgIH0NCiANCkluZGV4OiBsYXlvdXQv
YmFzZS9uc0Rpc3BsYXlMaXN0LmNwcA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnNyb290L21v
emlsbGEvbGF5b3V0L2Jhc2UvbnNEaXNwbGF5TGlzdC5jcHAsdg0KcmV0cmlldmluZyByZXZpc2lv
biAzLjE5DQpkaWZmIC11IC1yMy4xOSBuc0Rpc3BsYXlMaXN0LmNwcA0KLS0tIGxheW91dC9iYXNl
L25zRGlzcGxheUxpc3QuY3BwCTE5IFNlcCAyMDA2IDIxOjU4OjUyIC0wMDAwCTMuMTkNCisrKyBs
YXlvdXQvYmFzZS9uc0Rpc3BsYXlMaXN0LmNwcAkyIE9jdCAyMDA2IDAzOjEyOjQyIC0wMDAwDQpA
QCAtNTA4LDE0ICs1MDgsMjMgQEANCiANCiAgIFBSQm9vbCBpc0NhbnZhczsNCiAgIGNvbnN0IG5z
U3R5bGVCYWNrZ3JvdW5kKiBiZzsNCisgIG5zUHJlc0NvbnRleHQqIHByZXNDb250ZXh0ID0gbUZy
YW1lLT5HZXRQcmVzQ29udGV4dCgpOw0KICAgUFJCb29sIGhhc0JHID0NCi0gICAgbnNDU1NSZW5k
ZXJpbmc6OkZpbmRCYWNrZ3JvdW5kKG1GcmFtZS0+R2V0UHJlc0NvbnRleHQoKSwgbUZyYW1lLCAm
YmcsICZpc0NhbnZhcyk7DQotICBpZiAoIWhhc0JHIHx8IChiZy0+bUJhY2tncm91bmRGbGFncyAm
IE5TX1NUWUxFX0JHX0NPTE9SX1RSQU5TUEFSRU5UKSB8fA0KLSAgICAgIGJnLT5tQmFja2dyb3Vu
ZENsaXAgIT0gTlNfU1RZTEVfQkdfQ0xJUF9CT1JERVIgfHwNCi0gICAgICBIYXNOb25aZXJvU2lk
ZShtRnJhbWUtPkdldFN0eWxlQm9yZGVyKCktPm1Cb3JkZXJSYWRpdXMpIHx8DQotICAgICAgTlNf
R0VUX0EoYmctPm1CYWNrZ3JvdW5kQ29sb3IpIDwgMjU1KQ0KKyAgbnNDU1NSZW5kZXJpbmc6OkZp
bmRCYWNrZ3JvdW5kKHByZXNDb250ZXh0LCBtRnJhbWUsICZiZywgJmlzQ2FudmFzKTsNCisgIGlm
ICghaGFzQkcpDQogICAgIHJldHVybiBQUl9GQUxTRTsNCi0gIHJldHVybiBQUl9UUlVFOw0KKyAg
UFJCb29sIGlzVHJhbnNsdWNlbnRDb2xvciA9IE5TX0dFVF9BKGJnLT5tQmFja2dyb3VuZENvbG9y
KSA8IDI1NSB8fA0KKyAgICAoYmctPm1CYWNrZ3JvdW5kRmxhZ3MgJiBOU19TVFlMRV9CR19DT0xP
Ul9UUkFOU1BBUkVOVCk7DQorICBpZiAoaXNDYW52YXMpIHsNCisgICAgbnNJVmlldyogcm9vdFZp
ZXc7DQorICAgIHByZXNDb250ZXh0LT5HZXRWaWV3TWFuYWdlcigpLT5HZXRSb290Vmlldyhyb290
Vmlldyk7DQorICAgIGlmIChyb290Vmlldy0+SXNVc2luZ0RlZmF1bHRCYWNrZ3JvdW5kQ29sb3Io
KSkgew0KKyAgICAgIGlzVHJhbnNsdWNlbnRDb2xvciA9IE5TX0dFVF9BKHByZXNDb250ZXh0LT5E
ZWZhdWx0QmFja2dyb3VuZENvbG9yKCkpIDwgMjU1Ow0KKyAgICB9DQorICB9DQorICByZXR1cm4g
IWlzVHJhbnNsdWNlbnRDb2xvciAmJg0KKyAgICBiZy0+bUJhY2tncm91bmRDbGlwID09IE5TX1NU
WUxFX0JHX0NMSVBfQk9SREVSICYmDQorICAgICFIYXNOb25aZXJvU2lkZShtRnJhbWUtPkdldFN0
eWxlQm9yZGVyKCktPm1Cb3JkZXJSYWRpdXMpOyAgDQogfQ0KIA0KIFBSQm9vbA0KSW5kZXg6IGxh
eW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwDQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2N2
c3Jvb3QvbW96aWxsYS9sYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcCx2DQpyZXRyaWV2
aW5nIHJldmlzaW9uIDEuNDk1DQpkaWZmIC11IC1yMS40OTUgbnNEb2N1bWVudFZpZXdlci5jcHAN
Ci0tLSBsYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcAk5IFNlcCAyMDA2IDA1OjA2OjA0
IC0wMDAwCTEuNDk1DQorKysgbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAJMiBPY3Qg
MjAwNiAwMjo0MToxNiAtMDAwMA0KQEAgLTIzMjYsNDUgKzIzMjYsMjkgQEANCiAgIHRib3VuZHMu
eSA9IDA7DQogDQogICAvLyBDcmVhdGUgYSBjaGlsZCB3aW5kb3cgb2YgdGhlIHBhcmVudCB0aGF0
IGlzIG91ciAicm9vdCB2aWV3L3dpbmRvdyINCi0gIC8vIGlmIGFQYXJlbnRXaWRnZXQgaGFzIGEg
dmlldywgd2UnbGwgaG9vayBvdXIgdmlldyBtYW5hZ2VyIHVwIHRvIGl0cyB2aWV3IHRyZWUNCiAg
IG5zSVZpZXcqIGNvbnRhaW5lclZpZXcgPSBuc1ZpZXc6OkdldFZpZXdGb3IoYVBhcmVudFdpZGdl
dCk7DQogDQotICBpZiAoY29udGFpbmVyVmlldykgew0KLSAgICAvLyBzZWUgaWYgdGhlIGNvbnRh
aW5lclZpZXcgaGFzIGFscmVhZHkgYmVlbiBob29rZWQgaW50byBhIGZvcmVpZ24gdmlldyBtYW5h
Z2VyIGhpZXJhcmNoeQ0KLSAgICAvLyBpZiBpdCBoYXMsIHRoZW4gd2UgaGF2ZSB0byBob29rIGlu
dG8gdGhlIGhpZXJhcmNoeSB0b28gb3RoZXJ3aXNlIGJhZCB0aGluZ3Mgd2lsbCBoYXBwZW4uDQot
ICAgIG5zSVZpZXdNYW5hZ2VyKiBjb250YWluZXJWTSA9IGNvbnRhaW5lclZpZXctPkdldFZpZXdN
YW5hZ2VyKCk7DQotICAgIG5zSVZpZXcqIHBWaWV3ID0gY29udGFpbmVyVmlldzsNCi0gICAgZG8g
ew0KLSAgICAgIHBWaWV3ID0gcFZpZXctPkdldFBhcmVudCgpOw0KLSAgICB9IHdoaWxlIChwVmll
dyAmJiBwVmlldy0+R2V0Vmlld01hbmFnZXIoKSA9PSBjb250YWluZXJWTSk7DQotDQotICAgIGlm
ICghcFZpZXcpIHsNCi0gICAgICAvLyBPSywgc28gdGhlIGNvbnRhaW5lciBpcyBub3QgYWxyZWFk
eSBob29rZWQgdXAgaW50byBhIGZvcmVpZ24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeS4NCi0gICAg
ICAvLyBUaGF0IG1lYW5zIHdlIGNhbiBjaG9vc2Ugbm90IHRvIGhvb2sgb3Vyc2VsdmVzIHVwLg0K
LSAgICAgIC8vDQotICAgICAgLy8gSWYgdGhlIHBhcmVudCBjb250YWluZXIgaXMgYSBjaHJvbWUg
c2hlbGwgdGhlbiB3ZSB3b24ndCBob29rIGludG8gaXRzIHZpZXcNCi0gICAgICAvLyB0cmVlLiBU
aGlzIHdpbGwgaW1wcm92ZSBwZXJmb3JtYW5jZSBhIGxpdHRsZSBiaXQgKGVzcGVjaWFsbHkgZ2l2
ZW4gc2Nyb2xsaW5nL3BhaW50aW5nIHBlcmYgYnVncykNCi0gICAgICAvLyBidXQgaXMgcmVhbGx5
IGp1c3QgZm9yIHBlYWNlIG9mIG1pbmQuIFRoaXMgY2hlY2sgY2FuIGJlIHJlbW92ZWQgaWYgd2Ug
d2FudCB0byBzdXBwb3J0IGZhbmN5DQotICAgICAgLy8gY2hyb21lIGVmZmVjdHMgbGlrZSB0cmFu
c3BhcmVudCBjb250cm9scyBmbG9hdGluZyBvdmVyIGNvbnRlbnQsIHRyYW5zcGFyZW50IFdlYiBi
cm93c2VycywgYW5kDQotICAgICAgLy8gdGhpbmdzIGxpa2UgdGhhdCwgYW5kIHRoZSBwZXJmIGJ1
Z3MgYXJlIGZpeGVkLg0KLSAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRh
aW5lcihkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIpKTsNCi0gICAgICBuc0NPTVB0cjxuc0lE
b2NTaGVsbFRyZWVJdGVtPiBwYXJlbnRDb250YWluZXI7DQotICAgICAgUFJJbnQzMiBpdGVtVHlw
ZTsNCi0gICAgICBpZiAobnNudWxsID09IGNvbnRhaW5lcg0KLSAgICAgICAgICB8fCBOU19GQUlM
RUQoY29udGFpbmVyLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJlZnMocGFyZW50Q29udGFpbmVyKSkp
DQotICAgICAgICAgIHx8IG5zbnVsbCA9PSBwYXJlbnRDb250YWluZXINCi0gICAgICAgICAgfHwg
TlNfRkFJTEVEKHBhcmVudENvbnRhaW5lci0+R2V0SXRlbVR5cGUoJml0ZW1UeXBlKSkNCi0gICAg
ICAgICAgfHwgaXRlbVR5cGUgIT0gbnNJRG9jU2hlbGxUcmVlSXRlbTo6dHlwZUNvbnRlbnQpIHsN
Ci0gICAgICAgIGNvbnRhaW5lclZpZXcgPSBuc251bGw7DQotICAgICAgfQ0KLSAgICB9DQotICB9
DQotDQogICAvLyBDcmVhdGUgYSB2aWV3DQogICBuc0lWaWV3KiB2aWV3ID0gbVZpZXdNYW5hZ2Vy
LT5DcmVhdGVWaWV3KHRib3VuZHMsIGNvbnRhaW5lclZpZXcpOw0KICAgaWYgKCF2aWV3KQ0KICAg
ICByZXR1cm4gTlNfRVJST1JfT1VUX09GX01FTU9SWTsNCiANCisgIGlmIChjb250YWluZXJWaWV3
KSB7DQorICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRhaW5lcihkb19RdWVy
eVJlZmVyZW50KG1Db250YWluZXIpKTsNCisgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRl
bT4gcGFyZW50Q29udGFpbmVyOw0KKyAgICBQUkludDMyIGl0ZW1UeXBlOw0KKyAgICBQUkludDMy
IHBhcmVudEl0ZW1UeXBlOw0KKyAgICBpZiAoY29udGFpbmVyDQorICAgICAgICAmJiBOU19TVUND
RUVERUQoY29udGFpbmVyLT5HZXRJdGVtVHlwZSgmaXRlbVR5cGUpKQ0KKyAgICAgICAgJiYgaXRl
bVR5cGUgPT0gbnNJRG9jU2hlbGxUcmVlSXRlbTo6dHlwZUNvbnRlbnQNCisgICAgICAgICYmIE5T
X1NVQ0NFRURFRChjb250YWluZXItPkdldFBhcmVudChnZXR0ZXJfQWRkUmVmcyhwYXJlbnRDb250
YWluZXIpKSkNCisgICAgICAgICYmIHBhcmVudENvbnRhaW5lcg0KKyAgICAgICAgJiYgTlNfU1VD
Q0VFREVEKHBhcmVudENvbnRhaW5lci0+R2V0SXRlbVR5cGUoJnBhcmVudEl0ZW1UeXBlKSkNCisg
ICAgICAgICYmIHBhcmVudEl0ZW1UeXBlICE9IG5zSURvY1NoZWxsVHJlZUl0ZW06OnR5cGVDb250
ZW50KSB7DQorICAgICAgdmlldy0+U2V0VXNlRGVmYXVsdEJhY2tncm91bmRDb2xvcihQUl9UUlVF
KTsNCisgICAgfQ0KKyAgfQ0KKw0KICAgLy8gcGFzcyBpbiBhIG5hdGl2ZSB3aWRnZXQgdG8gYmUg
dGhlIHBhcmVudCB3aWRnZXQgT05MWSBpZiB0aGUgdmlldyBoaWVyYXJjaHkgd2lsbCBzdGFuZCBh
bG9uZS4NCiAgIC8vIG90aGVyd2lzZSB0aGUgdmlldyB3aWxsIGZpbmQgaXRzIG93biBwYXJlbnQg
d2lkZ2V0IGFuZCAiZG8gdGhlIHJpZ2h0IHRoaW5nIiB0bw0KICAgLy8gZXN0YWJsaXNoIGEgcGFy
ZW50L2NoaWxkIHdpZGdldCByZWxhdGlvbnNoaXANCkluZGV4OiB2aWV3L3B1YmxpYy9uc0lWaWV3
LmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvY3Zzcm9vdC9tb3ppbGxhL3ZpZXcvcHVibGljL25z
SVZpZXcuaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDMuOTENCmRpZmYgLXUgLXIzLjkxIG5zSVZp
ZXcuaA0KLS0tIHZpZXcvcHVibGljL25zSVZpZXcuaAk0IE1heSAyMDA2IDA1OjM2OjUzIC0wMDAw
CTMuOTENCisrKyB2aWV3L3B1YmxpYy9uc0lWaWV3LmgJMiBPY3QgMjAwNiAwMjo1MzozMCAtMDAw
MA0KQEAgLTkwLDYgKzkwLDggQEANCiAvLyBpcyB6LWluZGV4OmF1dG8gYWxzbw0KICNkZWZpbmUg
TlNfVklFV19GTEFHX1RPUE1PU1QgICAgICAgICAgICAgIDB4MDAxMA0KIA0KKyNkZWZpbmUgTlNf
VklFV19GTEFHX1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQgMHgwMDIwDQorDQogc3RydWN0IG5zVmll
d1pJbmRleCB7DQogICBQUkJvb2wgbUlzQXV0bzsNCiAgIFBSSW50MzIgbVpJbmRleDsNCkBAIC0y
ODIsNyArMjg0LDE5IEBADQogICBQUkJvb2wgSGFzVW5pZm9ybUJhY2tncm91bmQoKSB7DQogICAg
IHJldHVybiBtVkZsYWdzICYgTlNfVklFV19GTEFHX1VOSUZPUk1fQkFDS0dST1VORDsNCiAgIH0N
CisgIA0KKyAgdm9pZCBTZXRVc2VEZWZhdWx0QmFja2dyb3VuZENvbG9yKFBSQm9vbCBhVXNlRGVm
YXVsdCkgew0KKyAgICBpZiAoYVVzZURlZmF1bHQpIHsNCisgICAgICBtVkZsYWdzIHw9IE5TX1ZJ
RVdfRkxBR19VU0VfREVGQVVMVF9CQUNLR1JPVU5EOw0KKyAgICB9IGVsc2Ugew0KKyAgICAgIG1W
RmxhZ3MgJj0gfk5TX1ZJRVdfRkxBR19VU0VfREVGQVVMVF9CQUNLR1JPVU5EOw0KKyAgICB9DQor
ICB9DQogDQorICBQUkJvb2wgSXNVc2luZ0RlZmF1bHRCYWNrZ3JvdW5kQ29sb3IoKSB7DQorICAg
IHJldHVybiBtVkZsYWdzICYgTlNfVklFV19GTEFHX1VTRV9ERUZBVUxUX0JBQ0tHUk9VTkQ7DQor
ICB9DQorICANCiAgIC8qKg0KICAgICogU2V0IHRoZSB2aWV3J3MgbGluayB0byBjbGllbnQgb3du
ZWQgZGF0YS4NCiAgICAqIEBwYXJhbSBhRGF0YSAtIGRhdGEgdG8gYXNzb2NpYXRlIHdpdGggdmll
dy4gbnNudWxsIHRvIGRpc2Fzc29jaWF0ZQ0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>260724</attachid>
            <date>2007-04-05 10:00:24 -0700</date>
            <delta_ts>2007-04-05 10:00:24 -0700</delta_ts>
            <desc>Testcase for iframe with and without type=content attribute</desc>
            <filename>iframe_wrapper.xul</filename>
            <type>application/vnd.mozilla.xul+xml</type>
            <size>565</size>
            <attacher>daniel</attacher>
            
              <data encoding="base64">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCg0KPD94bWwtc3R5bGVzaGVl
dCBocmVmPSJjaHJvbWU6Ly9nbG9iYWwvc2tpbi8iIHR5cGU9InRleHQvY3NzIj8+DQoNCjx3aW5k
b3cNCiAgIHRpdGxlICAgICAgPSAiWFVMIElGcmFtZS1XcmFwcGVyIg0KICAgeG1sbnMgICAgICA9
ICJodHRwOi8vd3d3Lm1vemlsbGEub3JnL2tleW1hc3Rlci9nYXRla2VlcGVyL3RoZXJlLmlzLm9u
bHkueHVsIj4NCg0KICAgIDxsYWJlbCB2YWx1ZT0iaWZyYW1lIHdpdGggdHlwZT0nY29udGVudCci
IC8+DQogICAgPGlmcmFtZSBzcmM9Imh0dHA6Ly93d3cuYmlyZ2luLmRlL3Rlc3QvYnVnemlsbGEv
aWZyYW1lX29udG9wLmh0bWwiIGhlaWdodD0iMzAwIiB0eXBlPSJjb250ZW50IiAvPg0KDQogICAg
PHNwYWNlciBoZWlnaHQ9IjEwIiAvPg0KDQogICAgPGxhYmVsIHZhbHVlPSJpZnJhbWUgd2l0aCBu
byB0eXBlIiAvPg0KICAgIDxpZnJhbWUgc3JjPSJodHRwOi8vd3d3LmJpcmdpbi5kZS90ZXN0L2J1
Z3ppbGxhL2lmcmFtZV9vbnRvcC5odG1sIiBoZWlnaHQ9IjMwMCIgLz4NCjwvd2luZG93Pg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>260725</attachid>
            <date>2007-04-05 10:01:49 -0700</date>
            <delta_ts>2007-04-05 10:01:49 -0700</delta_ts>
            <desc>Screenshot of the iframe testcase</desc>
            <filename>iframe_ontop.gif</filename>
            <type>image/gif</type>
            <size>26087</size>
            <attacher>daniel</attacher>
            
              <data encoding="base64">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
YaKjYR6mLSamYloiYzYmIj4mZOqhZE7mHFamZZYhZmb/5hduJmdGoWd+5hCGpmjyIGmWpgueJmrG
4FOuJluqpmsaYWvG5ljCJm0qoG3epgDa0Nj1pm/+JnAGp3AOJ3EWp3EeJ3Imp3Iu53DyJnM+J3RG
p3ROJ3VWp3VeZ3U6J3ZuJ3d2p3d+J3iG53Vqp3iWp3meJ3qmp3pCJ3mup3u+J3zGp3yCZ3vOp33e
J37mp34WWX3up3/+J4AGaHj2p4AWqIEeKII2JwUmKIM2qIM+aHMRKIROKIVWaHxKqIVmqIZuKHdi
KId+KIiG6HF6qIiWqImeaIpJaEtcJwCgqIu+aHrWZ4u2qHTOKFnRKHDiKIzuKI/+JoHqaHTiKJD2
5pD2/6iRHil9ySgetISN0iiTIsuTriiUSumNQqmVzuiKMimQaumNUumU2uiVPumXIimZlqiSCumQ
gqmTLmmVtumagimbWmmbsqmQllWdXmmV3mmZ7qmGnumcLmmUyimWiimeNmmcHqqO1qmeHiqdyimd
cimfRmqF+qmjKqqgMqqdNqqhVmqm4qmjMqqa5qmkjqqFUiqiimqcwumWuumpfqqluqpZ6amqkiqt
MqipJmqgpuqYxiqrAmqrciqgpqmsEiqh1qqxCiiJ7meiHiuzOmiy6ueyNqu0HuizTqu1XitwViu2
biu3pigFaim4hqu4jiu5lqu5niu6pqu6riu7tqu7uv8rzk0mNr0rvdarvd4rvuarvp5r4QUmNvkd
wAaswA4swRbsb1HBe8GXfPWrX/6rwT4sxEasxBLsQfxXRQQYw+6lw04sx3asx36sE2jGiWUsXm4s
yJ4syqas3omsRqDVZ5qsysaszM5syH4ZjnWUZcIsze4sz07sgLTZm7ksZ+pszxat0QasmCwampgJ
zsrrtwLA0Uat1PYdsaAaruWa0GYm0U4t13Ytb2mGyJDMsOUbydbl1not2k7t31gPwa1b00Lm2aat
3BbtCq0b4djt2zZmbpEY3/at3/5tTBxdvZWtXO4t4B4u4iZuDgkuuxHuWxqu4kau5E5u4KaDy+Wt
YkL/LuVuLuf2LeMSDuYepuZ2LumW7nolHX1lbc4+rem2ruuW1NrRXWw57muy7uveLu4+Gnxhl4HR
blqObu4Gb+4umEVgbLzCre0Kr/IO72bIBM7gwRuAruo67VVSSEnhQT38gBVsL/d2r/d+L/iGr/iO
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
Yg1ekIEUjDINsdFGGk+IyUyuMpOoLEAnK+nKEuYiDec4hzvcOJ50le+DcvRlekY4lUjmMQpHtAet
9AS4u/nncPZI5DMTSQdIDpOa1aSmNAL1AiPkwprdjGQNjBCoXI5vl2vr5S/RSZpgSuUJ7XTnO+H5
zlNMAQkp4J+eBnSboNHwf9D05x4bFk+BDpSgBTXoQRGa0IGOsyLkM2c6IapOOspsKgp9Zw/OQbWz
FEmGBtFLO3AoRZGKlA4AZIBFUZpSla6UoAwFSjnXZL6IztQp64zKSnPBgDOwkqc99WlPz8D/gFyw
lKhFNWpLzUUqXaotpuek6VNrOtG4sfOoVbXqVbFqVZemw6FNhepXn2JTqGSVrGU161ndudWuqkmm
YHVre1JTR6qgla51tStK1QpTtjr1rX2FK4ymetO7Dpawhc0rU/fqV8VWRKxPKexjIXvWw65usYtt
rFMim1nNHnWycKysXy/blBqMlrSlNe1pUZta1a6Wta117WthG1vZrrazvPwsaKUau6fMlre99e1v
gRvc2Nb2obd9a2iZIlzlLpe5zWUucb1qXLciFyk9cO51sZtd7Y4WuomVLlipe5R3bJe85TXvcJOK
tqVS9rtfDa9RJHBe+c6Xvt1NU1vbK8f3/xbFCbnIBX0BHODr2tdM+M1vCPdbFA1I478CdvCDe0vg
Fhn4wOhLsIIZYAQGQ5jDHVathFlE4Qq77sJFwUMf29EOD694xSBekYhH7LYSx/irLlYRjGnsshnn
mKY2PhGOecyuHQcZoj5mD5CJrKohJ/mXRl4PkpmspiVHOY5OVg+UqdyiKWcZfVZOD5a5rKIth7l1
XkYPmMm8njGn+WVmLg+a2YyeNce5XW42DZzpXJo553lVdi4Nnvksmj0Hek1+Jg2gCd2ZQSfaTIYe
DaIZPZVFR3pFjhYNpCkNlTWDToKd9vSnQR1qUY+a1KU29am/Z+nQYDrTUY0rRauCalnPmv/Wtbb1
rVOd3tSt17Ot1nJu7SgVXA+b2MU29qxV7RlW+xopUz72s6Ed7WcnuzPLZvZpgE0VGkib2932dqmp
XRVrX9sq2Z7Ktr+dbnWrO9xUGTe5SbLkdc+b3tFut3n4Cu/yyLve/fa3re8tlXfrmyL8/vfBET7q
gEdl4AQ3eMIhHvE26lp8DdXrffNNcIm+OrBQkfjHJb5wqDRc3w8H+cn7LfKnkBzeJkf5y9lN8Q7a
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
mxwXm78pnPYSnMNpnGSIl8epnMtWnMvpnHuYnM8pnSwYndNpnfVXndepnVrUnNvpnVPRnd8pnrPY
m+NpnshJKmx5nusZVeXJnu8JnekJn/MJJOFJn9tpn/d5nfmpn9PJ/5/9+Zz/CaDLKaADepwFaqDD
iaAJ+psLyqCS6aAPCpvuKaEVGiTZaaEZepfyqaEduqH54qEeGqEhypUjSqJPaaInqpMpqqImyaIt
CpIvCqMSKaMzupA1aqP9iKM5+o47yqPh6KM/Oo1BKqTFSKRF+owUiqTieaRLKotN6qSrCKVRSopT
SqWdyEV3p6VbyqVd6qVfCqZhKqZjSqZlaqZniqZgmqVpyqZt6qZvCqdxKqdzSqdyuqZ1iqd5qqd7
yqd96qd0eqd/KqiDSqiFaqiH2qaBiqiLyqiN6qiP2qeKCqmTSqmVaqmXum+Siqmbyqmd6ql+qqmf
KqqjSqqlqqZVZ8Sqqaqqq8qqihaqrQqrsSqrjvqqs2qrt4qreVqrucqrveqrZLqrvyqsw0qs3has
xYqsySqsx6qszeqsssqszyqt00qq0Uqt14qtlmqt2cqt3YqoXAQW4Squ40qu5Wqu54qu6aqu68qu
7equ7wqv8Sqv80qv9Wqv94qv+aqv6ipwWuCv/wqwASuwA0uwBWuwB4uwCauwC8uwDeuwDwuxESux
E0uxFWuxF4uxCQuJV6qf++qxHwuyISuyI0uyJWuyJ4uy6RoQADs=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285010</attachid>
            <date>2007-10-15 15:08:58 -0700</date>
            <delta_ts>2007-10-15 19:17:56 -0700</delta_ts>
            <desc>hook up view hierarchies for chrome children of chrome </desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>3802</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">PyBsYXlvdXQvcmVmdGVzdHMvLmdkYl9oaXN0b3J5Cj8gbGF5b3V0L3JlZnRlc3RzL2J1Z3MvMzg1
NjA3LTEtcmVmLmh0bWwKPyBsYXlvdXQvcmVmdGVzdHMvYnVncy8zODU2MDctMS5odG1sCj8gbGF5
b3V0L3JlZnRlc3RzL2ZpcnN0LWxldHRlci9hdmFpbGFibGUtd2lkdGgtMS5odG1sCj8gbGF5b3V0
L3JlZnRlc3RzL2ZpcnN0LWxldHRlci9hdmFpbGFibGUtd2lkdGgtcmVmLmh0bWwKPyBsYXlvdXQv
cmVmdGVzdHMvZmlyc3QtbGV0dGVyL2NsdXN0ZXItMS1yZWYuaHRtbAo/IGxheW91dC9yZWZ0ZXN0
cy9maXJzdC1sZXR0ZXIvY2x1c3Rlci0xLmh0bWwKPyBsYXlvdXQvcmVmdGVzdHMvdGV4dC93cmFw
LTEuaHRtbApJbmRleDogbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQpSQ1MgZmlsZTogL2N2c3Jvb3QvbW96aWxsYS9sYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2Vy
LmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS41NDkKZGlmZiAtdSAtcCAtMSAtMiAtcjEuNTQ5
IG5zRG9jdW1lbnRWaWV3ZXIuY3BwCi0tLSBsYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNw
cAk2IE9jdCAyMDA3IDAwOjM1OjAxIC0wMDAwCTEuNTQ5CisrKyBsYXlvdXQvYmFzZS9uc0RvY3Vt
ZW50Vmlld2VyLmNwcAkxNSBPY3QgMjAwNyAyMjowMjoyMiAtMDAwMApAQCAtMjE0MywyNCArMjE0
MywzMSBAQCBEb2N1bWVudFZpZXdlckltcGw6OkNyZWF0ZVN0eWxlU2V0KG5zSURvCiAgICphU3R5
bGVTZXQgPSBzdHlsZVNldDsKICAgcmV0dXJuIE5TX09LOwogfQogCiBOU19JTUVUSE9ESU1QCiBE
b2N1bWVudFZpZXdlckltcGw6OkNsZWFySGlzdG9yeUVudHJ5KCkKIHsKICAgbVNIRW50cnkgPSBu
c251bGw7CiAgIHJldHVybiBOU19PSzsKIH0KIAogLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitzdGF0aWMgUFJCb29sCitJc1NoZWxsT2ZU
eXBlKG5zSURvY1NoZWxsVHJlZUl0ZW0qIGFUcmVlSXRlbSwgUFJJbnQzMiBhVHlwZSkKK3sKKyAg
UFJJbnQzMiBpdGVtVHlwZTsKKyAgcmV0dXJuIGFUcmVlSXRlbSAmJiBOU19TVUNDRUVERUQoYVRy
ZWVJdGVtLT5HZXRJdGVtVHlwZSgmaXRlbVR5cGUpKSAmJgorICAgIGl0ZW1UeXBlID09IGFUeXBl
OworfQogCiBuc3Jlc3VsdAogRG9jdW1lbnRWaWV3ZXJJbXBsOjpNYWtlV2luZG93KG5zSVdpZGdl
dCogYVBhcmVudFdpZGdldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBu
c1JlY3QmIGFCb3VuZHMpCiB7CiAgIG5zcmVzdWx0IHJ2OwogCiAgIG1WaWV3TWFuYWdlciA9IGRv
X0NyZWF0ZUluc3RhbmNlKGtWaWV3TWFuYWdlckNJRCwgJnJ2KTsKICAgaWYgKE5TX0ZBSUxFRChy
dikpCiAgICAgcmV0dXJuIHJ2OwogCiAgIG5zSURldmljZUNvbnRleHQgKmR4ID0gbVByZXNDb250
ZXh0LT5EZXZpY2VDb250ZXh0KCk7CkBAIC0yMTkwLDM3ICsyMTk3LDM3IEBAIERvY3VtZW50Vmll
d2VySW1wbDo6TWFrZVdpbmRvdyhuc0lXaWRnZXQKICAgICAvLyBzZWUgaWYgdGhlIGNvbnRhaW5l
clZpZXcgaGFzIGFscmVhZHkgYmVlbiBob29rZWQgaW50byBhIGZvcmVpZ24gdmlldyBtYW5hZ2Vy
IGhpZXJhcmNoeQogICAgIC8vIGlmIGl0IGhhcywgdGhlbiB3ZSBoYXZlIHRvIGhvb2sgaW50byB0
aGUgaGllcmFyY2h5IHRvbyBvdGhlcndpc2UgYmFkIHRoaW5ncyB3aWxsIGhhcHBlbi4KICAgICBu
c0lWaWV3TWFuYWdlciogY29udGFpbmVyVk0gPSBjb250YWluZXJWaWV3LT5HZXRWaWV3TWFuYWdl
cigpOwogICAgIG5zSVZpZXcqIHBWaWV3ID0gY29udGFpbmVyVmlldzsKICAgICBkbyB7CiAgICAg
ICBwVmlldyA9IHBWaWV3LT5HZXRQYXJlbnQoKTsKICAgICB9IHdoaWxlIChwVmlldyAmJiBwVmll
dy0+R2V0Vmlld01hbmFnZXIoKSA9PSBjb250YWluZXJWTSk7CiAKICAgICBpZiAoIXBWaWV3KSB7
CiAgICAgICAvLyBPSywgc28gdGhlIGNvbnRhaW5lciBpcyBub3QgYWxyZWFkeSBob29rZWQgdXAg
aW50byBhIGZvcmVpZ24gdmlldyBtYW5hZ2VyIGhpZXJhcmNoeS4KICAgICAgIC8vIFRoYXQgbWVh
bnMgd2UgY2FuIGNob29zZSBub3QgdG8gaG9vayBvdXJzZWx2ZXMgdXAuCiAgICAgICAvLwotICAg
ICAgLy8gSWYgdGhlIHBhcmVudCBjb250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgdGhlbiB3ZSB3
b24ndCBob29rIGludG8gaXRzIHZpZXcKKyAgICAgIC8vIElmIHRoZSBwYXJlbnQgY29udGFpbmVy
IGlzIGEgY2hyb21lIHNoZWxsIGFuZCB3ZSBhcmUgYSBjb250ZW50IHNoZWxsCisgICAgICAvLyB0
aGVuIHdlIHdvbid0IGhvb2sgaW50byBpdHMgdmlldwogICAgICAgLy8gdHJlZS4gVGhpcyB3aWxs
IGltcHJvdmUgcGVyZm9ybWFuY2UgYSBsaXR0bGUgYml0IChlc3BlY2lhbGx5IGdpdmVuIHNjcm9s
bGluZy9wYWludGluZyBwZXJmIGJ1Z3MpCiAgICAgICAvLyBidXQgaXMgcmVhbGx5IGp1c3QgZm9y
IHBlYWNlIG9mIG1pbmQuIFRoaXMgY2hlY2sgY2FuIGJlIHJlbW92ZWQgaWYgd2Ugd2FudCB0byBz
dXBwb3J0IGZhbmN5CiAgICAgICAvLyBjaHJvbWUgZWZmZWN0cyBsaWtlIHRyYW5zcGFyZW50IGNv
bnRyb2xzIGZsb2F0aW5nIG92ZXIgY29udGVudCwgdHJhbnNwYXJlbnQgV2ViIGJyb3dzZXJzLCBh
bmQKICAgICAgIC8vIHRoaW5ncyBsaWtlIHRoYXQsIGFuZCB0aGUgcGVyZiBidWdzIGFyZSBmaXhl
ZC4KICAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRhaW5lcihkb19RdWVy
eVJlZmVyZW50KG1Db250YWluZXIpKTsKICAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0
ZW0+IHBhcmVudENvbnRhaW5lcjsKLSAgICAgIFBSSW50MzIgaXRlbVR5cGU7Ci0gICAgICBpZiAo
bnNudWxsID09IGNvbnRhaW5lcgotICAgICAgICAgIHx8IE5TX0ZBSUxFRChjb250YWluZXItPkdl
dFBhcmVudChnZXR0ZXJfQWRkUmVmcyhwYXJlbnRDb250YWluZXIpKSkKLSAgICAgICAgICB8fCBu
c251bGwgPT0gcGFyZW50Q29udGFpbmVyCi0gICAgICAgICAgfHwgTlNfRkFJTEVEKHBhcmVudENv
bnRhaW5lci0+R2V0SXRlbVR5cGUoJml0ZW1UeXBlKSkKLSAgICAgICAgICB8fCBpdGVtVHlwZSAh
PSBuc0lEb2NTaGVsbFRyZWVJdGVtOjp0eXBlQ29udGVudCkgeworICAgICAgaWYgKGNvbnRhaW5l
cikgeworICAgICAgICBjb250YWluZXItPkdldFBhcmVudChnZXR0ZXJfQWRkUmVmcyhwYXJlbnRD
b250YWluZXIpKTsKKyAgICAgIH0KKyAgICAgIGlmIChJc1NoZWxsT2ZUeXBlKGNvbnRhaW5lciwg
bnNJRG9jU2hlbGxUcmVlSXRlbTo6dHlwZUNvbnRlbnQpICYmCisgICAgICAgICAgSXNTaGVsbE9m
VHlwZShwYXJlbnRDb250YWluZXIsIG5zSURvY1NoZWxsVHJlZUl0ZW06OnR5cGVDaHJvbWUpKSB7
CiAgICAgICAgIGNvbnRhaW5lclZpZXcgPSBuc251bGw7CiAgICAgICB9CiAgICAgfQogICB9CiAK
ICAgLy8gQ3JlYXRlIGEgdmlldwogICBuc0lWaWV3KiB2aWV3ID0gbVZpZXdNYW5hZ2VyLT5DcmVh
dGVWaWV3KHRib3VuZHMsIGNvbnRhaW5lclZpZXcpOwogICBpZiAoIXZpZXcpCiAgICAgcmV0dXJu
IE5TX0VSUk9SX09VVF9PRl9NRU1PUlk7CiAKICAgLy8gcGFzcyBpbiBhIG5hdGl2ZSB3aWRnZXQg
dG8gYmUgdGhlIHBhcmVudCB3aWRnZXQgT05MWSBpZiB0aGUgdmlldyBoaWVyYXJjaHkgd2lsbCBz
dGFuZCBhbG9uZS4KICAgLy8gb3RoZXJ3aXNlIHRoZSB2aWV3IHdpbGwgZmluZCBpdHMgb3duIHBh
cmVudCB3aWRnZXQgYW5kICJkbyB0aGUgcmlnaHQgdGhpbmciIHRvCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285029</attachid>
            <date>2007-10-15 19:17:56 -0700</date>
            <delta_ts>2010-08-10 14:40:14 -0700</delta_ts>
            <desc>Revised patch using GetSameTypeParent as suggested by bz</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>2612</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">SW5kZXg6IGxheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp
bGU6IC9jdnNyb290L21vemlsbGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAsdgpy
ZXRyaWV2aW5nIHJldmlzaW9uIDEuNTQ5CmRpZmYgLXUgLXAgLTEgLTIgLXIxLjU0OSBuc0RvY3Vt
ZW50Vmlld2VyLmNwcAotLS0gbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAJNiBPY3Qg
MjAwNyAwMDozNTowMSAtMDAwMAkxLjU0OQorKysgbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdl
ci5jcHAJMTYgT2N0IDIwMDcgMDI6MTM6MTcgLTAwMDAKQEAgLTIxOTAsMzcgKzIxODgsMzYgQEAg
RG9jdW1lbnRWaWV3ZXJJbXBsOjpNYWtlV2luZG93KG5zSVdpZGdldAogICAgIC8vIHNlZSBpZiB0
aGUgY29udGFpbmVyVmlldyBoYXMgYWxyZWFkeSBiZWVuIGhvb2tlZCBpbnRvIGEgZm9yZWlnbiB2
aWV3IG1hbmFnZXIgaGllcmFyY2h5CiAgICAgLy8gaWYgaXQgaGFzLCB0aGVuIHdlIGhhdmUgdG8g
aG9vayBpbnRvIHRoZSBoaWVyYXJjaHkgdG9vIG90aGVyd2lzZSBiYWQgdGhpbmdzIHdpbGwgaGFw
cGVuLgogICAgIG5zSVZpZXdNYW5hZ2VyKiBjb250YWluZXJWTSA9IGNvbnRhaW5lclZpZXctPkdl
dFZpZXdNYW5hZ2VyKCk7CiAgICAgbnNJVmlldyogcFZpZXcgPSBjb250YWluZXJWaWV3OwogICAg
IGRvIHsKICAgICAgIHBWaWV3ID0gcFZpZXctPkdldFBhcmVudCgpOwogICAgIH0gd2hpbGUgKHBW
aWV3ICYmIHBWaWV3LT5HZXRWaWV3TWFuYWdlcigpID09IGNvbnRhaW5lclZNKTsKIAogICAgIGlm
ICghcFZpZXcpIHsKICAgICAgIC8vIE9LLCBzbyB0aGUgY29udGFpbmVyIGlzIG5vdCBhbHJlYWR5
IGhvb2tlZCB1cCBpbnRvIGEgZm9yZWlnbiB2aWV3IG1hbmFnZXIgaGllcmFyY2h5LgogICAgICAg
Ly8gVGhhdCBtZWFucyB3ZSBjYW4gY2hvb3NlIG5vdCB0byBob29rIG91cnNlbHZlcyB1cC4KICAg
ICAgIC8vCi0gICAgICAvLyBJZiB0aGUgcGFyZW50IGNvbnRhaW5lciBpcyBhIGNocm9tZSBzaGVs
bCB0aGVuIHdlIHdvbid0IGhvb2sgaW50byBpdHMgdmlldworICAgICAgLy8gSWYgdGhlIHBhcmVu
dCBjb250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgYW5kIHdlIGFyZSBhIGNvbnRlbnQgc2hlbGwK
KyAgICAgIC8vIHRoZW4gd2Ugd29uJ3QgaG9vayBpbnRvIGl0cyB2aWV3CiAgICAgICAvLyB0cmVl
LiBUaGlzIHdpbGwgaW1wcm92ZSBwZXJmb3JtYW5jZSBhIGxpdHRsZSBiaXQgKGVzcGVjaWFsbHkg
Z2l2ZW4gc2Nyb2xsaW5nL3BhaW50aW5nIHBlcmYgYnVncykKICAgICAgIC8vIGJ1dCBpcyByZWFs
bHkganVzdCBmb3IgcGVhY2Ugb2YgbWluZC4gVGhpcyBjaGVjayBjYW4gYmUgcmVtb3ZlZCBpZiB3
ZSB3YW50IHRvIHN1cHBvcnQgZmFuY3kKICAgICAgIC8vIGNocm9tZSBlZmZlY3RzIGxpa2UgdHJh
bnNwYXJlbnQgY29udHJvbHMgZmxvYXRpbmcgb3ZlciBjb250ZW50LCB0cmFuc3BhcmVudCBXZWIg
YnJvd3NlcnMsIGFuZAogICAgICAgLy8gdGhpbmdzIGxpa2UgdGhhdCwgYW5kIHRoZSBwZXJmIGJ1
Z3MgYXJlIGZpeGVkLgogICAgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gY29udGFp
bmVyKGRvX1F1ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcikpOwotICAgICAgbnNDT01QdHI8bnNJRG9j
U2hlbGxUcmVlSXRlbT4gcGFyZW50Q29udGFpbmVyOwotICAgICAgUFJJbnQzMiBpdGVtVHlwZTsK
LSAgICAgIGlmIChuc251bGwgPT0gY29udGFpbmVyCi0gICAgICAgICAgfHwgTlNfRkFJTEVEKGNv
bnRhaW5lci0+R2V0UGFyZW50KGdldHRlcl9BZGRSZWZzKHBhcmVudENvbnRhaW5lcikpKQotICAg
ICAgICAgIHx8IG5zbnVsbCA9PSBwYXJlbnRDb250YWluZXIKLSAgICAgICAgICB8fCBOU19GQUlM
RUQocGFyZW50Q29udGFpbmVyLT5HZXRJdGVtVHlwZSgmaXRlbVR5cGUpKQotICAgICAgICAgIHx8
IGl0ZW1UeXBlICE9IG5zSURvY1NoZWxsVHJlZUl0ZW06OnR5cGVDb250ZW50KSB7CisgICAgICBu
c0NPTVB0cjxuc0lEb2NTaGVsbFRyZWVJdGVtPiBzYW1lVHlwZVBhcmVudDsKKyAgICAgIGlmIChj
b250YWluZXIpIHsKKyAgICAgICAgY29udGFpbmVyLT5HZXRTYW1lVHlwZVBhcmVudChnZXR0ZXJf
QWRkUmVmcyhzYW1lVHlwZVBhcmVudCkpOworICAgICAgfQorICAgICAgaWYgKCFzYW1lVHlwZVBh
cmVudCkgewogICAgICAgICBjb250YWluZXJWaWV3ID0gbnNudWxsOwogICAgICAgfQogICAgIH0K
ICAgfQogCiAgIC8vIENyZWF0ZSBhIHZpZXcKICAgbnNJVmlldyogdmlldyA9IG1WaWV3TWFuYWdl
ci0+Q3JlYXRlVmlldyh0Ym91bmRzLCBjb250YWluZXJWaWV3KTsKICAgaWYgKCF2aWV3KQogICAg
IHJldHVybiBOU19FUlJPUl9PVVRfT0ZfTUVNT1JZOwogCiAgIC8vIHBhc3MgaW4gYSBuYXRpdmUg
d2lkZ2V0IHRvIGJlIHRoZSBwYXJlbnQgd2lkZ2V0IE9OTFkgaWYgdGhlIHZpZXcgaGllcmFyY2h5
IHdpbGwgc3RhbmQgYWxvbmUuCiAgIC8vIG90aGVyd2lzZSB0aGUgdmlldyB3aWxsIGZpbmQgaXRz
IG93biBwYXJlbnQgd2lkZ2V0IGFuZCAiZG8gdGhlIHJpZ2h0IHRoaW5nIiB0bwo=
</data>
<flag name="review"
          id="203681"
          type_id="937"
          status="+"
          setter="bzbarsky"
    />
    <flag name="superreview"
          id="203682"
          type_id="5"
          status="+"
          setter="bzbarsky"
    />
    <flag name="approval1.9"
          id="203685"
          type_id="335"
          status="+"
          setter="dsicore"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425945</attachid>
            <date>2010-02-08 23:46:40 -0800</date>
            <delta_ts>2010-06-25 04:18:41 -0700</delta_ts>
            <desc>Part 1: hookup view managers unconditionally</desc>
            <filename>hookup-vms</filename>
            <type>text/plain</type>
            <size>3655</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2xheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwIGIvbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAKLS0tIGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdl
ci5jcHAKKysrIGIvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKQEAgLTIzMjksMjcg
KzIzMjksMjMgQEAgRG9jdW1lbnRWaWV3ZXJJbXBsOjpNYWtlV2luZG93KGNvbnN0IG5zUwogICBy
ZXR1cm4gcnY7CiB9CiAKIG5zSVZpZXcqCiBEb2N1bWVudFZpZXdlckltcGw6OkZpbmRDb250YWlu
ZXJWaWV3KCkKIHsKICAgbnNJVmlldyogY29udGFpbmVyVmlldyA9IG5zbnVsbDsKIAotICBuc0NP
TVB0cjxuc0lDb250ZW50PiBjb250YWluZXJFbGVtZW50OwotICBuc0NPTVB0cjxuc0lEb2NTaGVs
bFRyZWVJdGVtPiBkb2NTaGVsbEl0ZW0gPSBkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIpOwot
ICBuc0NPTVB0cjxuc1BJRE9NV2luZG93PiBwd2luKGRvX0dldEludGVyZmFjZShkb2NTaGVsbEl0
ZW0pKTsKLSAgaWYgKHB3aW4pIHsKLSAgICBjb250YWluZXJFbGVtZW50ID0gZG9fUXVlcnlJbnRl
cmZhY2UocHdpbi0+R2V0RnJhbWVFbGVtZW50SW50ZXJuYWwoKSk7Ci0gIH0KLSAgICAgICAgCiAg
IGlmIChtUGFyZW50V2lkZ2V0KSB7CiAgICAgY29udGFpbmVyVmlldyA9IG5zSVZpZXc6OkdldFZp
ZXdGb3IobVBhcmVudFdpZGdldCk7Ci0gIH0gZWxzZSB7Ci0gICAgaWYgKG1Db250YWluZXIgJiYg
cHdpbikgeworICB9IGVsc2UgaWYgKG1Db250YWluZXIpIHsKKyAgICBuc0NPTVB0cjxuc0lEb2NT
aGVsbFRyZWVJdGVtPiBkb2NTaGVsbEl0ZW0gPSBkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIp
OworICAgIG5zQ09NUHRyPG5zUElET01XaW5kb3c+IHB3aW4oZG9fR2V0SW50ZXJmYWNlKGRvY1No
ZWxsSXRlbSkpOworICAgIGlmIChwd2luKSB7CisgICAgICBuc0NPTVB0cjxuc0lDb250ZW50PiBj
b250YWluZXJFbGVtZW50ID0gZG9fUXVlcnlJbnRlcmZhY2UocHdpbi0+R2V0RnJhbWVFbGVtZW50
SW50ZXJuYWwoKSk7CiAgICAgICBuc0NPTVB0cjxuc0lQcmVzU2hlbGw+IHBhcmVudFByZXNTaGVs
bDsKICAgICAgIGlmIChkb2NTaGVsbEl0ZW0pIHsKICAgICAgICAgbnNDT01QdHI8bnNJRG9jU2hl
bGxUcmVlSXRlbT4gcGFyZW50RG9jU2hlbGxJdGVtOwogICAgICAgICBkb2NTaGVsbEl0ZW0tPkdl
dFBhcmVudChnZXR0ZXJfQWRkUmVmcyhwYXJlbnREb2NTaGVsbEl0ZW0pKTsKICAgICAgICAgaWYg
KHBhcmVudERvY1NoZWxsSXRlbSkgewogICAgICAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsPiBw
YXJlbnREb2NTaGVsbCA9IGRvX1F1ZXJ5SW50ZXJmYWNlKHBhcmVudERvY1NoZWxsSXRlbSk7CiAg
ICAgICAgICAgcGFyZW50RG9jU2hlbGwtPkdldFByZXNTaGVsbChnZXR0ZXJfQWRkUmVmcyhwYXJl
bnRQcmVzU2hlbGwpKTsKICAgICAgICAgfQpAQCAtMjM3Nyw1NSArMjM3MywxNyBAQCBEb2N1bWVu
dFZpZXdlckltcGw6OkZpbmRDb250YWluZXJWaWV3KCkKICAgICAgICAgICB9CiAgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgTlNfV0FSTklORygiU3ViZG9jdW1lbnQgY29udGFpbmVyIGhhcyBu
byBmcmFtZSIpOwogICAgICAgICB9CiAgICAgICB9CiAgICAgfQogICB9CiAKLSAgaWYgKCFjb250
YWluZXJWaWV3KQotICAgIHJldHVybiBuc251bGw7Ci0KLSAgaWYgKGNvbnRhaW5lckVsZW1lbnQg
JiYKLSAgICAgIGNvbnRhaW5lckVsZW1lbnQtPkhhc0F0dHIoa05hbWVTcGFjZUlEX05vbmUsIG5z
R2tBdG9tczo6dHJhbnNwYXJlbnQpKQotICAgIHJldHVybiBjb250YWluZXJWaWV3OwotCi0gIG5z
SVdpZGdldCogb3V0ZXJXaWRnZXQgPSBjb250YWluZXJWaWV3LT5HZXROZWFyZXN0V2lkZ2V0KG5z
bnVsbCk7Ci0gIGlmIChvdXRlcldpZGdldCAmJgotICAgICAgb3V0ZXJXaWRnZXQtPkdldFRyYW5z
cGFyZW5jeU1vZGUoKSA9PSBlVHJhbnNwYXJlbmN5VHJhbnNwYXJlbnQpCi0gICAgcmV0dXJuIGNv
bnRhaW5lclZpZXc7Ci0KLSAgLy8gc2VlIGlmIHRoZSBjb250YWluZXJWaWV3IGhhcyBhbHJlYWR5
IGJlZW4gaG9va2VkIGludG8gYSBmb3JlaWduIHZpZXcgbWFuYWdlciBoaWVyYXJjaHkKLSAgLy8g
aWYgaXQgaGFzLCB0aGVuIHdlIGhhdmUgdG8gaG9vayBpbnRvIHRoZSBoaWVyYXJjaHkgdG9vIG90
aGVyd2lzZSBiYWQgdGhpbmdzIHdpbGwgaGFwcGVuLgotICBuc0lWaWV3TWFuYWdlciogY29udGFp
bmVyVk0gPSBjb250YWluZXJWaWV3LT5HZXRWaWV3TWFuYWdlcigpOwotICBuc0lWaWV3KiBwVmll
dyA9IGNvbnRhaW5lclZpZXc7Ci0gIGRvIHsKLSAgICBwVmlldyA9IHBWaWV3LT5HZXRQYXJlbnQo
KTsKLSAgfSB3aGlsZSAocFZpZXcgJiYgcFZpZXctPkdldFZpZXdNYW5hZ2VyKCkgPT0gY29udGFp
bmVyVk0pOwotICBpZiAocFZpZXcpCi0gICAgcmV0dXJuIGNvbnRhaW5lclZpZXc7Ci0KLSAgLy8g
T0ssIHNvIHRoZSBjb250YWluZXIgaXMgbm90IGFscmVhZHkgaG9va2VkIHVwIGludG8gYSBmb3Jl
aWduIHZpZXcgbWFuYWdlciBoaWVyYXJjaHkuCi0gIC8vIFRoYXQgbWVhbnMgd2UgY2FuIGNob29z
ZSBub3QgdG8gaG9vayBvdXJzZWx2ZXMgdXAuCi0gIC8vCi0gIC8vIElmIHRoZSBwYXJlbnQgY29u
dGFpbmVyIGlzIGEgY2hyb21lIHNoZWxsIGFuZCB3ZSBhcmUgYSBjb250ZW50IHNoZWxsCi0gIC8v
IHRoZW4gd2Ugd29uJ3QgaG9vayBpbnRvIGl0cyB2aWV3Ci0gIC8vIHRyZWUuIFRoaXMgd2lsbCBp
bXByb3ZlIHBlcmZvcm1hbmNlIGEgbGl0dGxlIGJpdCAoZXNwZWNpYWxseSBnaXZlbiBzY3JvbGxp
bmcvcGFpbnRpbmcgcGVyZiBidWdzKQotICAvLyBidXQgaXMgcmVhbGx5IGp1c3QgZm9yIHBlYWNl
IG9mIG1pbmQuIFRoaXMgY2hlY2sgY2FuIGJlIHJlbW92ZWQgaWYgd2Ugd2FudCB0byBzdXBwb3J0
IGZhbmN5Ci0gIC8vIGNocm9tZSBlZmZlY3RzIGxpa2UgdHJhbnNwYXJlbnQgY29udHJvbHMgZmxv
YXRpbmcgb3ZlciBjb250ZW50LCB0cmFuc3BhcmVudCBXZWIgYnJvd3NlcnMsIGFuZAotICAvLyB0
aGluZ3MgbGlrZSB0aGF0LCBhbmQgdGhlIHBlcmYgYnVncyBhcmUgZml4ZWQuCi0gIG5zQ09NUHRy
PG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRhaW5lcihkb19RdWVyeVJlZmVyZW50KG1Db250YWlu
ZXIpKTsKLSAgaWYgKGNvbnRhaW5lcikgewotICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0
ZW0+IHNhbWVUeXBlUGFyZW50OwotICAgIGNvbnRhaW5lci0+R2V0U2FtZVR5cGVQYXJlbnQoZ2V0
dGVyX0FkZFJlZnMoc2FtZVR5cGVQYXJlbnQpKTsKLSAgICBpZiAoc2FtZVR5cGVQYXJlbnQpCi0g
ICAgICByZXR1cm4gY29udGFpbmVyVmlldzsKLSAgfQotICByZXR1cm4gbnNudWxsOworICByZXR1
cm4gY29udGFpbmVyVmlldzsKIH0KIAogbnNyZXN1bHQKIERvY3VtZW50Vmlld2VySW1wbDo6Q3Jl
YXRlRGV2aWNlQ29udGV4dChuc0lWaWV3KiBhQ29udGFpbmVyVmlldykKIHsKICAgTlNfUFJFQ09O
RElUSU9OKCFtUHJlc1NoZWxsICYmICFtUHJlc0NvbnRleHQgJiYgIW1XaW5kb3csCiAgICAgICAg
ICAgICAgICAgICAiVGhpcyB3aWxsIHNjcmV3IHVwIG91ciBleGlzdGluZyBwcmVzZW50YXRpb24i
KTsKICAgTlNfUFJFQ09ORElUSU9OKG1Eb2N1bWVudCwgIkdvdHRhIGhhdmUgYSBkb2N1bWVudCBo
ZXJlIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425946</attachid>
            <date>2010-02-08 23:51:44 -0800</date>
            <delta_ts>2010-08-13 11:28:39 -0700</delta_ts>
            <desc>Part 2: remove widgets from all subframes</desc>
            <filename>remove-widget</filename>
            <type>text/plain</type>
            <size>993</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2xheW91dC9nZW5lcmljL25zRnJhbWVGcmFtZS5jcHAgYi9sYXlvdXQvZ2Vu
ZXJpYy9uc0ZyYW1lRnJhbWUuY3BwCi0tLSBhL2xheW91dC9nZW5lcmljL25zRnJhbWVGcmFtZS5j
cHAKKysrIGIvbGF5b3V0L2dlbmVyaWMvbnNGcmFtZUZyYW1lLmNwcApAQCAtOTEyLDI1ICs5MTIs
MTYgQEAgbnNTdWJEb2N1bWVudEZyYW1lOjpDcmVhdGVWaWV3QW5kV2lkZ2V0KAogICBuc0lWaWV3
KiBpbm5lclZpZXcgPSB2aWV3TWFuLT5DcmVhdGVWaWV3KHZpZXdCb3VuZHMsIG91dGVyVmlldyk7
CiAgIGlmICghaW5uZXJWaWV3KSB7CiAgICAgTlNfRVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgaW5u
ZXIgdmlldyIpOwogICAgIHJldHVybiBuc251bGw7CiAgIH0KICAgbUlubmVyVmlldyA9IGlubmVy
VmlldzsKICAgdmlld01hbi0+SW5zZXJ0Q2hpbGQob3V0ZXJWaWV3LCBpbm5lclZpZXcsIG5zbnVs
bCwgUFJfVFJVRSk7CiAKLSAgaWYgKGFDb250ZW50VHlwZSAhPSBlQ29udGVudFR5cGVDb250ZW50
RnJhbWUpIHsKLSAgICAvLyB3aWRnZXQgbmVlZGVkLgotICAgIG5zcmVzdWx0IHJ2ID0gaW5uZXJW
aWV3LT5DcmVhdGVXaWRnZXQoa0NDaGlsZENJRCwgbnNudWxsLCBuc251bGwsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUl9UUlVFLCBQUl9UUlVFLCBhQ29udGVu
dFR5cGUpOwotICAgIGlmIChOU19GQUlMRUQocnYpKSB7Ci0gICAgICBOU19XQVJOSU5HKCJDb3Vs
ZG4ndCBjcmVhdGUgd2lkZ2V0IGZvciBmcmFtZS4iKTsKLSAgICAgIG1Jbm5lclZpZXcgPSBuc251
bGw7Ci0gICAgfQotICB9CiAgIHJldHVybiBtSW5uZXJWaWV3OwogfQogCiBuc0lGcmFtZSoKIG5z
U3ViRG9jdW1lbnRGcmFtZTo6T2J0YWluSW50cmluc2ljU2l6ZUZyYW1lKCkKIHsKICAgbnNDT01Q
dHI8bnNJT2JqZWN0TG9hZGluZ0NvbnRlbnQ+IG9sYyA9IGRvX1F1ZXJ5SW50ZXJmYWNlKEdldENv
bnRlbnQoKSk7CiAgIGlmIChvbGMpIHsK
</data>
<flag name="review"
          id="387197"
          type_id="937"
          status="+"
          setter="dbaron"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>427177</attachid>
            <date>2010-02-16 12:37:41 -0800</date>
            <delta_ts>2010-02-16 12:37:41 -0800</delta_ts>
            <desc>crash stack</desc>
            <filename>130078-stack.txt</filename>
            <type>text/plain</type>
            <size>3931</size>
            <attacher>dbolter</attacher>
            
              <data encoding="base64">Pgl4dWwuZGxsIW1vemlsbGE6OndpZGdldDo6V2luZG93SG9vazo6TG9va3VwKHVuc2lnbmVkIGlu
dCBuTXNnPTIpICBMaW5lIDk5CUMrKwogCXh1bC5kbGwhbW96aWxsYTo6d2lkZ2V0OjpXaW5kb3dI
b29rOjpMb29rdXBPckNyZWF0ZSh1bnNpZ25lZCBpbnQgbk1zZz0yKSAgTGluZSAxMTAJQysrCiAJ
eHVsLmRsbCFtb3ppbGxhOjp3aWRnZXQ6OldpbmRvd0hvb2s6OkFkZE1vbml0b3IodW5zaWduZWQg
aW50IG5Nc2c9MiwgaW50ICh2b2lkICosIEhXTkRfXyAqLCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVk
IGludCwgbG9uZywgbG9uZyAqKSogY2FsbGJhY2s9MHg1OGQwYTg1Miwgdm9pZCAqIGNvbnRleHQ9
MHgwMmZjMzBiNCkgIExpbmUgNzkJQysrCiAJeHVsLmRsbCFtb3ppbGxhOjp3aWRnZXQ6OlRhc2ti
YXJQcmV2aWV3OjpUYXNrYmFyUHJldmlldyhJVGFza2Jhckxpc3Q0ICogYVRhc2tiYXI9MHgwMWE4
ZDIxOCwgbnNJVGFza2JhclByZXZpZXdDb250cm9sbGVyICogYUNvbnRyb2xsZXI9MHgwMzFiMGUx
MCwgSFdORF9fICogYUhXTkQ9MHgwMDAwMDAwMCwgbnNJRG9jU2hlbGwgKiBhU2hlbGw9MHgwMjVj
OTVmOCkgIExpbmUgMTA4CUMrKwogCXh1bC5kbGwhbW96aWxsYTo6d2lkZ2V0OjpUYXNrYmFyVGFi
UHJldmlldzo6VGFza2JhclRhYlByZXZpZXcoSVRhc2tiYXJMaXN0NCAqIGFUYXNrYmFyPTB4MDFh
OGQyMTgsIG5zSVRhc2tiYXJQcmV2aWV3Q29udHJvbGxlciAqIGFDb250cm9sbGVyPTB4MDMxYjBl
MTAsIEhXTkRfXyAqIGFIV05EPTB4MDAwMDAwMDAsIG5zSURvY1NoZWxsICogYVNoZWxsPTB4MDI1
Yzk1ZjgpICBMaW5lIDYyICsgMHgyNyBieXRlcwlDKysKIAl4dWwuZGxsIW1vemlsbGE6OndpZGdl
dDo6V2luVGFza2Jhcjo6Q3JlYXRlVGFza2JhclRhYlByZXZpZXcobnNJRG9jU2hlbGwgKiBzaGVs
bD0weDAyNWM5NWY4LCBuc0lUYXNrYmFyUHJldmlld0NvbnRyb2xsZXIgKiBjb250cm9sbGVyPTB4
MDMxYjBlMTAsIG5zSVRhc2tiYXJUYWJQcmV2aWV3ICogKiBfcmV0dmFsPTB4MDAyM2QwM2MpICBM
aW5lIDI1MCArIDB4MjYgYnl0ZXMJQysrCiAJeHVsLmRsbCFOU19JbnZva2VCeUluZGV4X1AobnNJ
U3VwcG9ydHMgKiB0aGF0PTB4MDI1ZTUxMDAsIHVuc2lnbmVkIGludCBtZXRob2RJbmRleD00LCB1
bnNpZ25lZCBpbnQgcGFyYW1Db3VudD0zLCBuc1hQVENWYXJpYW50ICogcGFyYW1zPTB4MDAyM2Qw
MWMpICBMaW5lIDEwMwlDKysKIAl4dWwuZGxsIVhQQ1dyYXBwZWROYXRpdmU6OkNhbGxNZXRob2Qo
WFBDQ2FsbENvbnRleHQgJiBjY3g9ey4uLn0sIFhQQ1dyYXBwZWROYXRpdmU6OkNhbGxNb2RlIG1v
ZGU9Q0FMTF9NRVRIT0QpICBMaW5lIDI3MjcgKyAweDFmIGJ5dGVzCUMrKwogCXh1bC5kbGwhWFBD
X1dOX0NhbGxNZXRob2QoSlNDb250ZXh0ICogY3g9MHgwMDQyNDgwMCwgSlNPYmplY3QgKiBvYmo9
MHgwMmQ2ZWRlMCwgdW5zaWduZWQgaW50IGFyZ2M9MiwgaW50ICogYXJndj0weDAzMjlhMjgwLCBp
bnQgKiB2cD0weDAwMjNkM2M4KSAgTGluZSAxNzU2ICsgMHhhIGJ5dGVzCUMrKwogCW1vempzLmRs
bCFqc19JbnZva2UoSlNDb250ZXh0ICogY3g9MHgwMDQyNDgwMCwgdW5zaWduZWQgaW50IGFyZ2M9
MiwgaW50ICogdnA9MHgwMzI5YTI3OCwgdW5zaWduZWQgaW50IGZsYWdzPTIpICBMaW5lIDEzODgg
KyAweDFiIGJ5dGVzCUMrKwogCW1vempzLmRsbCFqc19JbnRlcnByZXQoSlNDb250ZXh0ICogY3g9
MHgwMDQyNDgwMCkgIExpbmUgMjMwNQlDKysKIAltb3pqcy5kbGwhanNfSW52b2tlKEpTQ29udGV4
dCAqIGN4PTB4MDA0MjQ4MDAsIHVuc2lnbmVkIGludCBhcmdjPTMsIGludCAqIHZwPTB4MDMyOWEw
MjAsIHVuc2lnbmVkIGludCBmbGFncz0wKSAgTGluZSAxMzk2ICsgMHg2IGJ5dGVzCUMrKwogCW1v
empzLmRsbCFqc19JbnRlcm5hbEludm9rZShKU0NvbnRleHQgKiBjeD0weDAwNDI0ODAwLCBKU09i
amVjdCAqIG9iaj0weDAxN2QzNDIwLCBpbnQgZnZhbD0yNDkyMTMxMiwgdW5zaWduZWQgaW50IGZs
YWdzPTAsIHVuc2lnbmVkIGludCBhcmdjPTMsIGludCAqIGFyZ3Y9MHgwNTZlM2ZjMCwgaW50ICog
cnZhbD0weDAwMjNkNmE4KSAgTGluZSAxNDUzICsgMHhmIGJ5dGVzCUMrKwogCW1vempzLmRsbCFK
U19DYWxsRnVuY3Rpb24oSlNDb250ZXh0ICogY3g9MHgwMDQyNDgwMCwgSlNPYmplY3QgKiBvYmo9
MHgwMTdkMzQyMCwgSlNGdW5jdGlvbiAqIGZ1bj0weDAxN2M0NGUwLCB1bnNpZ25lZCBpbnQgYXJn
Yz0zLCBpbnQgKiBhcmd2PTB4MDU2ZTNmYzAsIGludCAqIHJ2YWw9MHgwMDIzZDZhOCkgIExpbmUg
NTEyMiArIDB4MjcgYnl0ZXMJQysrCiAJeHVsLmRsbCFuc0pTQ29udGV4dDo6Q2FsbEV2ZW50SGFu
ZGxlcihuc0lTdXBwb3J0cyAqIGFUYXJnZXQ9MHgwMjVjMTY0MCwgdm9pZCAqIGFTY29wZT0weDAx
N2QzNDIwLCB2b2lkICogYUhhbmRsZXI9MHgwMTdjNDRlMCwgbnNJQXJyYXkgKiBhYXJndj0weDA2
MzJmNTQ0LCBuc0lWYXJpYW50ICogKiBhcnY9MHgwMDIzZDc2YykgIExpbmUgMjE2NCArIDB4MTkg
Ynl0ZXMJQysrCiAJeHVsLmRsbCFuc0dsb2JhbFdpbmRvdzo6UnVuVGltZW91dChuc1RpbWVvdXQg
KiBhVGltZW91dD0weDA1NjdlNzgwKSAgTGluZSA4Mzg3CUMrKwogCXh1bC5kbGwhbnNHbG9iYWxX
aW5kb3c6OlRpbWVyQ2FsbGJhY2sobnNJVGltZXIgKiBhVGltZXI9MHgwNTY2OGViMCwgdm9pZCAq
IGFDbG9zdXJlPTB4MDU2N2U3ODApICBMaW5lIDg3MzIJQysrCiAJeHVsLmRsbCFuc1RpbWVySW1w
bDo6RmlyZSgpICBMaW5lIDQyNyArIDB4NiBieXRlcwlDKysKIAl4dWwuZGxsIW5zVGltZXJFdmVu
dDo6UnVuKCkgIExpbmUgNTIxCUMrKwogCXh1bC5kbGwhbnNUaHJlYWQ6OlByb2Nlc3NOZXh0RXZl
bnQoaW50IG1heVdhaXQ9MCwgaW50ICogcmVzdWx0PTB4MDAyM2Q4MWMpICBMaW5lIDUyNyArIDB4
NiBieXRlcwlDKysKIAl4dWwuZGxsIU5TX1Byb2Nlc3NOZXh0RXZlbnRfUChuc0lUaHJlYWQgKiB0
aHJlYWQ9MHgwMDAwMDAwMSwgaW50IG1heVdhaXQ9MCkgIExpbmUgMjUwICsgMHhkIGJ5dGVzCUMr
KwogCXh1bC5kbGwhbW96aWxsYTo6aXBjOjpNZXNzYWdlUHVtcDo6UnVuKGJhc2U6Ok1lc3NhZ2VQ
dW1wOjpEZWxlZ2F0ZSAqIGFEZWxlZ2F0ZT0weDAxNDNmNDgwKSAgTGluZSAxMTggKyAweGEgYnl0
ZXMJQysrCiAJeHVsLmRsbCFNZXNzYWdlTG9vcDo6UnVuSW50ZXJuYWwoKSAgTGluZSAyMTEgKyAw
eDkgYnl0ZXMJQysrCiAJeHVsLmRsbCFNZXNzYWdlTG9vcDo6UnVuSGFuZGxlcigpICBMaW5lIDE5
NQlDKysKIAl4dWwuZGxsIU1lc3NhZ2VMb29wOjpSdW4oKSAgTGluZSAxNjkJQysrCiAJeHVsLmRs
bCFuc0Jhc2VBcHBTaGVsbDo6UnVuKCkgIExpbmUgMTgwCUMrKwogCXh1bC5kbGwhbnNBcHBTaGVs
bDo6UnVuKCkgIExpbmUgMjQwCUMrKwogCXh1bC5kbGwhbnNBcHBTdGFydHVwOjpSdW4oKSAgTGlu
ZSAxODQJQysrCiAJeHVsLmRsbCFYUkVfbWFpbihpbnQgYXJnYz0xLCBjaGFyICogKiBhcmd2PTB4
MDA0MmEwYTgsIGNvbnN0IG5zWFJFQXBwRGF0YSAqIGFBcHBEYXRhPTB4MDA0MTUzYzApICBMaW5l
IDM0NzgJQysrCiAJZmlyZWZveC5leGUhTlNfaW50ZXJuYWxfbWFpbihpbnQgYXJnYz0xLCBjaGFy
ICogKiBhcmd2PTB4MDA0MmEwYTgpICBMaW5lIDE1OQlDKysKIAlmaXJlZm94LmV4ZSF3bWFpbihp
bnQgYXJnYz00MzY2NTA0LCB3Y2hhcl90ICogKiBhcmd2PTB4MDA0MzYwODApICBMaW5lIDEyMglD
KysKIAlmaXJlZm94LmV4ZSFfX3RtYWluQ1JUU3RhcnR1cCgpICBMaW5lIDU5MSArIDB4MTkgYnl0
ZXMJQwogCWtlcm5lbDMyLmRsbCE3NWZkMTE3NCgpIAkKIAlbRnJhbWVzIGJlbG93IG1heSBiZSBp
bmNvcnJlY3QgYW5kL29yIG1pc3NpbmcsIG5vIHN5bWJvbHMgbG9hZGVkIGZvciBrZXJuZWwzMi5k
bGxdCQogCW50ZGxsLmRsbCE3N2I4YjNmNSgpIAkKIAludGRsbC5kbGwhNzdiOGIzYzgoKSAJCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>449631</attachid>
            <date>2010-06-07 08:11:58 -0700</date>
            <delta_ts>2010-06-07 08:11:58 -0700</delta_ts>
            <desc>Testcase for iframe overflowing when scrolled</desc>
            <filename>iframe_overflow.xul</filename>
            <type>application/vnd.mozilla.xul+xml</type>
            <size>1016</size>
            <attacher>daniel</attacher>
            
              <data encoding="base64">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCg0KPD94bWwtc3R5bGVzaGVl
dCBocmVmPSJjaHJvbWU6Ly9nbG9iYWwvc2tpbi8iIHR5cGU9InRleHQvY3NzIj8+DQoNCg0KPHdp
bmRvdw0KICAgd2lkdGg9IjgwMCINCiAgIGhlaWdodD0iNDAwIg0KICAgeG1sbnM9Imh0dHA6Ly93
d3cubW96aWxsYS5vcmcva2V5bWFzdGVyL2dhdGVrZWVwZXIvdGhlcmUuaXMub25seS54dWwiPg0K
DQoNCjx2Ym94IGlkPSJoZWFkLWFyZWEiIHN0eWxlPSJoZWlnaHQ6MjAwcHg7YmFja2dyb3VuZC1j
b2xvcjojZjAwIj4NCg0KPC92Ym94Pg0KDQoNCjxoYm94IGlkPSJpZnJhbWUtY29udGFpbmVyIiBm
bGV4PSIxIiBzdHlsZT0iYm9yZGVyOjFweCBzb2xpZCAjODg4O292ZXJmbG93OmF1dG8iPg0KCTx2
Ym94IGZsZXg9IjEiPg0KCQk8bGFiZWwgdmFsdWU9IlR5cGU9Y29udGVudCBpZnJhbWUiIC8+DQoN
CgkJPCEtLSB0aGUgaWZyYW1lIHdpdGggdHlwZT0iY29udGVudCIgd2lsbCBiZSBzaG93biBhYm92
ZSBvdGhlciBlbGVtZW50cy4gVmlzaWJsZQ0KCQkJd2hlbiBzY3JvbGxpbmcgZG93biB0aGUgaGJv
eCNpZnJhbWUtY29udGFpbmVyIC0tPg0KCQk8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiIHR5cGU9
ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6NTAwcHg7Ym9yZGVyOjFweCBzb2xpZCAjODg4IiAvPg0K
CTwvdmJveD4NCgkNCgk8dmJveCBmbGV4PSIxIj4NCgkJPGxhYmVsIHZhbHVlPSJOT04gY29udGVu
dCBpZnJhbWUiIC8+DQoNCgkJPCEtLSBEZWZpbmluZyBhIG5vbiAiY29udGVudCIgdHlwZSBhdHRy
aWJ1dGUgd29ya3MuIFRoZSBJRnJhbWUgd2lsbCBiZSBoaWRkZW4gYmVoaW5kIHRoZSBhYm92ZSAN
CgkJCXZib3gjaGVhZC1hcmVhIHdoZW4gc2Nyb2xsZWQuIC0tPg0KCQk8aWZyYW1lIHNyYz0iYWJv
dXQ6YmxhbmsiIHR5cGU9InNvbWV0aGluZyIgc3R5bGU9ImhlaWdodDo1MDBweDtib3JkZXI6MXB4
IHNvbGlkICM4ODgiIC8+DQoJPC92Ym94Pg0KPC9oYm94Pg0KDQo8L3dpbmRvdz4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>449633</attachid>
            <date>2010-06-07 08:14:59 -0700</date>
            <delta_ts>2010-06-07 08:14:59 -0700</delta_ts>
            <desc>Screenshot of testcase iframe overflowing when scrolled</desc>
            <filename>screenshot_iframe_overflow.png</filename>
            <type>image/png</type>
            <size>30819</size>
            <attacher>daniel</attacher>
            
              <data encoding="base64">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
cTgFaHH6TkEsLauNWDkh6ylY7hI2imDxUirKKSMFS5SLhi5Y+pQq5w0EolRjjmqLIV5PLJ9gqSO8
oQRLhK6G8vy3rpzC1PCHS4kmWERLISkEsfTDrr/pIr5JiAwcSjNhQ2kq4je8qO2Ph0vrMJw2ftmx
gOdathfhoe5cSnSI61iOlvnlyu0+p2qBMiW7wXnH5Jw8xAmcaZtN3DA9uSpOftt2kqVck4q3qYTq
xJ7cEkgFzpl482GeJQnDUS3DcPbX6UFB3RYBqvrOdrcrL2DnRfndGF9PwXLnVXXhkC1GJCFfRUjd
5uS+s6PCb2oWwz/o0QoQ5VjBTfUW1Ds1qmy/SyrtnoaTsJENLN6FH3YsPZeTo2QdI7zvgx6NdZ2+
57S33HLLjh3/Nzd3qVqtlkql7du3G6+88sqXX3752Wefvf/++0NDQ08++eSJEydCjuNfCaV9b5ev
M0PUeL3RlWg9JLpeWP33Z+5zI9Xf8AnWjqu/VeGnzpqVkX0umA40T4+pO0zfXyyv23KS7alWpfDd
bOFsnO9+CrfEHrAdMCvWUKr6Wx1Rx9HX7E+8c62OlHbQtJC214VATu7D8GUy+qy9MSI/+zM6VQcI
n07t3o7IhXsWpg8Mb3TgQEXVKaOavHvPpW2WksgehyJqLbTz7uklyzopezySF+2gfwaKCP6EOHPm
zMsvv/zjjz8+8MADW7duveGGG4zTp09//fXX33zzzaeffvrtt9/W6/W1OEpRhK0o8qLq0s7fufjM
+OqM3JxOmfug6SeVfVuHlWyAc5L2JugNS50ES/UFcu2K/JysfW3w25Ubr1EBSzGNG1EhYRnwleLE
dwbcv1G93L0po1ucArN06ztJIgwrem3+1nK/RQU3M3QncwJB8c0wQBDL92XndEsTV14GxG/HCW5J
Mzp8AKAf7r77buZVmzdvvk7wX/wMQNFUB29UAAAAAElFTkSuQmCC
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453999</attachid>
            <date>2010-06-25 04:18:41 -0700</date>
            <delta_ts>2010-08-10 14:44:48 -0700</delta_ts>
            <desc>Part 1 refreshed</desc>
            <filename>bug130078</filename>
            <type>text/plain</type>
            <size>3041</size>
            <attacher>roc</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2xheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwIGIvbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAKLS0tIGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdl
ci5jcHAKKysrIGIvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKQEAgLTIyOTIsMjcg
KzIyOTIsMjMgQEAgRG9jdW1lbnRWaWV3ZXJJbXBsOjpNYWtlV2luZG93KGNvbnN0IG5zUwogICBy
ZXR1cm4gcnY7CiB9CiAKIG5zSVZpZXcqCiBEb2N1bWVudFZpZXdlckltcGw6OkZpbmRDb250YWlu
ZXJWaWV3KCkKIHsKICAgbnNJVmlldyogY29udGFpbmVyVmlldyA9IG5zbnVsbDsKIAotICBuc0NP
TVB0cjxuc0lDb250ZW50PiBjb250YWluZXJFbGVtZW50OwotICBuc0NPTVB0cjxuc0lEb2NTaGVs
bFRyZWVJdGVtPiBkb2NTaGVsbEl0ZW0gPSBkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIpOwot
ICBuc0NPTVB0cjxuc1BJRE9NV2luZG93PiBwd2luKGRvX0dldEludGVyZmFjZShkb2NTaGVsbEl0
ZW0pKTsKLSAgaWYgKHB3aW4pIHsKLSAgICBjb250YWluZXJFbGVtZW50ID0gZG9fUXVlcnlJbnRl
cmZhY2UocHdpbi0+R2V0RnJhbWVFbGVtZW50SW50ZXJuYWwoKSk7Ci0gIH0KLSAgICAgICAgCiAg
IGlmIChtUGFyZW50V2lkZ2V0KSB7CiAgICAgY29udGFpbmVyVmlldyA9IG5zSVZpZXc6OkdldFZp
ZXdGb3IobVBhcmVudFdpZGdldCk7Ci0gIH0gZWxzZSB7Ci0gICAgaWYgKG1Db250YWluZXIpIHsK
KyAgfSBlbHNlIGlmIChtQ29udGFpbmVyKSB7CisgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVl
SXRlbT4gZG9jU2hlbGxJdGVtID0gZG9fUXVlcnlSZWZlcmVudChtQ29udGFpbmVyKTsKKyAgICBu
c0NPTVB0cjxuc1BJRE9NV2luZG93PiBwd2luKGRvX0dldEludGVyZmFjZShkb2NTaGVsbEl0ZW0p
KTsKKyAgICBpZiAocHdpbikgeworICAgICAgbnNDT01QdHI8bnNJQ29udGVudD4gY29udGFpbmVy
RWxlbWVudCA9IGRvX1F1ZXJ5SW50ZXJmYWNlKHB3aW4tPkdldEZyYW1lRWxlbWVudEludGVybmFs
KCkpOwogICAgICAgbnNDT01QdHI8bnNJUHJlc1NoZWxsPiBwYXJlbnRQcmVzU2hlbGw7CiAgICAg
ICBpZiAoZG9jU2hlbGxJdGVtKSB7CiAgICAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0
ZW0+IHBhcmVudERvY1NoZWxsSXRlbTsKICAgICAgICAgZG9jU2hlbGxJdGVtLT5HZXRQYXJlbnQo
Z2V0dGVyX0FkZFJlZnMocGFyZW50RG9jU2hlbGxJdGVtKSk7CiAgICAgICAgIGlmIChwYXJlbnRE
b2NTaGVsbEl0ZW0pIHsKICAgICAgICAgICBuc0NPTVB0cjxuc0lEb2NTaGVsbD4gcGFyZW50RG9j
U2hlbGwgPSBkb19RdWVyeUludGVyZmFjZShwYXJlbnREb2NTaGVsbEl0ZW0pOwogICAgICAgICAg
IHBhcmVudERvY1NoZWxsLT5HZXRQcmVzU2hlbGwoZ2V0dGVyX0FkZFJlZnMocGFyZW50UHJlc1No
ZWxsKSk7CiAgICAgICAgIH0KQEAgLTIzNDAsNDIgKzIzMzYsMTcgQEAgRG9jdW1lbnRWaWV3ZXJJ
bXBsOjpGaW5kQ29udGFpbmVyVmlldygpCiAgICAgICAgICAgfQogICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgIE5TX1dBUk5JTkcoIlN1YmRvY3VtZW50IGNvbnRhaW5lciBoYXMgbm8gZnJhbWUi
KTsKICAgICAgICAgfQogICAgICAgfQogICAgIH0KICAgfQogCi0gIGlmICghY29udGFpbmVyVmll
dykKLSAgICByZXR1cm4gbnNudWxsOwotCi0gIGlmIChjb250YWluZXJFbGVtZW50ICYmCi0gICAg
ICBjb250YWluZXJFbGVtZW50LT5IYXNBdHRyKGtOYW1lU3BhY2VJRF9Ob25lLCBuc0drQXRvbXM6
OnRyYW5zcGFyZW50KSkKLSAgICByZXR1cm4gY29udGFpbmVyVmlldzsKLQotICBuc0lXaWRnZXQq
IG91dGVyV2lkZ2V0ID0gY29udGFpbmVyVmlldy0+R2V0TmVhcmVzdFdpZGdldChuc251bGwpOwot
ICBpZiAob3V0ZXJXaWRnZXQgJiYKLSAgICAgIG91dGVyV2lkZ2V0LT5HZXRUcmFuc3BhcmVuY3lN
b2RlKCkgPT0gZVRyYW5zcGFyZW5jeVRyYW5zcGFyZW50KQotICAgIHJldHVybiBjb250YWluZXJW
aWV3OwotCi0gIC8vIElmIHRoZSBwYXJlbnQgY29udGFpbmVyIGlzIGEgY2hyb21lIHNoZWxsIGFu
ZCB3ZSBhcmUgYSBjb250ZW50IHNoZWxsCi0gIC8vIHRoZW4gd2Ugd29uJ3QgaG9vayBpbnRvIGl0
cyB2aWV3Ci0gIC8vIHRyZWUuIFRoaXMgd2lsbCBpbXByb3ZlIHBlcmZvcm1hbmNlIGEgbGl0dGxl
IGJpdCAoZXNwZWNpYWxseSBnaXZlbiBzY3JvbGxpbmcvcGFpbnRpbmcgcGVyZiBidWdzKQotICAv
LyBidXQgaXMgcmVhbGx5IGp1c3QgZm9yIHBlYWNlIG9mIG1pbmQuIFRoaXMgY2hlY2sgY2FuIGJl
IHJlbW92ZWQgaWYgd2Ugd2FudCB0byBzdXBwb3J0IGZhbmN5Ci0gIC8vIGNocm9tZSBlZmZlY3Rz
IGxpa2UgdHJhbnNwYXJlbnQgY29udHJvbHMgZmxvYXRpbmcgb3ZlciBjb250ZW50LCB0cmFuc3Bh
cmVudCBXZWIgYnJvd3NlcnMsIGFuZAotICAvLyB0aGluZ3MgbGlrZSB0aGF0LCBhbmQgdGhlIHBl
cmYgYnVncyBhcmUgZml4ZWQuCi0gIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGNvbnRh
aW5lcihkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIpKTsKLSAgaWYgKGNvbnRhaW5lcikgewot
ICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IHNhbWVUeXBlUGFyZW50OwotICAgIGNv
bnRhaW5lci0+R2V0U2FtZVR5cGVQYXJlbnQoZ2V0dGVyX0FkZFJlZnMoc2FtZVR5cGVQYXJlbnQp
KTsKLSAgICBpZiAoc2FtZVR5cGVQYXJlbnQpCi0gICAgICByZXR1cm4gY29udGFpbmVyVmlldzsK
LSAgfQotICByZXR1cm4gbnNudWxsOworICByZXR1cm4gY29udGFpbmVyVmlldzsKIH0KIAogbnNy
ZXN1bHQKIERvY3VtZW50Vmlld2VySW1wbDo6Q3JlYXRlRGV2aWNlQ29udGV4dChuc0lWaWV3KiBh
Q29udGFpbmVyVmlldykKIHsKICAgTlNfUFJFQ09ORElUSU9OKCFtUHJlc1NoZWxsICYmICFtV2lu
ZG93LAogICAgICAgICAgICAgICAgICAgIlRoaXMgd2lsbCBzY3JldyB1cCBvdXIgZXhpc3Rpbmcg
cHJlc2VudGF0aW9uIik7CiAgIE5TX1BSRUNPTkRJVElPTihtRG9jdW1lbnQsICJHb3R0YSBoYXZl
IGEgZG9jdW1lbnQgaGVyZSIpOwo=
</data>
<flag name="review"
          id="387196"
          type_id="937"
          status="+"
          setter="dbaron"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>454424</attachid>
            <date>2010-06-27 20:29:04 -0700</date>
            <delta_ts>2010-06-27 20:29:04 -0700</delta_ts>
            <desc>Backtrace with accertion log</desc>
            <filename>backtrace.txt</filename>
            <type>text/plain</type>
            <size>6863</size>
            <attacher>romaxa</attacher>
            
              <data encoding="base64">IzAgIE5TX0RlYnVnQnJlYWtfUCAoYVNldmVyaXR5PTEsIGFTdHI9MHhiNzBhOWExMCAiUm9vdCB2
aWV3IGhhZCBhIHBhcmVudCwgYnV0IGl0IGhhcyB0aGUgc2FtZSB2aWV3IG1hbmFnZXIiLCAKICAg
IGFFeHByPTB4YjcwYTk5ZjYgIm1Sb290Vmlld01hbmFnZXIgIT0gdGhpcyIsIAogICAgYUZpbGU9
MHhiNzBhOTEyOCAidmlldy9zcmMvbnNWaWV3TWFuYWdlci5jcHAiLCBhTGluZT0xODI4KQogICAg
YXQgeHBjb20vYmFzZS9uc0RlYnVnSW1wbC5jcHA6MjY2CiMxICAweGI2MGY2YWMzIGluIG5zVmll
d01hbmFnZXI6OkludmFsaWRhdGVIaWVyYXJjaHkgKHRoaXM9MHhhZThjMjUxMCkKICAgIGF0IHZp
ZXcvc3JjL25zVmlld01hbmFnZXIuY3BwOjE4MjcKIzIgIDB4YjYwZWZlMWMgaW4gbnNWaWV3OjpJ
bnZhbGlkYXRlSGllcmFyY2h5ICh0aGlzPTB4YWU4NWZjYTAsIGFWaWV3TWFuYWdlclBhcmVudD0w
eDApCiAgICBhdCB2aWV3L3NyYy9uc1ZpZXcuY3BwOjU1NAojMyAgMHhiNjBlZmY4OSBpbiBuc1Zp
ZXc6Okluc2VydENoaWxkICh0aGlzPTB4YWU4NWZjYTAsIGFDaGlsZD0weGFlODVmY2EwLCBhU2li
bGluZz0weDApCiAgICBhdCB2aWV3L3NyYy9uc1ZpZXcuY3BwOjU4OAojNCAgMHhiNjBmMjlkNyBp
biBuc1ZpZXdNYW5hZ2VyOjpTZXRSb290VmlldyAodGhpcz0weGFlOGMyNTEwLCBhVmlldz0weGFl
ODVmY2EwKQogICAgYXQgdmlldy9zcmMvbnNWaWV3TWFuYWdlci5jcHA6Mjc0CiM1ICAweGI1YjMz
MWU1IGluIERvY3VtZW50Vmlld2VySW1wbDo6TWFrZVdpbmRvdyAodGhpcz0weGFlYTJjZWEwLCBh
U2l6ZT1AMHhiZmMxOGE5MCwgYUNvbnRhaW5lclZpZXc9MHhhZTg1ZmNhMCkKICAgIGF0IGxheW91
dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwOjIzMjUKIzYgIDB4YjViMzEyZTYgaW4gRG9jdW1l
bnRWaWV3ZXJJbXBsOjpTZXRET01Eb2N1bWVudCAodGhpcz0weGFlYTJjZWEwLCBhRG9jdW1lbnQ9
MHhhZWFjMzBjOCkKLS0tVHlwZSA8cmV0dXJuPiB0byBjb250aW51ZSwgb3IgcSA8cmV0dXJuPiB0
byBxdWl0LS0tCiAgICBhdCBsYXlvdXQvYmFzZS9uc0RvY3VtZW50Vmlld2VyLmNwcDoxNzUyCiM3
ICAweGI2NmRiMmUwIGluIG5zRG9jU2hlbGw6OkNyZWF0ZUFib3V0QmxhbmtDb250ZW50Vmlld2Vy
ICh0aGlzPTB4YWVjMTE4ZDAsIGFQcmluY2lwYWw9MHhiMGQ0YmRmMCwgYUJhc2VVUkk9MHgwKQog
ICAgYXQgZG9jc2hlbGwvYmFzZS9uc0RvY1NoZWxsLmNwcDo2MjE2CiM4ICAweGI2NmRhZDcwIGlu
IG5zRG9jU2hlbGw6OkVuc3VyZUNvbnRlbnRWaWV3ZXIgKHRoaXM9MHhhZWMxMThkMCkKICAgIGF0
IGRvY3NoZWxsL2Jhc2UvbnNEb2NTaGVsbC5jcHA6NjEyMAojOSAgMHhiNjZjODc2MSBpbiBuc0Rv
Y1NoZWxsOjpHZXRJbnRlcmZhY2UgKHRoaXM9MHhhZWMxMThkMCwgYUlJRD1AMHhiNmZjMDUzNCwg
YVNpbms9MHhiZmMxOGQ0YykKICAgIGF0IGRvY3NoZWxsL2Jhc2UvbnNEb2NTaGVsbC5jcHA6ODcw
CiMxMCAweGI2YjdjZjI3IGluIG5zR2V0SW50ZXJmYWNlOjpvcGVyYXRvcigpICh0aGlzPTB4YmZj
MThkYTAsIGFJSUQ9QDB4YjZmYzA1MzQsIGFJbnN0YW5jZVB0cj0weGJmYzE4ZDRjKQogICAgYXQg
bnNJSW50ZXJmYWNlUmVxdWVzdG9yVXRpbHMuY3BwOjUyCiMxMSAweGI1ZTU5ZTg1IGluIG5zQ09N
UHRyPG5zSURPTURvY3VtZW50Pjo6YXNzaWduX2Zyb21faGVscGVyICh0aGlzPTB4YmZjMThkOWMs
IGhlbHBlcj1AMHhiZmMxOGRhMCwgYUlJRD1AMHhiNmZjMDUzNCkKICAgIGF0IC4uLy4uLy4uL2Rp
c3QvaW5jbHVkZS9uc0NPTVB0ci5oOjEyNzIKIzEyIDB4YjVlNTkzNjUgaW4gbnNDT01QdHIgKHRo
aXM9MHhiZmMxOGQ5YywgaGVscGVyPUAweGJmYzE4ZGEwKSBhdCAuLi8uLi8uLi9kaXN0L2luY2x1
ZGUvbnNDT01QdHIuaDo2NDQKIzEzIDB4YjYxMjkxZGIgaW4gbnNHbG9iYWxXaW5kb3c6OkdldERv
Y3VtZW50ICh0aGlzPTB4YWVjMTFhYzAsIGFEb2N1bWVudD0weGJmYzE4ZGQwKQogICAgYXQgZG9t
L2Jhc2UvbnNHbG9iYWxXaW5kb3cuY3BwOjI2NjYKIzE0IDB4YjVlMDg3MDggaW4gbnNEYXRhRG9j
dW1lbnRDb250ZW50UG9saWN5OjpTaG91bGRMb2FkICh0aGlzPTB4YWU4MmQ0YTAsIGFDb250ZW50
VHlwZT02LCBhQ29udGVudExvY2F0aW9uPTB4YWVhNzhjYzAsIAotLS1UeXBlIDxyZXR1cm4+IHRv
IGNvbnRpbnVlLCBvciBxIDxyZXR1cm4+IHRvIHF1aXQtLS0KICAgIGFSZXF1ZXN0aW5nTG9jYXRp
b249MHgwLCBhUmVxdWVzdGluZ0NvbnRleHQ9MHhhZWMxMWFmOCwgYU1pbWVHdWVzcz1AMHhiNzNk
Yjk2MCwgYUV4dHJhPTB4MCwgYURlY2lzaW9uPTB4YmZjMTkxZjYpCiAgICBhdCBjb250ZW50L2Jh
c2Uvc3JjL25zRGF0YURvY3VtZW50Q29udGVudFBvbGljeS5jcHA6NzEKIzE1IDB4YjVkZGRmMjMg
aW4gbnNDb250ZW50UG9saWN5OjpDaGVja1BvbGljeSAodGhpcz0weGFlODBjZjQwLCAKICAgIHBv
bGljeU1ldGhvZD0mdmlydHVhbCBuc0lDb250ZW50UG9saWN5OjpTaG91bGRMb2FkKHVuc2lnbmVk
IGludCwgbnNJVVJJKiwgbnNJVVJJKiwgbnNJU3VwcG9ydHMqLCBuc0FDU3RyaW5nX2ludGVybmFs
IGNvbnN0JiwgbnNJU3VwcG9ydHMqLCBzaG9ydCopLCBjb250ZW50VHlwZT02LCBjb250ZW50TG9j
YXRpb249MHhhZWE3OGNjMCwgcmVxdWVzdGluZ0xvY2F0aW9uPTB4MCwgcmVxdWVzdGluZ0NvbnRl
eHQ9MHhhZWMxMWFmOCwgCiAgICBtaW1lVHlwZT1AMHhiNzNkYjk2MCwgZXh0cmE9MHgwLCBkZWNp
c2lvbj0weGJmYzE5MWY2KQogICAgYXQgY29udGVudC9iYXNlL3NyYy9uc0NvbnRlbnRQb2xpY3ku
Y3BwOjE1NwojMTYgMHhiNWRkZDg3MSBpbiBuc0NvbnRlbnRQb2xpY3k6OlNob3VsZExvYWQgKHRo
aXM9MHhhZTgwY2Y0MCwgY29udGVudFR5cGU9NiwgY29udGVudExvY2F0aW9uPTB4YWVhNzhjYzAs
IAogICAgcmVxdWVzdGluZ0xvY2F0aW9uPTB4MCwgcmVxdWVzdGluZ0NvbnRleHQ9MHhhZWMxMWFm
OCwgbWltZVR5cGU9QDB4YjczZGI5NjAsIGV4dHJhPTB4MCwgZGVjaXNpb249MHhiZmMxOTFmNikK
ICAgIGF0IGNvbnRlbnQvYmFzZS9zcmMvbnNDb250ZW50UG9saWN5LmNwcDoyMTgKIzE3IDB4YjVh
NTBjYmEgaW4gTlNfQ2hlY2tDb250ZW50TG9hZFBvbGljeSAoY29udGVudFR5cGU9NiwgY29udGVu
dExvY2F0aW9uPTB4YWVhNzhjYzAsIG9yaWdpblByaW5jaXBhbD0weDAsIAogICAgY29udGV4dD0w
eGFlYzExYWY4LCBtaW1lVHlwZT1AMHhiNzNkYjk2MCwgZXh0cmE9MHgwLCBkZWNpc2lvbj0weGJm
YzE5MWY2LCBwb2xpY3lTZXJ2aWNlPTB4MCwgYVNlY01hbj0weDApCiAgICBhdCAuLi8uLi8uLi8u
Li9kaXN0L2luY2x1ZGUvbnNDb250ZW50UG9saWN5VXRpbHMuaDoyMjMKIzE4IDB4YjY2ZTEwNTEg
aW4gbnNEb2NTaGVsbDo6SW50ZXJuYWxMb2FkICh0aGlzPTB4YWVjMTE4ZDAsIGFVUkk9MHhhZWE3
OGNjMCwgYVJlZmVycmVyPTB4MCwgYU93bmVyPTB4YjBkNGJkZjAsIGFGbGFncz04LCAKICAgIGFX
aW5kb3dUYXJnZXQ9MHhiMjM1ODE1OCwgYVR5cGVIaW50PTB4MCwgYVBvc3REYXRhPTB4MCwgYUhl
YWRlcnNEYXRhPTB4MCwgYUxvYWRUeXBlPTEsIGFTSEVudHJ5PTB4MCwgYUZpcnN0UGFydHk9MSwg
CiAgICBhRG9jU2hlbGw9MHgwLCBhUmVxdWVzdD0weDApCiAgICBhdCBkb2NzaGVsbC9iYXNlL25z
RG9jU2hlbGwuY3BwOi0tLVR5cGUgPHJldHVybj4gdG8gY29udGludWUsIG9yIHEgPHJldHVybj4g
dG8gcXVpdC0tLQo3NjM0CiMxOSAweGI2NmNhMjBiIGluIG5zRG9jU2hlbGw6OkxvYWRVUkkgKHRo
aXM9MHhhZWMxMThkMCwgYVVSST0weGFlYTc4Y2MwLCBhTG9hZEluZm89MHhhZWE2ODU4MCwgYUxv
YWRGbGFncz0xNjM4NCwgCiAgICBhRmlyc3RQYXJ0eT0xKQogICAgYXQgZG9jc2hlbGwvYmFzZS9u
c0RvY1NoZWxsLmNwcDoxMzgxCiMyMCAweGI2NzNlMDUxIGluIG5zV2luZG93V2F0Y2hlcjo6T3Bl
bldpbmRvd0pTSW50ZXJuYWwgKHRoaXM9MHhhZWE2Njc2MCwgYVBhcmVudD0weDAsIAogICAgYVVy
bD0weGFlYjM2ZTUwICJjaHJvbWU6Ly9teWJyb3dzZXIvY29udGVudC9teWJyb3dzZXIueHVsIiwg
YU5hbWU9MHhhZTg2MDI4MCAiX2JsYW5rIiwgCiAgICBhRmVhdHVyZXM9MHhhZWEyNzBhMCAiY2hy
b21lLGRpYWxvZz1ubyxhbGwiLCBhRGlhbG9nPTEsIGFyZ3Y9MHhhZWEyNzBjMCwgYUNhbGxlZEZy
b21KUz0wLCBfcmV0dmFsPTB4YmZjMTliMDgpCiAgICBhdCBlbWJlZGRpbmcvY29tcG9uZW50cy93
aW5kb3d3YXRjaGVyL3NyYy9uc1dpbmRvd1dhdGNoZXIuY3BwOjk0NQojMjEgMHhiNjczYmU3MyBp
biBuc1dpbmRvd1dhdGNoZXI6Ok9wZW5XaW5kb3cgKHRoaXM9MHhhZWE2Njc2MCwgYVBhcmVudD0w
eDAsIAogICAgYVVybD0weGFlYjM2ZTUwICJjaHJvbWU6Ly9teWJyb3dzZXIvY29udGVudC9teWJy
b3dzZXIueHVsIiwgYU5hbWU9MHhhZTg2MDI4MCAiX2JsYW5rIiwgCiAgICBhRmVhdHVyZXM9MHhh
ZWEyNzBhMCAiY2hyb21lLGRpYWxvZz1ubyxhbGwiLCBhQXJndW1lbnRzPTB4YWVhZDI5YTAsIF9y
ZXR2YWw9MHhiZmMxOWIwOCkKICAgIGF0IGVtYmVkZGluZy9jb21wb25lbnRzL3dpbmRvd3dhdGNo
ZXIvc3JjL25zV2luZG93V2F0Y2hlci5jcHA6NDIyCiMyMiAweGI2YzBhNGQxIGluIE5TX0ludm9r
ZUJ5SW5kZXhfUCAoKQogICAgYXQgeHBjb20vcmVmbGVjdC94cHRjYWxsL3NyYy9tZC91bml4L3hw
dGNpbnZva2VfZ2NjX3g4Nl91bml4LmNwcDo2OQojMjMgMHhiNjYxYzBiNSBpbiBDYWxsTWV0aG9k
SGVscGVyOjpJbnZva2UgKHRoaXM9MHhiZmMxOWE5NCkKICAgIGF0IGpzL3NyYy94cGNvbm5lY3Qv
c3JjL3hwY3dyYXBwLS0tVHlwZSA8cmV0dXJuPiB0byBjb250aW51ZSwgb3IgcSA8cmV0dXJuPiB0
byBxdWl0LS0tCmVkbmF0aXZlLmNwcDozMDAyCiMyNCAweGI2NjFhNGE2IGluIENhbGxNZXRob2RI
ZWxwZXI6OkNhbGwgKHRoaXM9MHhiZmMxOWE5NCkKICAgIGF0IGpzL3NyYy94cGNvbm5lY3Qvc3Jj
L3hwY3dyYXBwZWRuYXRpdmUuY3BwOjIzMDgKIzI1IDB4YjY2MTY0Y2YgaW4gWFBDV3JhcHBlZE5h
dGl2ZTo6Q2FsbE1ldGhvZCAoY2N4PUAweGJmYzE5YzQwLCBtb2RlPVhQQ1dyYXBwZWROYXRpdmU6
OkNBTExfTUVUSE9EKQogICAgYXQganMvc3JjL3hwY29ubmVjdC9zcmMveHBjd3JhcHBlZG5hdGl2
ZS5jcHA6MjI3MgojMjYgMHhiNjYyNWJlYyBpbiBYUENfV05fQ2FsbE1ldGhvZCAoY3g9MHhiMGQw
NmMwMCwgb2JqPTB4YWU5MTZmZTAsIGFyZ2M9NSwgYXJndj0weGFmMmZkMGFjLCB2cD0weGFmMmZk
MTA0KQogICAgYXQganMvc3JjL3hwY29ubmVjdC9zcmMveHBjd3JhcHBlZG5hdGl2ZWpzb3BzLmNw
cDoxNzg5CiMyNyAweGI3NjNmNmZhIGluIGpzX0ludm9rZSAoY3g9MHhiMGQwNmMwMCwgYXJncz1A
MHhiZmMxOWZiYywgZmxhZ3M9MikKICAgIGF0IGpzL3NyYy9qc2ludGVycC5jcHA6NjU0CiMyOCAw
eGI3NjJkY2VlIGluIGpzX0ludGVycHJldCAoY3g9MHhiMGQwNmMwMCkKICAgIGF0IGpzL3NyYy9q
c29wcy5jcHA6MjE1OAojMjkgMHhiNzYzZjc4NiBpbiBqc19JbnZva2UgKGN4PTB4YjBkMDZjMDAs
IGFyZ3M9QDB4YmZjMWE1Y2MsIGZsYWdzPTApCiAgICBhdCBqcy9zcmMvanNpbnRlcnAuY3BwOjY2
NAojMzAgMHhiNjYwZTRiOSBpbiBuc1hQQ1dyYXBwZWRKU0NsYXNzOjpDYWxsTWV0aG9kICh0aGlz
PTB4YWViMWZjNDAsIHdyYXBwZXI9MHhhZWExZTc4MCwgbWV0aG9kSW5kZXg9MywgaW5mbz0weGIx
NzUxNmQ4LCAKICAgIG5hdGl2ZVBhcmFtcz0weGJmYzFhN2JjKQogICAgYXQganMvc3JjL3hwY29u
bmVjdC9zcmMveHBjd3JhcHBlZGpzY2xhc3MuY3BwOjE2ODkKLS0tVHlwZSA8cmV0dXJuPiB0byBj
b250aW51ZSwgb3IgcSA8cmV0dXJuPiB0byBxdWl0LS0tCiMzMSAweGI2NjA1ODJiIGluIG5zWFBD
V3JhcHBlZEpTOjpDYWxsTWV0aG9kICh0aGlzPTB4YWVhMWU3ODAsIG1ldGhvZEluZGV4PTMsIGlu
Zm89MHhiMTc1MTZkOCwgcGFyYW1zPTB4YmZjMWE3YmMpCiAgICBhdCBqcy9zcmMveHBjb25uZWN0
L3NyYy94cGN3cmFwcGVkanMuY3BwOjU3MAojMzIgMHhiNmMwYTc0ZiBpbiBQcmVwYXJlQW5kRGlz
cGF0Y2ggKG1ldGhvZEluZGV4PTMsIHNlbGY9MHhhZTgyZGIxMCwgYXJncz0weGJmYzFhODk0KQog
ICAgYXQgeHBjb20vcmVmbGVjdC94cHRjYWxsL3NyYy9tZC91bml4L3hwdGNzdHVic19nY2NfeDg2
X3VuaXguY3BwOjk1CiMzMyAweGI2N2FlNjAwIGluIEVudW1SdW4gKGFIYW5kbGVyPTB4YWU4MmRi
MTAsIGFUaGlzPTB4YWVhZDI5YTApCiAgICBhdCB0b29sa2l0L2NvbXBvbmVudHMvY29tbWFuZGxp
bmVzL3NyYy9uc0NvbW1hbmRMaW5lLmNwcDo2NjUKIzM0IDB4YjY3YWUwZDUgaW4gbnNDb21tYW5k
TGluZTo6RW51bWVyYXRlSGFuZGxlcnMgKHRoaXM9MHhhZWFkMjlhMCwgYUNhbGxiYWNrPTB4YjY3
YWU1ZTEgPEVudW1SdW4+LCBhQ2xvc3VyZT0weDApCiAgICBhdCB0b29sa2l0L2NvbXBvbmVudHMv
Y29tbWFuZGxpbmVzL3NyYy9uc0NvbW1hbmRMaW5lLmNwcDo2MDMKIzM1IDB4YjY3YWU2NWYgaW4g
bnNDb21tYW5kTGluZTo6UnVuICh0aGlzPTB4YWVhZDI5YTApCiAgICBhdCB0b29sa2l0L2NvbXBv
bmVudHMvY29tbWFuZGxpbmVzL3NyYy9uc0NvbW1hbmRMaW5lLmNwcDo2NzcKIzM2IDB4YjU4YWVj
OTMgaW4gWFJFX21haW4gKGFyZ2M9MSwgYXJndj0weGJmYzFiZjQ4LCBhQXBwRGF0YT0weGIyMzIw
M2MwKQogICAgYXQgdG9vbGtpdC94cmUvbnNBcHBSdW5uZXIuY3BwOjM1OTUKIzM3IDB4MDgwNGIz
NTcgaW4gbWFpbiAoYXJnYz0xLCBhcmd2PTB4YmZjMWJmNDgpCiAgICBhdCB4dWxydW5uZXIvYXBw
L25zWFVMUnVubmVyQXBwLi0tLVR5cGUgPHJldHVybj4gdG8gY29udGludWUsIG9yIHEgPHJldHVy
bj4gdG8gcXVpdC0tLQpjcHA6NDYzCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454426</attachid>
            <date>2010-06-27 20:36:23 -0700</date>
            <delta_ts>2010-06-29 23:53:17 -0700</delta_ts>
            <desc>all my changes against 46301:911af4c07fd4 m-c</desc>
            <filename>jimm_130078.diff</filename>
            <type>text/plain</type>
            <size>8911</size>
            <attacher>romaxa</attacher>
            
              <data encoding="base64">ZGlmZiAtciA5MTFhZjRjMDdmZDQgbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKLS0t
IGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKKysrIGIvbGF5b3V0L2Jhc2UvbnNE
b2N1bWVudFZpZXdlci5jcHAKQEAgLTIyNTQsNSArMjI1NCw1IEBAIERvY3VtZW50Vmlld2VySW1w
bDo6TWFrZVdpbmRvdyhjb25zdCBuc1MKICAgLy8gd2lkZ2V0IG9mIGVhY2ggd2luZG93LCB2cy4g
Y3JlYXRpbmcvZGlzY2FyZGluZyBjaGlsZCB3aWRnZXRzIGZvciBlYWNoCiAgIC8vIE1ha2VXaW5k
b3cgY2FsbC4gKEN1cnJlbnRseSBvbmx5IGltcGxlbWVudGVkIGluIHdpbmRvd3Mgd2lkZ2V0cy4p
Ci0jaWZkZWYgWFBfV0lOCisvLyNpZmRlZiBYUF9XSU4KICAgbnNDT01QdHI8bnNJRG9jU2hlbGxU
cmVlSXRlbT4gY29udGFpbmVySXRlbSA9IGRvX1F1ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcik7CiAg
IGlmIChtUGFyZW50V2lkZ2V0ICYmIGNvbnRhaW5lckl0ZW0pIHsKQEAgLTIyNjksNSArMjI2OSw1
IEBAIERvY3VtZW50Vmlld2VySW1wbDo6TWFrZVdpbmRvdyhjb25zdCBuc1MKICAgICB9CiAgIH0K
LSNlbmRpZgorLy8jZW5kaWYKIAogICBuc3Jlc3VsdCBydjsKQEAgLTIzNTMsMTUgKzIzNTMsMTEg
QEAgRG9jdW1lbnRWaWV3ZXJJbXBsOjpGaW5kQ29udGFpbmVyVmlldygpCiAgIG5zSVZpZXcqIGNv
bnRhaW5lclZpZXcgPSBuc251bGw7CiAKLSAgbnNDT01QdHI8bnNJQ29udGVudD4gY29udGFpbmVy
RWxlbWVudDsKLSAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gZG9jU2hlbGxJdGVtID0g
ZG9fUXVlcnlSZWZlcmVudChtQ29udGFpbmVyKTsKLSAgbnNDT01QdHI8bnNQSURPTVdpbmRvdz4g
cHdpbihkb19HZXRJbnRlcmZhY2UoZG9jU2hlbGxJdGVtKSk7Ci0gIGlmIChwd2luKSB7Ci0gICAg
Y29udGFpbmVyRWxlbWVudCA9IGRvX1F1ZXJ5SW50ZXJmYWNlKHB3aW4tPkdldEZyYW1lRWxlbWVu
dEludGVybmFsKCkpOwotICB9Ci0gICAgICAgIAogICBpZiAobVBhcmVudFdpZGdldCkgewogICAg
IGNvbnRhaW5lclZpZXcgPSBuc0lWaWV3OjpHZXRWaWV3Rm9yKG1QYXJlbnRXaWRnZXQpOwotICB9
IGVsc2UgewotICAgIGlmIChtQ29udGFpbmVyKSB7CisgIH0gZWxzZSBpZiAobUNvbnRhaW5lcikg
eworICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IGRvY1NoZWxsSXRlbSA9IGRvX1F1
ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcik7CisgICAgbnNDT01QdHI8bnNQSURPTVdpbmRvdz4gcHdp
bihkb19HZXRJbnRlcmZhY2UoZG9jU2hlbGxJdGVtKSk7CisgICAgaWYgKHB3aW4pIHsKKyAgICAg
IG5zQ09NUHRyPG5zSUNvbnRlbnQ+IGNvbnRhaW5lckVsZW1lbnQgPSBkb19RdWVyeUludGVyZmFj
ZShwd2luLT5HZXRGcmFtZUVsZW1lbnRJbnRlcm5hbCgpKTsKICAgICAgIG5zQ09NUHRyPG5zSVBy
ZXNTaGVsbD4gcGFyZW50UHJlc1NoZWxsOwogICAgICAgaWYgKGRvY1NoZWxsSXRlbSkgewpAQCAt
MjQwMSwzMCArMjM5Nyw1IEBAIERvY3VtZW50Vmlld2VySW1wbDo6RmluZENvbnRhaW5lclZpZXco
KQogICB9CiAKLSAgaWYgKCFjb250YWluZXJWaWV3KQotICAgIHJldHVybiBuc251bGw7Ci0KLSAg
aWYgKGNvbnRhaW5lckVsZW1lbnQgJiYKLSAgICAgIGNvbnRhaW5lckVsZW1lbnQtPkhhc0F0dHIo
a05hbWVTcGFjZUlEX05vbmUsIG5zR2tBdG9tczo6dHJhbnNwYXJlbnQpKQotICAgIHJldHVybiBj
b250YWluZXJWaWV3OwotCi0gIG5zSVdpZGdldCogb3V0ZXJXaWRnZXQgPSBjb250YWluZXJWaWV3
LT5HZXROZWFyZXN0V2lkZ2V0KG5zbnVsbCk7Ci0gIGlmIChvdXRlcldpZGdldCAmJgotICAgICAg
b3V0ZXJXaWRnZXQtPkdldFRyYW5zcGFyZW5jeU1vZGUoKSA9PSBlVHJhbnNwYXJlbmN5VHJhbnNw
YXJlbnQpCi0gICAgcmV0dXJuIGNvbnRhaW5lclZpZXc7Ci0KLSAgLy8gSWYgdGhlIHBhcmVudCBj
b250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgYW5kIHdlIGFyZSBhIGNvbnRlbnQgc2hlbGwKLSAg
Ly8gdGhlbiB3ZSB3b24ndCBob29rIGludG8gaXRzIHZpZXcKLSAgLy8gdHJlZS4gVGhpcyB3aWxs
IGltcHJvdmUgcGVyZm9ybWFuY2UgYSBsaXR0bGUgYml0IChlc3BlY2lhbGx5IGdpdmVuIHNjcm9s
bGluZy9wYWludGluZyBwZXJmIGJ1Z3MpCi0gIC8vIGJ1dCBpcyByZWFsbHkganVzdCBmb3IgcGVh
Y2Ugb2YgbWluZC4gVGhpcyBjaGVjayBjYW4gYmUgcmVtb3ZlZCBpZiB3ZSB3YW50IHRvIHN1cHBv
cnQgZmFuY3kKLSAgLy8gY2hyb21lIGVmZmVjdHMgbGlrZSB0cmFuc3BhcmVudCBjb250cm9scyBm
bG9hdGluZyBvdmVyIGNvbnRlbnQsIHRyYW5zcGFyZW50IFdlYiBicm93c2VycywgYW5kCi0gIC8v
IHRoaW5ncyBsaWtlIHRoYXQsIGFuZCB0aGUgcGVyZiBidWdzIGFyZSBmaXhlZC4KLSAgbnNDT01Q
dHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gY29udGFpbmVyKGRvX1F1ZXJ5UmVmZXJlbnQobUNvbnRh
aW5lcikpOwotICBpZiAoY29udGFpbmVyKSB7Ci0gICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVl
SXRlbT4gc2FtZVR5cGVQYXJlbnQ7Ci0gICAgY29udGFpbmVyLT5HZXRTYW1lVHlwZVBhcmVudChn
ZXR0ZXJfQWRkUmVmcyhzYW1lVHlwZVBhcmVudCkpOwotICAgIGlmIChzYW1lVHlwZVBhcmVudCkK
LSAgICAgIHJldHVybiBjb250YWluZXJWaWV3OwotICB9Ci0gIHJldHVybiBuc251bGw7CisgIHJl
dHVybiBjb250YWluZXJWaWV3OwogfQogCmRpZmYgLXIgOTExYWY0YzA3ZmQ0IGxheW91dC9nZW5l
cmljL25zRnJhbWVGcmFtZS5jcHAKLS0tIGEvbGF5b3V0L2dlbmVyaWMvbnNGcmFtZUZyYW1lLmNw
cAorKysgYi9sYXlvdXQvZ2VuZXJpYy9uc0ZyYW1lRnJhbWUuY3BwCkBAIC05NTYsMTMgKzk1Niw0
IEBAIG5zU3ViRG9jdW1lbnRGcmFtZTo6Q3JlYXRlVmlld0FuZFdpZGdldCgKICAgdmlld01hbi0+
SW5zZXJ0Q2hpbGQob3V0ZXJWaWV3LCBpbm5lclZpZXcsIG5zbnVsbCwgUFJfVFJVRSk7CiAKLSAg
aWYgKGFDb250ZW50VHlwZSAhPSBlQ29udGVudFR5cGVDb250ZW50RnJhbWUpIHsKLSAgICAvLyB3
aWRnZXQgbmVlZGVkLgotICAgIG5zcmVzdWx0IHJ2ID0gaW5uZXJWaWV3LT5DcmVhdGVXaWRnZXQo
a0NDaGlsZENJRCwgbnNudWxsLCBuc251bGwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBQUl9UUlVFLCBQUl9UUlVFLCBhQ29udGVudFR5cGUpOwotICAgIGlmIChO
U19GQUlMRUQocnYpKSB7Ci0gICAgICBOU19XQVJOSU5HKCJDb3VsZG4ndCBjcmVhdGUgd2lkZ2V0
IGZvciBmcmFtZS4iKTsKLSAgICAgIG1Jbm5lclZpZXcgPSBuc251bGw7Ci0gICAgfQotICB9CiAg
IHJldHVybiBtSW5uZXJWaWV3OwogfQpkaWZmIC1yIDkxMWFmNGMwN2ZkNCB3aWRnZXQvc3JjL2d0
azIvbnNXaW5kb3cuY3BwCi0tLSBhL3dpZGdldC9zcmMvZ3RrMi9uc1dpbmRvdy5jcHAKKysrIGIv
d2lkZ2V0L3NyYy9ndGsyL25zV2luZG93LmNwcApAQCAtNTg4LDcgKzU4OCwzNCBAQCBuc1dpbmRv
dzo6RGlzcGF0Y2hFdmVudChuc0dVSUV2ZW50ICphRXZlCiAgICAgYVN0YXR1cyA9IG5zRXZlbnRT
dGF0dXNfZUlnbm9yZTsKIAotICAgIC8vIHNlbmQgaXQgdG8gdGhlIHN0YW5kYXJkIGNhbGxiYWNr
Ci0gICAgaWYgKG1FdmVudENhbGxiYWNrKQotICAgICAgICBhU3RhdHVzID0gKCogbUV2ZW50Q2Fs
bGJhY2spKGFFdmVudCk7CisgICAgLy8gVG9wIGxldmVsIHdpbmRvd3MgY2FuIGhhdmUgYSB2aWV3
IGF0dGFjaGVkIHdoaWNoIHJlcXVpcmVzIGV2ZW50cyBiZSBzZW50CisgICAgLy8gdG8gdGhlIHVu
ZGVybHlpbmcgYmFzZSB3aW5kb3cgYW5kIHRoZSB2aWV3LiBBZGRlZCB3aGVuIHdlIGNvbWJpbmVk
IHRoZQorICAgIC8vIGJhc2UgY2hyb21lIHdpbmRvdyB3aXRoIHRoZSBtYWluIGNvbnRlbnQgY2hp
bGQgZm9yIG5jIGNsaWVudCBhcmVhICh0aXRsZQorICAgIC8vIGJhcikgcmVuZGVyaW5nLgorICAg
IGlmIChtVmlld0NhbGxiYWNrKSB7CisgICAgICAgIC8vIEEgc3Vic2V0IG9mIGV2ZW50cyBhcmUg
c2VudCB0byB0aGUgYmFzZSB4dWwgd2luZG93IGZpcnN0CisgICAgICAgIHN3aXRjaChhRXZlbnQt
Pm1lc3NhZ2UpIHsKKyAgICAgICAgICAgIC8vIHNlbmQgdG8gdGhlIGJhc2Ugd2luZG93ICh2aWV3
IG1nciBpZ25vcmVzIHRoZXNlIGZvciB0aGUgdmlldykKKyAgICAgICAgICAgIGNhc2UgTlNfVUlT
VEFURUNIQU5HRUQ6CisgICAgICAgICAgICBjYXNlIE5TX0RFU1RST1k6CisgICAgICAgICAgICBj
YXNlIE5TX1NFVFpMRVZFTDoKKyAgICAgICAgICAgIGNhc2UgTlNfWFVMX0NMT1NFOgorICAgICAg
ICAgICAgY2FzZSBOU19NT1ZFOgorICAgICAgICAgICAgICAgICgqbUV2ZW50Q2FsbGJhY2spKGFF
dmVudCk7IC8vIHdlYiBzaGVsbCAvIHh1bCB3aW5kb3cKKyAgICAgICAgICAgIHJldHVybiBOU19P
SzsKKworICAgICAgICAgICAgLy8gc2VudCB0byB0aGUgYmFzZSB3aW5kb3csIHRoZW4gdG8gdGhl
IHZpZXcKKyAgICAgICAgICAgIGNhc2UgTlNfU0laRToKKyAgICAgICAgICAgIGNhc2UgTlNfREVB
Q1RJVkFURToKKyAgICAgICAgICAgIGNhc2UgTlNfQUNUSVZBVEU6CisgICAgICAgICAgICBjYXNl
IE5TX1NJWkVNT0RFOgorICAgICAgICAgICAgICAgICgqbUV2ZW50Q2FsbGJhY2spKGFFdmVudCk7
IC8vIHdlYiBzaGVsbCAvIHh1bCB3aW5kb3cKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9
OworICAgICAgICAvLyBhdHRhY2hlZCB2aWV3IGV2ZW50cworICAgICAgICBhU3RhdHVzID0gKCpt
Vmlld0NhbGxiYWNrKShhRXZlbnQpOworICAgIH0KKyAgICBlbHNlIGlmIChtRXZlbnRDYWxsYmFj
aykgeworICAgICAgICBhU3RhdHVzID0gKCptRXZlbnRDYWxsYmFjaykoYUV2ZW50KTsKKyAgICB9
CiAKICAgICByZXR1cm4gTlNfT0s7CkBAIC0xMDE3LDQgKzEwNDQsOCBAQCBOU19JTUVUSE9ESU1Q
CiBuc1dpbmRvdzo6UmVzaXplKFBSSW50MzIgYVdpZHRoLCBQUkludDMyIGFIZWlnaHQsIFBSQm9v
bCBhUmVwYWludCkKIHsKKyAgICAvLyBBdm9pZCB1bm5lY2Vzc2FyeSByZXNpemluZyBjYWxscwor
ICAgIGlmIChtQm91bmRzLndpZHRoID09IGFXaWR0aCAmJiBtQm91bmRzLmhlaWdodCA9PSBhSGVp
Z2h0KQorICAgICAgICByZXR1cm4gTlNfT0s7CisKICAgICBtQm91bmRzLlNpemVUbyhHZXRTYWZl
V2luZG93U2l6ZShuc0ludFNpemUoYVdpZHRoLCBhSGVpZ2h0KSkpOwogCkBAIC0xMDg4LDQgKzEx
MTksOSBAQCBuc1dpbmRvdzo6UmVzaXplKFBSSW50MzIgYVgsIFBSSW50MzIgYVksCiAgICAgICAg
ICAgICAgICAgICAgICAgIFBSQm9vbCBhUmVwYWludCkKIHsKKyAgICAvLyBBdm9pZCB1bm5lY2Vz
c2FyeSByZXNpemluZyBjYWxscworICAgIGlmIChtQm91bmRzLnggPT0gYVggJiYgbUJvdW5kcy55
ID09IGFZICYmCisgICAgICAgIG1Cb3VuZHMud2lkdGggPT0gYVdpZHRoICYmIG1Cb3VuZHMuaGVp
Z2h0ID09IGFIZWlnaHQpCisgICAgICAgIHJldHVybiBOU19PSzsKKwogICAgIG1Cb3VuZHMueCA9
IGFYOwogICAgIG1Cb3VuZHMueSA9IGFZOwpAQCAtMTE0OSw0ICsxMTg1LDIxIEBAIG5zV2luZG93
OjpSZXNpemUoUFJJbnQzMiBhWCwgUFJJbnQzMiBhWSwKIH0KIAorLy8gUmVzaXplIHRoZSBjbGll
bnQgYXJlYSBhbmQgcG9zaXRpb24gdGhlIHdpZGdldCB3aXRoaW4gaXQncyBwYXJlbnQKK05TX01F
VEhPRCBuc1dpbmRvdzo6UmVzaXplQ2xpZW50KFBSSW50MzIgYVgsIFBSSW50MzIgYVksIFBSSW50
MzIgYVdpZHRoLCBQUkludDMyIGFIZWlnaHQsIFBSQm9vbCBhUmVwYWludCkKK3sKKyAgTlNfQVNT
RVJUSU9OKChhV2lkdGggPj0wKSAsICJOZWdhdGl2ZSB3aWR0aCBwYXNzZWQgdG8gUmVzaXplQ2xp
ZW50Iik7CisgIE5TX0FTU0VSVElPTigoYUhlaWdodCA+PTApLCAiTmVnYXRpdmUgaGVpZ2h0IHBh
c3NlZCB0byBSZXNpemVDbGllbnQiKTsKKworICBpZiAoYVggfHwgYVkpIHsKKyAgICAvLyBvZmZz
ZXRzCisgICAgbnNJbnRSZWN0IGJvdW5kczsKKyAgICBHZXRTY3JlZW5Cb3VuZHMoYm91bmRzKTsK
KyAgICBhWCArPSBib3VuZHMueDsKKyAgICBhWSArPSBib3VuZHMueTsKKyAgICByZXR1cm4gUmVz
aXplKGFYLCBhWSwgYVdpZHRoLCBhSGVpZ2h0LCBhUmVwYWludCk7CisgIH0KKyAgcmV0dXJuIFJl
c2l6ZShhV2lkdGgsIGFIZWlnaHQsIGFSZXBhaW50KTsKK30KKwogTlNfSU1FVEhPRElNUAogbnNX
aW5kb3c6OkVuYWJsZShQUkJvb2wgYVN0YXRlKQpkaWZmIC1yIDkxMWFmNGMwN2ZkNCB3aWRnZXQv
c3JjL2d0azIvbnNXaW5kb3cuaAotLS0gYS93aWRnZXQvc3JjL2d0azIvbnNXaW5kb3cuaAorKysg
Yi93aWRnZXQvc3JjL2d0azIvbnNXaW5kb3cuaApAQCAtMTU0LDQgKzE1NCw5IEBAIHB1YmxpYzoK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFJJbnQzMiBhSGVpZ2h0
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUkJvb2wgICBhUmVw
YWludCk7CisgICAgTlNfSU1FVEhPRCAgICAgICAgIFJlc2l6ZUNsaWVudCAgICAgKFBSSW50MzIg
YVgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBSSW50MzIgYVks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBSSW50MzIgYVdpZHRo
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUkludDMyIGFIZWln
aHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBSQm9vbCAgIGFS
ZXBhaW50KTsKICAgICBOU19JTUVUSE9EICAgICAgICAgSXNFbmFibGVkICAgICAgICAoUFJCb29s
ICphU3RhdGUpOwogCmRpZmYgLXIgOTExYWY0YzA3ZmQ0IHdpZGdldC9zcmMvcXQvbnNXaW5kb3cu
Y3BwCi0tLSBhL3dpZGdldC9zcmMvcXQvbnNXaW5kb3cuY3BwCisrKyBiL3dpZGdldC9zcmMvcXQv
bnNXaW5kb3cuY3BwCkBAIC0yMzI4LDQgKzIzMjgsNyBAQCBOU19JTUVUSE9ESU1QCiBuc1dpbmRv
dzo6UmVzaXplKFBSSW50MzIgYVdpZHRoLCBQUkludDMyIGFIZWlnaHQsIFBSQm9vbCBhUmVwYWlu
dCkKIHsKKyAgICAvLyBBdm9pZCB1bm5lY2Vzc2FyeSByZXNpemluZyBjYWxscworICAgIGlmICht
Qm91bmRzLndpZHRoID09IGFXaWR0aCAmJiBtQm91bmRzLmhlaWdodCA9PSBhSGVpZ2h0KQorICAg
ICAgICByZXR1cm4gTlNfT0s7CiAgICAgbUJvdW5kcy53aWR0aCA9IGFXaWR0aDsKICAgICBtQm91
bmRzLmhlaWdodCA9IGFIZWlnaHQ7CkBAIC0yMzgzLDQgKzIzODYsOSBAQCBuc1dpbmRvdzo6UmVz
aXplKFBSSW50MzIgYVgsIFBSSW50MzIgYVksCiAgICAgICAgICAgICAgICAgIFBSQm9vbCBhUmVw
YWludCkKIHsKKyAgICAvLyBBdm9pZCB1bm5lY2Vzc2FyeSByZXNpemluZyBjYWxscworICAgIGlm
IChtQm91bmRzLnggPT0gYVggJiYgbUJvdW5kcy55ID09IGFZICYmCisgICAgICAgIG1Cb3VuZHMu
d2lkdGggPT0gYVdpZHRoICYmIG1Cb3VuZHMuaGVpZ2h0ID09IGFIZWlnaHQpCisgICAgICAgIHJl
dHVybiBOU19PSzsKKwogICAgIG1Cb3VuZHMueCA9IGFYOwogICAgIG1Cb3VuZHMueSA9IGFZOwpA
QCAtMjQ0Miw0ICsyNDUwLDI1IEBAIG5zV2luZG93OjpSZXNpemUoUFJJbnQzMiBhWCwgUFJJbnQz
MiBhWSwKIH0KIAorLy8gUmVzaXplIHRoZSBjbGllbnQgYXJlYSBhbmQgcG9zaXRpb24gdGhlIHdp
ZGdldCB3aXRoaW4gaXQncyBwYXJlbnQKK05TX01FVEhPRCBuc1dpbmRvdzo6UmVzaXplQ2xpZW50
KFBSSW50MzIgYVgsIFBSSW50MzIgYVksIFBSSW50MzIgYVdpZHRoLCBQUkludDMyIGFIZWlnaHQs
IFBSQm9vbCBhUmVwYWludCkKK3sKKyAgTlNfQVNTRVJUSU9OKChhV2lkdGggPj0wKSAsICJOZWdh
dGl2ZSB3aWR0aCBwYXNzZWQgdG8gUmVzaXplQ2xpZW50Iik7CisgIE5TX0FTU0VSVElPTigoYUhl
aWdodCA+PTApLCAiTmVnYXRpdmUgaGVpZ2h0IHBhc3NlZCB0byBSZXNpemVDbGllbnQiKTsKKwor
ICAvLyBBZGp1c3Qgb3VyIGV4aXN0aW5nIHdpbmRvdyBib3VuZHMsIGJhc2VkIG9uIHRoZSBuZXcg
Y2xpZW50IGRpbXMuCisgIGFXaWR0aCA9IG1Cb3VuZHMud2lkdGggKyAoYVdpZHRoIC0gbVdpZGdl
dC0+c2l6ZSgpLndpZHRoKCkpOworICBhSGVpZ2h0ID0gbUJvdW5kcy5oZWlnaHQgKyAoYUhlaWdo
dCAtIG1XaWRnZXQtPnNpemUoKS5oZWlnaHQoKSk7CisKKyAgaWYgKGFYIHx8IGFZKSB7CisgICAg
Ly8gb2Zmc2V0cworICAgIG5zSW50UmVjdCBib3VuZHM7CisgICAgR2V0U2NyZWVuQm91bmRzKGJv
dW5kcyk7CisgICAgYVggKz0gYm91bmRzLng7CisgICAgYVkgKz0gYm91bmRzLnk7CisgICAgcmV0
dXJuIFJlc2l6ZShhWCwgYVksIGFXaWR0aCwgYUhlaWdodCwgYVJlcGFpbnQpOworICB9CisgIHJl
dHVybiBSZXNpemUoYVdpZHRoLCBhSGVpZ2h0LCBhUmVwYWludCk7Cit9CisKIE5TX0lNRVRIT0RJ
TVAKIG5zV2luZG93OjpFbmFibGUoUFJCb29sIGFTdGF0ZSkKZGlmZiAtciA5MTFhZjRjMDdmZDQg
d2lkZ2V0L3NyYy9xdC9uc1dpbmRvdy5oCi0tLSBhL3dpZGdldC9zcmMvcXQvbnNXaW5kb3cuaAor
KysgYi93aWRnZXQvc3JjL3F0L25zV2luZG93LmgKQEAgLTE1MCw0ICsxNTAsNSBAQCBwdWJsaWM6
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUkludDMyIGFIZWlnaHQsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBQUkJvb2wgICBhUmVwYWludCk7CisgICAgTlNfSU1FVEhP
RCAgICAgICAgIFJlc2l6ZUNsaWVudChQUkludDMyIGFYLCBQUkludDMyIGFZLCBQUkludDMyIGFX
aWR0aCwgUFJJbnQzMiBhSGVpZ2h0LCBQUkJvb2wgYVJlcGFpbnQpOwogICAgIE5TX0lNRVRIT0Qg
ICAgICAgICBQbGFjZUJlaGluZChuc1RvcExldmVsV2lkZ2V0WlBsYWNlbWVudCAgYVBsYWNlbWVu
dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnNJV2lkZ2V0ICAgICAgICAg
ICAgICAgICAgKmFXaWRnZXQsCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>455299</attachid>
            <date>2010-06-30 16:05:30 -0700</date>
            <delta_ts>2010-08-03 14:39:52 -0700</delta_ts>
            <desc>patch post 513162</desc>
            <filename>tmp.txt</filename>
            <type>text/plain</type>
            <size>1455</size>
            <attacher>jmathies</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2xheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwIGIvbGF5b3V0L2Jh
c2UvbnNEb2N1bWVudFZpZXdlci5jcHAKLS0tIGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdl
ci5jcHAKKysrIGIvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKQEAgLTIzNjUsMjcg
KzIzNjUsMjEgQEAgRG9jdW1lbnRWaWV3ZXJJbXBsOjpEZXRhY2hGcm9tVG9wTGV2ZWxXaQogICBt
QXR0YWNoZWRUb1BhcmVudCA9IFBSX0ZBTFNFOwogfQogCiBuc0lWaWV3KgogRG9jdW1lbnRWaWV3
ZXJJbXBsOjpGaW5kQ29udGFpbmVyVmlldygpCiB7CiAgIG5zSVZpZXcqIGNvbnRhaW5lclZpZXcg
PSBuc251bGw7CiAKLSAgbnNDT01QdHI8bnNJQ29udGVudD4gY29udGFpbmVyRWxlbWVudDsKLSAg
bnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gZG9jU2hlbGxJdGVtID0gZG9fUXVlcnlSZWZl
cmVudChtQ29udGFpbmVyKTsKLSAgbnNDT01QdHI8bnNQSURPTVdpbmRvdz4gcHdpbihkb19HZXRJ
bnRlcmZhY2UoZG9jU2hlbGxJdGVtKSk7Ci0gIGlmIChwd2luKSB7Ci0gICAgY29udGFpbmVyRWxl
bWVudCA9IGRvX1F1ZXJ5SW50ZXJmYWNlKHB3aW4tPkdldEZyYW1lRWxlbWVudEludGVybmFsKCkp
OwotICB9Ci0gICAgICAgIAotICBpZiAobVBhcmVudFdpZGdldCkgewotICAgIGNvbnRhaW5lclZp
ZXcgPSBuc0lWaWV3OjpHZXRWaWV3Rm9yKG1QYXJlbnRXaWRnZXQpOwotICB9IGVsc2UgewotICAg
IGlmIChtQ29udGFpbmVyKSB7CisgIGlmIChtQ29udGFpbmVyKSB7CisgICAgbnNDT01QdHI8bnNJ
RG9jU2hlbGxUcmVlSXRlbT4gZG9jU2hlbGxJdGVtID0gZG9fUXVlcnlSZWZlcmVudChtQ29udGFp
bmVyKTsKKyAgICBuc0NPTVB0cjxuc1BJRE9NV2luZG93PiBwd2luKGRvX0dldEludGVyZmFjZShk
b2NTaGVsbEl0ZW0pKTsKKyAgICBpZiAocHdpbikgeworICAgICAgbnNDT01QdHI8bnNJQ29udGVu
dD4gY29udGFpbmVyRWxlbWVudCA9IGRvX1F1ZXJ5SW50ZXJmYWNlKHB3aW4tPkdldEZyYW1lRWxl
bWVudEludGVybmFsKCkpOwogICAgICAgbnNDT01QdHI8bnNJUHJlc1NoZWxsPiBwYXJlbnRQcmVz
U2hlbGw7CiAgICAgICBpZiAoZG9jU2hlbGxJdGVtKSB7CiAgICAgICAgIG5zQ09NUHRyPG5zSURv
Y1NoZWxsVHJlZUl0ZW0+IHBhcmVudERvY1NoZWxsSXRlbTsKICAgICAgICAgZG9jU2hlbGxJdGVt
LT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJlZnMocGFyZW50RG9jU2hlbGxJdGVtKSk7CiAgICAgICAg
IGlmIChwYXJlbnREb2NTaGVsbEl0ZW0pIHsKICAgICAgICAgICBuc0NPTVB0cjxuc0lEb2NTaGVs
bD4gcGFyZW50RG9jU2hlbGwgPSBkb19RdWVyeUludGVyZmFjZShwYXJlbnREb2NTaGVsbEl0ZW0p
OwogICAgICAgICAgIHBhcmVudERvY1NoZWxsLT5HZXRQcmVzU2hlbGwoZ2V0dGVyX0FkZFJlZnMo
cGFyZW50UHJlc1NoZWxsKSk7CiAgICAgICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>462530</attachid>
            <date>2010-08-03 14:39:52 -0700</date>
            <delta_ts>2010-08-03 15:13:40 -0700</delta_ts>
            <desc>part 1.1 - update part 1 to deal with bug 513162</desc>
            <filename>hookup-vms-2</filename>
            <type>text/plain</type>
            <size>991</size>
            <attacher>tnikkel</attacher>
            
              <data encoding="base64">RnJvbTogSmltIE1hdGhpZXMgPGptYXRoaWVzQG1vemlsbGEuY29tPgoKZGlmZiAtLWdpdCBhL2xh
eW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwIGIvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZp
ZXdlci5jcHAKLS0tIGEvbGF5b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKKysrIGIvbGF5
b3V0L2Jhc2UvbnNEb2N1bWVudFZpZXdlci5jcHAKQEAgLTIzNDYsMTkgKzIzNDYsMTcgQEAgRG9j
dW1lbnRWaWV3ZXJJbXBsOjpEZXRhY2hGcm9tVG9wTGV2ZWxXaQogICBtQXR0YWNoZWRUb1BhcmVu
dCA9IFBSX0ZBTFNFOwogfQogCiBuc0lWaWV3KgogRG9jdW1lbnRWaWV3ZXJJbXBsOjpGaW5kQ29u
dGFpbmVyVmlldygpCiB7CiAgIG5zSVZpZXcqIGNvbnRhaW5lclZpZXcgPSBuc251bGw7CiAKLSAg
aWYgKG1QYXJlbnRXaWRnZXQpIHsKLSAgICBjb250YWluZXJWaWV3ID0gbnNJVmlldzo6R2V0Vmll
d0ZvcihtUGFyZW50V2lkZ2V0KTsKLSAgfSBlbHNlIGlmIChtQ29udGFpbmVyKSB7CisgIGlmICht
Q29udGFpbmVyKSB7CiAgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gZG9jU2hlbGxJ
dGVtID0gZG9fUXVlcnlSZWZlcmVudChtQ29udGFpbmVyKTsKICAgICBuc0NPTVB0cjxuc1BJRE9N
V2luZG93PiBwd2luKGRvX0dldEludGVyZmFjZShkb2NTaGVsbEl0ZW0pKTsKICAgICBpZiAocHdp
bikgewogICAgICAgbnNDT01QdHI8bnNJQ29udGVudD4gY29udGFpbmVyRWxlbWVudCA9IGRvX1F1
ZXJ5SW50ZXJmYWNlKHB3aW4tPkdldEZyYW1lRWxlbWVudEludGVybmFsKCkpOwogICAgICAgbnND
T01QdHI8bnNJUHJlc1NoZWxsPiBwYXJlbnRQcmVzU2hlbGw7CiAgICAgICBpZiAoZG9jU2hlbGxJ
dGVtKSB7CiAgICAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJlZUl0ZW0+IHBhcmVudERvY1No
ZWxsSXRlbTsKICAgICAgICAgZG9jU2hlbGxJdGVtLT5HZXRQYXJlbnQoZ2V0dGVyX0FkZFJlZnMo
cGFyZW50RG9jU2hlbGxJdGVtKSk7Cg==
</data>
<flag name="review"
          id="387187"
          type_id="937"
          status="+"
          setter="roc"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>464587</attachid>
            <date>2010-08-10 14:44:48 -0700</date>
            <delta_ts>2010-08-10 14:44:48 -0700</delta_ts>
            <desc>Part 1 refreshed</desc>
            <filename>hookup-vms</filename>
            <type>text/plain</type>
            <size>3151</size>
            <attacher>tnikkel</attacher>
            
              <data encoding="base64">RnJvbTogUm9iZXJ0IE8nQ2FsbGFoYW4gPHJvY0BvY2FsbGFoYW4ub3JnPgpob29rdXAgdmlldyBt
YW5hZ2VycyB1bmNvbmRpdGlvbmFsbHkgcj1kYmFyb24KCmRpZmYgLS1naXQgYS9sYXlvdXQvYmFz
ZS9uc0RvY3VtZW50Vmlld2VyLmNwcCBiL2xheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3Bw
Ci0tLSBhL2xheW91dC9iYXNlL25zRG9jdW1lbnRWaWV3ZXIuY3BwCisrKyBiL2xheW91dC9iYXNl
L25zRG9jdW1lbnRWaWV3ZXIuY3BwCkBAIC0yMzY1LDI3ICsyMzY1LDIzIEBAIERvY3VtZW50Vmll
d2VySW1wbDo6RGV0YWNoRnJvbVRvcExldmVsV2kKICAgbUF0dGFjaGVkVG9QYXJlbnQgPSBQUl9G
QUxTRTsKIH0KIAogbnNJVmlldyoKIERvY3VtZW50Vmlld2VySW1wbDo6RmluZENvbnRhaW5lclZp
ZXcoKQogewogICBuc0lWaWV3KiBjb250YWluZXJWaWV3ID0gbnNudWxsOwogCi0gIG5zQ09NUHRy
PG5zSUNvbnRlbnQ+IGNvbnRhaW5lckVsZW1lbnQ7Ci0gIG5zQ09NUHRyPG5zSURvY1NoZWxsVHJl
ZUl0ZW0+IGRvY1NoZWxsSXRlbSA9IGRvX1F1ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcik7Ci0gIG5z
Q09NUHRyPG5zUElET01XaW5kb3c+IHB3aW4oZG9fR2V0SW50ZXJmYWNlKGRvY1NoZWxsSXRlbSkp
OwotICBpZiAocHdpbikgewotICAgIGNvbnRhaW5lckVsZW1lbnQgPSBkb19RdWVyeUludGVyZmFj
ZShwd2luLT5HZXRGcmFtZUVsZW1lbnRJbnRlcm5hbCgpKTsKLSAgfQotICAgICAgICAKICAgaWYg
KG1QYXJlbnRXaWRnZXQpIHsKICAgICBjb250YWluZXJWaWV3ID0gbnNJVmlldzo6R2V0Vmlld0Zv
cihtUGFyZW50V2lkZ2V0KTsKLSAgfSBlbHNlIHsKLSAgICBpZiAobUNvbnRhaW5lcikgeworICB9
IGVsc2UgaWYgKG1Db250YWluZXIpIHsKKyAgICBuc0NPTVB0cjxuc0lEb2NTaGVsbFRyZWVJdGVt
PiBkb2NTaGVsbEl0ZW0gPSBkb19RdWVyeVJlZmVyZW50KG1Db250YWluZXIpOworICAgIG5zQ09N
UHRyPG5zUElET01XaW5kb3c+IHB3aW4oZG9fR2V0SW50ZXJmYWNlKGRvY1NoZWxsSXRlbSkpOwor
ICAgIGlmIChwd2luKSB7CisgICAgICBuc0NPTVB0cjxuc0lDb250ZW50PiBjb250YWluZXJFbGVt
ZW50ID0gZG9fUXVlcnlJbnRlcmZhY2UocHdpbi0+R2V0RnJhbWVFbGVtZW50SW50ZXJuYWwoKSk7
CiAgICAgICBuc0NPTVB0cjxuc0lQcmVzU2hlbGw+IHBhcmVudFByZXNTaGVsbDsKICAgICAgIGlm
IChkb2NTaGVsbEl0ZW0pIHsKICAgICAgICAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4g
cGFyZW50RG9jU2hlbGxJdGVtOwogICAgICAgICBkb2NTaGVsbEl0ZW0tPkdldFBhcmVudChnZXR0
ZXJfQWRkUmVmcyhwYXJlbnREb2NTaGVsbEl0ZW0pKTsKICAgICAgICAgaWYgKHBhcmVudERvY1No
ZWxsSXRlbSkgewogICAgICAgICAgIG5zQ09NUHRyPG5zSURvY1NoZWxsPiBwYXJlbnREb2NTaGVs
bCA9IGRvX1F1ZXJ5SW50ZXJmYWNlKHBhcmVudERvY1NoZWxsSXRlbSk7CiAgICAgICAgICAgcGFy
ZW50RG9jU2hlbGwtPkdldFByZXNTaGVsbChnZXR0ZXJfQWRkUmVmcyhwYXJlbnRQcmVzU2hlbGwp
KTsKICAgICAgICAgfQpAQCAtMjQxMyw0MiArMjQwOSwxNyBAQCBEb2N1bWVudFZpZXdlckltcGw6
OkZpbmRDb250YWluZXJWaWV3KCkKICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgTlNfV0FSTklORygiU3ViZG9jdW1lbnQgY29udGFpbmVyIGhhcyBubyBmcmFtZSIpOwog
ICAgICAgICB9CiAgICAgICB9CiAgICAgfQogICB9CiAKLSAgaWYgKCFjb250YWluZXJWaWV3KQot
ICAgIHJldHVybiBuc251bGw7Ci0KLSAgaWYgKGNvbnRhaW5lckVsZW1lbnQgJiYKLSAgICAgIGNv
bnRhaW5lckVsZW1lbnQtPkhhc0F0dHIoa05hbWVTcGFjZUlEX05vbmUsIG5zR2tBdG9tczo6dHJh
bnNwYXJlbnQpKQotICAgIHJldHVybiBjb250YWluZXJWaWV3OwotCi0gIG5zSVdpZGdldCogb3V0
ZXJXaWRnZXQgPSBjb250YWluZXJWaWV3LT5HZXROZWFyZXN0V2lkZ2V0KG5zbnVsbCk7Ci0gIGlm
IChvdXRlcldpZGdldCAmJgotICAgICAgb3V0ZXJXaWRnZXQtPkdldFRyYW5zcGFyZW5jeU1vZGUo
KSA9PSBlVHJhbnNwYXJlbmN5VHJhbnNwYXJlbnQpCi0gICAgcmV0dXJuIGNvbnRhaW5lclZpZXc7
Ci0KLSAgLy8gSWYgdGhlIHBhcmVudCBjb250YWluZXIgaXMgYSBjaHJvbWUgc2hlbGwgYW5kIHdl
IGFyZSBhIGNvbnRlbnQgc2hlbGwKLSAgLy8gdGhlbiB3ZSB3b24ndCBob29rIGludG8gaXRzIHZp
ZXcKLSAgLy8gdHJlZS4gVGhpcyB3aWxsIGltcHJvdmUgcGVyZm9ybWFuY2UgYSBsaXR0bGUgYml0
IChlc3BlY2lhbGx5IGdpdmVuIHNjcm9sbGluZy9wYWludGluZyBwZXJmIGJ1Z3MpCi0gIC8vIGJ1
dCBpcyByZWFsbHkganVzdCBmb3IgcGVhY2Ugb2YgbWluZC4gVGhpcyBjaGVjayBjYW4gYmUgcmVt
b3ZlZCBpZiB3ZSB3YW50IHRvIHN1cHBvcnQgZmFuY3kKLSAgLy8gY2hyb21lIGVmZmVjdHMgbGlr
ZSB0cmFuc3BhcmVudCBjb250cm9scyBmbG9hdGluZyBvdmVyIGNvbnRlbnQsIHRyYW5zcGFyZW50
IFdlYiBicm93c2VycywgYW5kCi0gIC8vIHRoaW5ncyBsaWtlIHRoYXQsIGFuZCB0aGUgcGVyZiBi
dWdzIGFyZSBmaXhlZC4KLSAgbnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gY29udGFpbmVy
KGRvX1F1ZXJ5UmVmZXJlbnQobUNvbnRhaW5lcikpOwotICBpZiAoY29udGFpbmVyKSB7Ci0gICAg
bnNDT01QdHI8bnNJRG9jU2hlbGxUcmVlSXRlbT4gc2FtZVR5cGVQYXJlbnQ7Ci0gICAgY29udGFp
bmVyLT5HZXRTYW1lVHlwZVBhcmVudChnZXR0ZXJfQWRkUmVmcyhzYW1lVHlwZVBhcmVudCkpOwot
ICAgIGlmIChzYW1lVHlwZVBhcmVudCkKLSAgICAgIHJldHVybiBjb250YWluZXJWaWV3OwotICB9
Ci0gIHJldHVybiBuc251bGw7CisgIHJldHVybiBjb250YWluZXJWaWV3OwogfQogCiBuc3Jlc3Vs
dAogRG9jdW1lbnRWaWV3ZXJJbXBsOjpDcmVhdGVEZXZpY2VDb250ZXh0KG5zSVZpZXcqIGFDb250
YWluZXJWaWV3KQogewogICBOU19QUkVDT05ESVRJT04oIW1QcmVzU2hlbGwgJiYgIW1XaW5kb3cs
CiAgICAgICAgICAgICAgICAgICAiVGhpcyB3aWxsIHNjcmV3IHVwIG91ciBleGlzdGluZyBwcmVz
ZW50YXRpb24iKTsKICAgTlNfUFJFQ09ORElUSU9OKG1Eb2N1bWVudCwgIkdvdHRhIGhhdmUgYSBk
b2N1bWVudCBoZXJlIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>465752</attachid>
            <date>2010-08-13 11:28:39 -0700</date>
            <delta_ts>2010-08-19 13:04:12 -0700</delta_ts>
            <desc>Part 2 refreshed</desc>
            <filename>remove-widget</filename>
            <type>text/plain</type>
            <size>1076</size>
            <attacher>tnikkel</attacher>
            
              <data encoding="base64">RnJvbTogUm9iZXJ0IE8nQ2FsbGFoYW4gPHJvY0BvY2FsbGFoYW4ub3JnPgpyZW1vdmUgd2lkZ2V0
cyBmcm9tIGFsbCBzdWJmcmFtZXMgcj1kYmFyb24KCmRpZmYgLS1naXQgYS9sYXlvdXQvZ2VuZXJp
Yy9uc0ZyYW1lRnJhbWUuY3BwIGIvbGF5b3V0L2dlbmVyaWMvbnNGcmFtZUZyYW1lLmNwcAotLS0g
YS9sYXlvdXQvZ2VuZXJpYy9uc0ZyYW1lRnJhbWUuY3BwCisrKyBiL2xheW91dC9nZW5lcmljL25z
RnJhbWVGcmFtZS5jcHAKQEAgLTk2MCwyNSArOTYwLDE2IEBAIG5zU3ViRG9jdW1lbnRGcmFtZTo6
Q3JlYXRlVmlld0FuZFdpZGdldCgKICAgbnNJVmlldyogaW5uZXJWaWV3ID0gdmlld01hbi0+Q3Jl
YXRlVmlldyh2aWV3Qm91bmRzLCBvdXRlclZpZXcpOwogICBpZiAoIWlubmVyVmlldykgewogICAg
IE5TX0VSUk9SKCJDb3VsZCBub3QgY3JlYXRlIGlubmVyIHZpZXciKTsKICAgICByZXR1cm4gbnNu
dWxsOwogICB9CiAgIG1Jbm5lclZpZXcgPSBpbm5lclZpZXc7CiAgIHZpZXdNYW4tPkluc2VydENo
aWxkKG91dGVyVmlldywgaW5uZXJWaWV3LCBuc251bGwsIFBSX1RSVUUpOwogCi0gIGlmIChhQ29u
dGVudFR5cGUgPT0gZUNvbnRlbnRUeXBlQ29udGVudCkgewotICAgIC8vIHdpZGdldCBuZWVkZWQu
Ci0gICAgbnNyZXN1bHQgcnYgPSBpbm5lclZpZXctPkNyZWF0ZVdpZGdldChrQ0NoaWxkQ0lELCBu
c251bGwsIG5zbnVsbCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFBSX1RSVUUsIFBSX1RSVUUsIGFDb250ZW50VHlwZSk7Ci0gICAgaWYgKE5TX0ZBSUxFRChydikp
IHsKLSAgICAgIE5TX1dBUk5JTkcoIkNvdWxkbid0IGNyZWF0ZSB3aWRnZXQgZm9yIGZyYW1lLiIp
OwotICAgICAgbUlubmVyVmlldyA9IG5zbnVsbDsKLSAgICB9Ci0gIH0KICAgcmV0dXJuIG1Jbm5l
clZpZXc7CiB9CiAKIG5zSUZyYW1lKgogbnNTdWJEb2N1bWVudEZyYW1lOjpPYnRhaW5JbnRyaW5z
aWNTaXplRnJhbWUoKQogewogICBuc0NPTVB0cjxuc0lPYmplY3RMb2FkaW5nQ29udGVudD4gb2xj
ID0gZG9fUXVlcnlJbnRlcmZhY2UoR2V0Q29udGVudCgpKTsKICAgaWYgKG9sYykgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>467516</attachid>
            <date>2010-08-19 13:04:12 -0700</date>
            <delta_ts>2010-08-19 13:04:12 -0700</delta_ts>
            <desc>Part 2 refreshed</desc>
            <filename>remove-widget</filename>
            <type>text/plain</type>
            <size>1056</size>
            <attacher>tnikkel</attacher>
            
              <data encoding="base64">RnJvbTogUm9iZXJ0IE8nQ2FsbGFoYW4gPHJvY0BvY2FsbGFoYW4ub3JnPgpyZW1vdmUgd2lkZ2V0
cyBmcm9tIGFsbCBzdWJmcmFtZXMgcj1kYmFyb24KCmRpZmYgLS1naXQgYS9sYXlvdXQvZ2VuZXJp
Yy9uc0ZyYW1lRnJhbWUuY3BwIGIvbGF5b3V0L2dlbmVyaWMvbnNGcmFtZUZyYW1lLmNwcAotLS0g
YS9sYXlvdXQvZ2VuZXJpYy9uc0ZyYW1lRnJhbWUuY3BwCisrKyBiL2xheW91dC9nZW5lcmljL25z
RnJhbWVGcmFtZS5jcHAKQEAgLTk1OCwyNSArOTU4LDE2IEBAIG5zU3ViRG9jdW1lbnRGcmFtZTo6
Q3JlYXRlVmlld0FuZFdpZGdldCgKICAgbnNJVmlldyogaW5uZXJWaWV3ID0gdmlld01hbi0+Q3Jl
YXRlVmlldyh2aWV3Qm91bmRzLCBvdXRlclZpZXcpOwogICBpZiAoIWlubmVyVmlldykgewogICAg
IE5TX0VSUk9SKCJDb3VsZCBub3QgY3JlYXRlIGlubmVyIHZpZXciKTsKICAgICByZXR1cm4gbnNu
dWxsOwogICB9CiAgIG1Jbm5lclZpZXcgPSBpbm5lclZpZXc7CiAgIHZpZXdNYW4tPkluc2VydENo
aWxkKG91dGVyVmlldywgaW5uZXJWaWV3LCBuc251bGwsIFBSX1RSVUUpOwogCi0gIGlmIChhQ29u
dGVudFR5cGUgPT0gZUNvbnRlbnRUeXBlQ29udGVudCkgewotICAgIC8vIHdpZGdldCBuZWVkZWQu
Ci0gICAgbnNyZXN1bHQgcnYgPSBpbm5lclZpZXctPkNyZWF0ZVdpZGdldChuc251bGwsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQUl9UUlVFLCBQUl9UUlVFLCBh
Q29udGVudFR5cGUpOwotICAgIGlmIChOU19GQUlMRUQocnYpKSB7Ci0gICAgICBOU19XQVJOSU5H
KCJDb3VsZG4ndCBjcmVhdGUgd2lkZ2V0IGZvciBmcmFtZS4iKTsKLSAgICAgIG1Jbm5lclZpZXcg
PSBuc251bGw7Ci0gICAgfQotICB9CiAgIHJldHVybiBtSW5uZXJWaWV3OwogfQogCiBuc0lGcmFt
ZSoKIG5zU3ViRG9jdW1lbnRGcmFtZTo6T2J0YWluSW50cmluc2ljU2l6ZUZyYW1lKCkKIHsKICAg
bnNDT01QdHI8bnNJT2JqZWN0TG9hZGluZ0NvbnRlbnQ+IG9sYyA9IGRvX1F1ZXJ5SW50ZXJmYWNl
KEdldENvbnRlbnQoKSk7CiAgIGlmIChvbGMpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>468409</attachid>
            <date>2010-08-23 12:50:30 -0700</date>
            <delta_ts>2010-08-23 12:50:30 -0700</delta_ts>
            <desc>screenshot of the problem</desc>
            <filename>scrollproblem.png</filename>
            <type>image/png</type>
            <size>59655</size>
            <attacher>kwierso</attacher>
            
              <data encoding="base64">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
</data>

          </attachment>


    </bug>

</bugzilla>