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

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

    <bug>
          <bug_id>32614</bug_id>
          
          <creation_ts>2009-12-16 09:20:30 -0800</creation_ts>
          <short_desc>[Qt] Memory leak detected in ThreadingQt</short_desc>
          <delta_ts>2009-12-28 12:29:04 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chang Shu">cshu</reporter>
          <assigned_to name="Chang Shu">cshu</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>hamaji</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>172323</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2009-12-16 09:20:30 -0800</bug_when>
    <thetext>a new instance of ThreadPriviate is created in function createThreadInternal() (ThreadingQt.cpp), but no place takes care of the deletion. See code below.

ThreadIdentifier createThreadInternal(ThreadFunction entryPoint, void* data, const char*)
{
    ThreadPrivate* thread = new ThreadPrivate(entryPoint, data);
...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173744</commentid>
    <comment_count>1</comment_count>
      <attachid>45280</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2009-12-20 08:03:49 -0800</bug_when>
    <thetext>Created attachment 45280
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173746</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-20 08:06:53 -0800</bug_when>
    <thetext>Attachment 45280 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
JavaScriptCore/wtf/qt/ThreadingQt.cpp:183:  static_cast is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173768</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-12-20 09:45:35 -0800</bug_when>
    <thetext>Haha.  That&apos;s a lame false positive from the style bot.  I&apos;ll file a bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173774</commentid>
    <comment_count>4</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-20 10:08:49 -0800</bug_when>
    <thetext>My apologies. This is my mistake. I posted a patch to fix this false alarm. Thanks Adam for filing this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174652</commentid>
    <comment_count>5</comment_count>
      <attachid>45450</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2009-12-23 13:59:48 -0800</bug_when>
    <thetext>Created attachment 45450
fix patch to take care both synchronous and asynchronous mode</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174653</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-23 14:00:14 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45450 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174775</commentid>
    <comment_count>7</comment_count>
      <attachid>45450</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-12-24 08:54:38 -0800</bug_when>
    <thetext>Comment on attachment 45450
fix patch to take care both synchronous and asynchronous mode

This looks good to me as detachThread() could be called from any thread including &quot;self&quot; thread, but the ThreadPrivate destructor is called from the main application thread.

LGTM, r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174776</commentid>
    <comment_count>8</comment_count>
      <attachid>45450</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-24 09:03:51 -0800</bug_when>
    <thetext>Comment on attachment 45450
fix patch to take care both synchronous and asynchronous mode

Clearing flags on attachment: 45450

Committed r52550: &lt;http://trac.webkit.org/changeset/52550&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174777</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-24 09:03:57 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174778</commentid>
    <comment_count>10</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-12-24 09:36:33 -0800</bug_when>
    <thetext>REOPEN as The change regressed the following LayoutTests for QtWebKit.

fast/workers/worker-call.html -&gt; crashed
fast/workers/worker-close.html -&gt; crashed

Reverted as http://trac.webkit.org/changeset/52551.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175263</commentid>
    <comment_count>11</comment_count>
      <attachid>45563</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2009-12-28 10:54:09 -0800</bug_when>
    <thetext>Created attachment 45563
fix crash in patch 2

calling deleteLater in detachThread may not guarantee the thread is finished while being deleted. Using a slot function to capture the finished() signal and calling deleteLater from there is safe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175264</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-28 10:57:07 -0800</bug_when>
    <thetext>Attachment 45563 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
JavaScriptCore/wtf/qt/ThreadingQt.cpp:72:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
JavaScriptCore/wtf/qt/ThreadingQt.cpp:78:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
JavaScriptCore/wtf/qt/ThreadingQt.cpp:291:  Found header this file implements after other header. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175268</commentid>
    <comment_count>13</comment_count>
      <attachid>45564</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2009-12-28 11:45:59 -0800</bug_when>
    <thetext>Created attachment 45564
fix style check

fixed the first 2 style checks.
I think the 3rd one is a kind of false alarm. Qt requires to put &quot;#include *.moc&quot; at the end of the cpp file. I ran the check-webkit-style script on some existing files and got the same complains.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175269</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-28 11:48:02 -0800</bug_when>
    <thetext>Attachment 45564 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
JavaScriptCore/wtf/qt/ThreadingQt.cpp:293:  Found header this file implements after other header. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175274</commentid>
    <comment_count>15</comment_count>
      <attachid>45564</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-12-28 12:16:11 -0800</bug_when>
    <thetext>Comment on attachment 45564
fix style check

Looks good, r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175280</commentid>
    <comment_count>16</comment_count>
      <attachid>45564</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-28 12:28:59 -0800</bug_when>
    <thetext>Comment on attachment 45564
fix style check

Clearing flags on attachment: 45564

Committed r52602: &lt;http://trac.webkit.org/changeset/52602&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175281</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-28 12:29:04 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45280</attachid>
            <date>2009-12-20 08:03:49 -0800</date>
            <delta_ts>2009-12-23 13:59:48 -0800</delta_ts>
            <desc>fix patch</desc>
            <filename>bug32614_1.patch</filename>
            <type>text/plain</type>
            <size>1109</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyNDE3KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMTItMjAgIFNodSBDaGFu
ZyAgPENoYW5nLlNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1F0XSBGaXggbWVtb3J5IGxlYWsgYnkgZGVsZXRpbmcgaW5zdGFu
Y2Ugb2YgVGhyZWFkUHJpdmF0ZQorICAgICAgICBpbiBmdW5jdGlvbiB3YWl0Rm9yVGhyZWFkQ29t
cGxldGlvbigpLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzI2MTQKKworICAgICAgICAqIHd0Zi9xdC9UaHJlYWRpbmdRdC5jcHA6CisgICAgICAgIChX
VEY6OndhaXRGb3JUaHJlYWRDb21wbGV0aW9uKToKKwogMjAwOS0xMi0xOCAgTGFzemxvIEdvbWJv
cyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2Vu
bmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCkluZGV4OiBKYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhy
ZWFkaW5nUXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRp
bmdRdC5jcHAJKHJldmlzaW9uIDUyNDE4KQorKysgSmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVh
ZGluZ1F0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgwLDYgKzE4MCw4IEBAIGludCB3YWl0Rm9y
VGhyZWFkQ29tcGxldGlvbihUaHJlYWRJZGVudGkKICAgICBpZiAocmVzdWx0KQogICAgICAgICAq
cmVzdWx0ID0gc3RhdGljX2Nhc3Q8VGhyZWFkUHJpdmF0ZSo+KHRocmVhZCktPmdldFJldHVyblZh
bHVlKCk7CiAKKyAgICBkZWxldGUgc3RhdGljX2Nhc3Q8VGhyZWFkUHJpdmF0ZSo+KHRocmVhZCk7
CisKICAgICByZXR1cm4gIXJlczsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45450</attachid>
            <date>2009-12-23 13:59:48 -0800</date>
            <delta_ts>2009-12-28 10:54:09 -0800</delta_ts>
            <desc>fix patch to take care both synchronous and asynchronous mode</desc>
            <filename>bug32614_2.patch</filename>
            <type>text/plain</type>
            <size>1450</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyNTI5KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDktMTItMjMgIFNodSBDaGFu
ZyAgPENoYW5nLlNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1F0XSBGaXggbWVtb3J5IGxlYWsgYnkgZGVsZXRpbmcgaW5zdGFu
Y2Ugb2YgVGhyZWFkUHJpdmF0ZQorICAgICAgICBpbiBmdW5jdGlvbiB3YWl0Rm9yVGhyZWFkQ29t
cGxldGlvbigpLCBzeW5jaHJvbm91c2x5LCBvciBpbgorICAgICAgICBkZXRhY2hUaHJlYWQoKSwg
YXN5bmNocm9ub3VzbHkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0zMjYxNCAKKworICAgICAgICAqIHd0Zi9xdC9UaHJlYWRpbmdRdC5jcHA6CisgICAg
ICAgIChXVEY6OndhaXRGb3JUaHJlYWRDb21wbGV0aW9uKToKKyAgICAgICAgKFdURjo6ZGV0YWNo
VGhyZWFkKToKKwogMjAwOS0xMi0yMyAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAcGFyb2dh
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IEphdmFTY3Jp
cHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdRdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENv
cmUvd3RmL3F0L1RocmVhZGluZ1F0LmNwcAkocmV2aXNpb24gNTI1MjkpCisrKyBKYXZhU2NyaXB0
Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODAsMTEgKzE4
MCwxOSBAQCBpbnQgd2FpdEZvclRocmVhZENvbXBsZXRpb24oVGhyZWFkSWRlbnRpCiAgICAgaWYg
KHJlc3VsdCkKICAgICAgICAgKnJlc3VsdCA9IHN0YXRpY19jYXN0PFRocmVhZFByaXZhdGUqPih0
aHJlYWQpLT5nZXRSZXR1cm5WYWx1ZSgpOwogCisgICAgZGVsZXRlIHRocmVhZDsKKwogICAgIHJl
dHVybiAhcmVzOwogfQogCi12b2lkIGRldGFjaFRocmVhZChUaHJlYWRJZGVudGlmaWVyKQordm9p
ZCBkZXRhY2hUaHJlYWQoVGhyZWFkSWRlbnRpZmllciB0aHJlYWRJRCkKIHsKKyAgICBBU1NFUlQo
dGhyZWFkSUQpOworCisgICAgUVRocmVhZCogdGhyZWFkID0gdGhyZWFkRm9ySWRlbnRpZmllcih0
aHJlYWRJRCk7CisgICAgaWYgKHRocmVhZCkKKyAgICAgICAgdGhyZWFkLT5kZWxldGVMYXRlcigp
OworICAgIGNsZWFyVGhyZWFkRm9ySWRlbnRpZmllcih0aHJlYWRJRCk7CiB9CiAKIFRocmVhZElk
ZW50aWZpZXIgY3VycmVudFRocmVhZCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45563</attachid>
            <date>2009-12-28 10:54:09 -0800</date>
            <delta_ts>2009-12-28 11:45:59 -0800</delta_ts>
            <desc>fix crash in patch 2</desc>
            <filename>bug32614_3.patch</filename>
            <type>text/plain</type>
            <size>2160</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyNjAwKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDktMTItMjggIFNodSBDaGFu
ZyAgPENoYW5nLlNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1F0XSBEZWxldGUgVGhyZWFkUHJpdmF0ZSBpbnN0YW5jZSBhZnRl
ciBpdCBpcyBmaW5pc2hlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTMyNjE0CisKKyAgICAgICAgKiB3dGYvcXQvVGhyZWFkaW5nUXQuY3BwOgorICAg
ICAgICAoV1RGOjpUaHJlYWRNb25pdG9yOjppbnN0YW5jZSk6CisgICAgICAgIChXVEY6OlRocmVh
ZE1vbml0b3I6OnRocmVhZEZpbmlzaGVkKToKKyAgICAgICAgKFdURjo6Y3JlYXRlVGhyZWFkSW50
ZXJuYWwpOgorICAgICAgICAoV1RGOjpkZXRhY2hUaHJlYWQpOgorCiAyMDA5LTEyLTI4ICBQYXRy
aWNrIEdhbnN0ZXJlciAgPHBhcm9nYUBwYXJvZ2EuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IE1hY2llaiBTdGFjaG93aWFrLgpJbmRleDogSmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGlu
Z1F0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQu
Y3BwCShyZXZpc2lvbiA1MjYwMCkKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdR
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDYgKzY2LDE5IEBAIHZvaWQgVGhyZWFkUHJpdmF0
ZTo6cnVuKCkKICAgICBtX3JldHVyblZhbHVlID0gbV9lbnRyeVBvaW50KG1fZGF0YSk7CiB9CiAK
K2NsYXNzIFRocmVhZE1vbml0b3IgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3B1
YmxpYzoKKyAgICBzdGF0aWMgVGhyZWFkTW9uaXRvciAqIGluc3RhbmNlKCkgeworICAgICAgICBz
dGF0aWMgVGhyZWFkTW9uaXRvciAqaW5zdGFuY2UgPSBuZXcgVGhyZWFkTW9uaXRvcigpOworICAg
ICAgICByZXR1cm4gaW5zdGFuY2U7CisgICAgfQorCitwdWJsaWMgUV9TTE9UUzoKKyAgICB2b2lk
IHRocmVhZEZpbmlzaGVkKCkgeworICAgICAgICBxb2JqZWN0X2Nhc3Q8UU9iamVjdCo+KHNlbmRl
cigpKS0+ZGVsZXRlTGF0ZXIoKTsKKyAgICB9Cit9OwogCiBzdGF0aWMgTXV0ZXgqIGF0b21pY2Fs
bHlJbml0aWFsaXplZFN0YXRpY011dGV4OwogCkBAIC0xNTcsNiArMTcwLDkgQEAgVGhyZWFkSWRl
bnRpZmllciBjcmVhdGVUaHJlYWRJbnRlcm5hbChUaAogICAgICAgICBMT0dfRVJST1IoIkZhaWxl
ZCB0byBjcmVhdGUgdGhyZWFkIGF0IGVudHJ5IHBvaW50ICVwIHdpdGggZGF0YSAlcCIsIGVudHJ5
UG9pbnQsIGRhdGEpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CisKKyAgICBRT2JqZWN0Ojpj
b25uZWN0KHRocmVhZCwgU0lHTkFMKGZpbmlzaGVkKCkpLCBUaHJlYWRNb25pdG9yOjppbnN0YW5j
ZSgpLCBTTE9UKHRocmVhZEZpbmlzaGVkKCkpKTsKKwogICAgIHRocmVhZC0+c3RhcnQoKTsKIAog
ICAgIFFUaHJlYWQqIHRocmVhZFJlZiA9IHN0YXRpY19jYXN0PFFUaHJlYWQqPih0aHJlYWQpOwpA
QCAtMTgzLDggKzE5OSwxMCBAQCBpbnQgd2FpdEZvclRocmVhZENvbXBsZXRpb24oVGhyZWFkSWRl
bnRpCiAgICAgcmV0dXJuICFyZXM7CiB9CiAKLXZvaWQgZGV0YWNoVGhyZWFkKFRocmVhZElkZW50
aWZpZXIpCit2b2lkIGRldGFjaFRocmVhZChUaHJlYWRJZGVudGlmaWVyIHRocmVhZElEKQogewor
ICAgIEFTU0VSVCh0aHJlYWRJRCk7CisgICAgY2xlYXJUaHJlYWRGb3JJZGVudGlmaWVyKHRocmVh
ZElEKTsKIH0KIAogVGhyZWFkSWRlbnRpZmllciBjdXJyZW50VGhyZWFkKCkKQEAgLTI3MCw0ICsy
ODgsNiBAQCB2b2lkIFRocmVhZENvbmRpdGlvbjo6YnJvYWRjYXN0KCkKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCisjaW5jbHVkZSAiVGhyZWFkaW5nUXQubW9jIgorCiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45564</attachid>
            <date>2009-12-28 11:45:59 -0800</date>
            <delta_ts>2009-12-28 12:28:58 -0800</delta_ts>
            <desc>fix style check</desc>
            <filename>bug32614_4.patch</filename>
            <type>text/plain</type>
            <size>2146</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyNjAwKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDktMTItMjggIFNodSBDaGFu
ZyAgPENoYW5nLlNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1F0XSBEZWxldGUgVGhyZWFkUHJpdmF0ZSBpbnN0YW5jZSBhZnRl
ciBpdCBpcyBmaW5pc2hlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTMyNjE0CisKKyAgICAgICAgKiB3dGYvcXQvVGhyZWFkaW5nUXQuY3BwOgorICAg
ICAgICAoV1RGOjpUaHJlYWRNb25pdG9yOjppbnN0YW5jZSk6CisgICAgICAgIChXVEY6OlRocmVh
ZE1vbml0b3I6OnRocmVhZEZpbmlzaGVkKToKKyAgICAgICAgKFdURjo6Y3JlYXRlVGhyZWFkSW50
ZXJuYWwpOgorICAgICAgICAoV1RGOjpkZXRhY2hUaHJlYWQpOgorCiAyMDA5LTEyLTI4ICBQYXRy
aWNrIEdhbnN0ZXJlciAgPHBhcm9nYUBwYXJvZ2EuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IE1hY2llaiBTdGFjaG93aWFrLgpJbmRleDogSmF2YVNjcmlwdENvcmUvd3RmL3F0L1RocmVhZGlu
Z1F0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvcXQvVGhyZWFkaW5nUXQu
Y3BwCShyZXZpc2lvbiA1MjYwMCkKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9xdC9UaHJlYWRpbmdR
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDYgKzY2LDIxIEBAIHZvaWQgVGhyZWFkUHJpdmF0
ZTo6cnVuKCkKICAgICBtX3JldHVyblZhbHVlID0gbV9lbnRyeVBvaW50KG1fZGF0YSk7CiB9CiAK
K2NsYXNzIFRocmVhZE1vbml0b3IgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3B1
YmxpYzoKKyAgICBzdGF0aWMgVGhyZWFkTW9uaXRvciAqIGluc3RhbmNlKCkKKyAgICB7CisgICAg
ICAgIHN0YXRpYyBUaHJlYWRNb25pdG9yICppbnN0YW5jZSA9IG5ldyBUaHJlYWRNb25pdG9yKCk7
CisgICAgICAgIHJldHVybiBpbnN0YW5jZTsKKyAgICB9CisKK3B1YmxpYyBRX1NMT1RTOgorICAg
IHZvaWQgdGhyZWFkRmluaXNoZWQoKQorICAgIHsKKyAgICAgICAgc2VuZGVyKCktPmRlbGV0ZUxh
dGVyKCk7CisgICAgfQorfTsKIAogc3RhdGljIE11dGV4KiBhdG9taWNhbGx5SW5pdGlhbGl6ZWRT
dGF0aWNNdXRleDsKIApAQCAtMTU3LDYgKzE3Miw5IEBAIFRocmVhZElkZW50aWZpZXIgY3JlYXRl
VGhyZWFkSW50ZXJuYWwoVGgKICAgICAgICAgTE9HX0VSUk9SKCJGYWlsZWQgdG8gY3JlYXRlIHRo
cmVhZCBhdCBlbnRyeSBwb2ludCAlcCB3aXRoIGRhdGEgJXAiLCBlbnRyeVBvaW50LCBkYXRhKTsK
ICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQorCisgICAgUU9iamVjdDo6Y29ubmVjdCh0aHJlYWQs
IFNJR05BTChmaW5pc2hlZCgpKSwgVGhyZWFkTW9uaXRvcjo6aW5zdGFuY2UoKSwgU0xPVCh0aHJl
YWRGaW5pc2hlZCgpKSk7CisKICAgICB0aHJlYWQtPnN0YXJ0KCk7CiAKICAgICBRVGhyZWFkKiB0
aHJlYWRSZWYgPSBzdGF0aWNfY2FzdDxRVGhyZWFkKj4odGhyZWFkKTsKQEAgLTE4Myw4ICsyMDEs
MTAgQEAgaW50IHdhaXRGb3JUaHJlYWRDb21wbGV0aW9uKFRocmVhZElkZW50aQogICAgIHJldHVy
biAhcmVzOwogfQogCi12b2lkIGRldGFjaFRocmVhZChUaHJlYWRJZGVudGlmaWVyKQordm9pZCBk
ZXRhY2hUaHJlYWQoVGhyZWFkSWRlbnRpZmllciB0aHJlYWRJRCkKIHsKKyAgICBBU1NFUlQodGhy
ZWFkSUQpOworICAgIGNsZWFyVGhyZWFkRm9ySWRlbnRpZmllcih0aHJlYWRJRCk7CiB9CiAKIFRo
cmVhZElkZW50aWZpZXIgY3VycmVudFRocmVhZCgpCkBAIC0yNzAsNCArMjkwLDYgQEAgdm9pZCBU
aHJlYWRDb25kaXRpb246OmJyb2FkY2FzdCgpCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAor
I2luY2x1ZGUgIlRocmVhZGluZ1F0Lm1vYyIKKwogI2VuZGlmCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>