<?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>46613</bug_id>
          
          <creation_ts>2010-09-27 02:37:40 -0700</creation_ts>
          <short_desc>[EFL] remove strdup in ewk_setting.cpp using eina_stringshare</short_desc>
          <delta_ts>2010-10-05 09:00:42 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Ryuan Choi">ryuan.choi</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>antognolli+webkit</cc>
    
    <cc>bunhere</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kenneth</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>285378</commentid>
    <comment_count>0</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-09-27 02:37:40 -0700</bug_when>
    <thetext>ewk_settings_web_database_path_get and ewk_settings_icon_database_path_get returns newly allocated string using strdup.

I think that we can remove it using eina_stringshare.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>285381</commentid>
    <comment_count>1</comment_count>
      <attachid>68891</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-09-27 02:45:32 -0700</bug_when>
    <thetext>Created attachment 68891
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>285439</commentid>
    <comment_count>2</comment_count>
    <who name="Rafael Antognolli">antognolli+webkit</who>
    <bug_when>2010-09-27 07:13:31 -0700</bug_when>
    <thetext>Patch looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>285462</commentid>
    <comment_count>3</comment_count>
      <attachid>68891</attachid>
    <who name="Lucas De Marchi">lucas.de.marchi</who>
    <bug_when>2010-09-27 07:58:39 -0700</bug_when>
    <thetext>Comment on attachment 68891
Patch

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

&gt; WebKit/efl/ChangeLog:8
&gt; +        Add variables shared by eins_stringshare and remove strdup.

typo here

&gt; WebKit/efl/ewk/ewk_settings.cpp:85
&gt; + * @return database path or NULL if none or web database is not supported.

You are not mentioning in documentation that this is stringshared and user should not free it, but instead using eina_stringshare functions. Look at ewk_* APIs that return stringshared chars and let a doc similar to that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>285482</commentid>
    <comment_count>4</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-09-27 08:51:25 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 68891 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=68891&amp;action=review
&gt; 
&gt; &gt; WebKit/efl/ChangeLog:8
&gt; &gt; +        Add variables shared by eins_stringshare and remove strdup.
&gt; 
&gt; typo here
&gt; 
&gt; &gt; WebKit/efl/ewk/ewk_settings.cpp:85
&gt; &gt; + * @return database path or NULL if none or web database is not supported.
&gt; 
&gt; You are not mentioning in documentation that this is stringshared and user should not free it, but instead using eina_stringshare functions. Look at ewk_* APIs that return stringshared chars and let a doc similar to that.

Thanks, I&apos;ll fix it as you mentioned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>285486</commentid>
    <comment_count>5</comment_count>
      <attachid>68915</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-09-27 08:57:55 -0700</bug_when>
    <thetext>Created attachment 68915
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>288869</commentid>
    <comment_count>6</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-04 04:16:06 -0700</bug_when>
    <thetext>Hi Kenneth and Antonio,

If you have time, could you please review this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>288930</commentid>
    <comment_count>7</comment_count>
      <attachid>68915</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2010-10-04 07:49:43 -0700</bug_when>
    <thetext>Comment on attachment 68915
Patch

Lucas or Raphael, please set cq+ if it also gets your approval.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>288976</commentid>
    <comment_count>8</comment_count>
      <attachid>68915</attachid>
    <who name="Lucas De Marchi">lucas.de.marchi</who>
    <bug_when>2010-10-04 09:42:09 -0700</bug_when>
    <thetext>Comment on attachment 68915
Patch

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

I think it&apos;s good, given the issue below is fixed.
cq- for now.

&gt; WebKit/efl/ewk/ewk_settings.cpp:164
&gt; +    return _ewk_icon_database_path;

HUmn.. a getter like this is ok for web database, but for icon there&apos;s a problem: it is not initialized during ewk_init(), so if user calls this getter without previously calling the setter, he will get a NULL instead of the real path.

Since we were previously going through webcore, this was not really an issue. However if we want to make this shortcut now, we need to initialize the icon path in _ewk_init_body() in the same way the web database path is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289359</commentid>
    <comment_count>9</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-04 20:05:13 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 68915 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=68915&amp;action=review
&gt; 
&gt; I think it&apos;s good, given the issue below is fixed.
&gt; cq- for now.
&gt; 
&gt; &gt; WebKit/efl/ewk/ewk_settings.cpp:164
&gt; &gt; +    return _ewk_icon_database_path;
&gt; 
&gt; HUmn.. a getter like this is ok for web database, but for icon there&apos;s a problem: it is not initialized during ewk_init(), so if user calls this getter without previously calling the setter, he will get a NULL instead of the real path.
&gt; 
right, He will get a NULL if it was called before setter.
but we can&apos;t get real path before setter because we need to open and enable icon_database using setter.
It&apos;s same as current code.

&gt; Since we were previously going through webcore, this was not really an issue. However if we want to make this shortcut now, we need to initialize the icon path in _ewk_init_body() in the same way the web database path is.

Ok, I&apos;ll prepare new patch including it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289360</commentid>
    <comment_count>10</comment_count>
      <attachid>69732</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-04 20:14:03 -0700</bug_when>
    <thetext>Created attachment 69732
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289470</commentid>
    <comment_count>11</comment_count>
      <attachid>69760</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-04 23:54:37 -0700</bug_when>
    <thetext>Created attachment 69760
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289472</commentid>
    <comment_count>12</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-04 23:59:11 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; Created an attachment (id=69760) [details]
&gt; Patch

I create folder to initialize icon_database_path.
If not, we got below error message.

ERR:ewebkit /workspace/webkit/WebKit/efl/ewk/ewk_settings.cpp:116 ewk_settings_icon_database_path_set() could not stat(/root/.webkit): No such file or directory</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289615</commentid>
    <comment_count>13</comment_count>
      <attachid>69786</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-05 08:17:26 -0700</bug_when>
    <thetext>Created attachment 69786
patch_without_folder_creation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289618</commentid>
    <comment_count>14</comment_count>
    <who name="Ryuan Choi">bunhere</who>
    <bug_when>2010-10-05 08:20:53 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; Created an attachment (id=69786) [details]
&gt; patch_without_folder_creation

As following discussion on IRC a few minutes ago, I removed folder creation.
We need to fix the problem of default folder in another bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289621</commentid>
    <comment_count>15</comment_count>
      <attachid>69788</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2010-10-05 08:24:48 -0700</bug_when>
    <thetext>Created attachment 69788
patch_without_folder_creation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289648</commentid>
    <comment_count>16</comment_count>
      <attachid>69788</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-05 09:00:36 -0700</bug_when>
    <thetext>Comment on attachment 69788
patch_without_folder_creation

Clearing flags on attachment: 69788

Committed r69113: &lt;http://trac.webkit.org/changeset/69113&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289649</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-05 09:00:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68891</attachid>
            <date>2010-09-27 02:45:32 -0700</date>
            <delta_ts>2010-09-27 08:57:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46613-20100927184535.patch</filename>
            <type>text/plain</type>
            <size>4598</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9lZmwvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9lZmwvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2ODM3OSkKKysrIFdlYktpdC9lZmwvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDktMjcgIFJ5dWFuIENob2kgIDxyeXVhbi5j
aG9pQHNhbXN1bmcuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtFRkxdIHJlbW92ZSBzdHJkdXAgaW4gZXdrX3NldHRpbmcuY3BwIHVzaW5nIGVp
bmFfc3RyaW5nc2hhcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQ2NjEzCisKKyAgICAgICAgQWRkIHZhcmlhYmxlcyBzaGFyZWQgYnkgZWluc19zdHJp
bmdzaGFyZSBhbmQgcmVtb3ZlIHN0cmR1cC4KKworICAgICAgICAqIGV3ay9ld2tfc2V0dGluZ3Mu
Y3BwOgorICAgICAgICAoZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX3NldCk6CisgICAg
ICAgIChld2tfc2V0dGluZ3Nfd2ViX2RhdGFiYXNlX3BhdGhfZ2V0KToKKyAgICAgICAgKGV3a19z
ZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfc2V0KToKKyAgICAgICAgKGV3a19zZXR0aW5nc19p
Y29uX2RhdGFiYXNlX3BhdGhfZ2V0KToKKyAgICAgICAgKiBld2svZXdrX3NldHRpbmdzLmg6CisK
IDIwMTAtMDktMjYgIEd5dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBBbnRvbmlvIEdvbWVzLgpJbmRleDogV2ViS2l0L2VmbC9ld2sv
ZXdrX3NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGlu
Z3MuY3BwCShyZXZpc2lvbiA2ODM3NCkKKysrIFdlYktpdC9lZmwvZXdrL2V3a19zZXR0aW5ncy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDggQEAKICNpbmNsdWRlIDxsaWJzb3VwL3Nv
dXAuaD4KICNlbmRpZgogCitzdGF0aWMgY29uc3QgY2hhciogX2V3a19kZWZhdWx0X3dlYl9kYXRh
YmFzZV9wYXRoID0gMDsKK3N0YXRpYyBjb25zdCBjaGFyKiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0
aCA9IDA7CiBzdGF0aWMgdWludDY0X3QgX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9xdW90YSA9
IDEgKiAxMDI0ICogMTAyNDsKIAogLyoqCkBAIC02OSwyMSArNzEsMjMgQEAgdm9pZCBld2tfc2V0
dGluZ3Nfd2ViX2RhdGFiYXNlX3BhdGhfc2V0KAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBX
VEY6OlN0cmluZyBjb3JlUGF0aCA9IFdURjo6U3RyaW5nOjpmcm9tVVRGOChwYXRoKTsKICAgICBX
ZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIoKS5zZXREYXRhYmFzZURpcmVjdG9yeVBh
dGgoY29yZVBhdGgpOworICAgIGlmICghX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoKQor
ICAgICAgICBfZXdrX2RlZmF1bHRfd2ViX2RhdGFiYXNlX3BhdGggPSBlaW5hX3N0cmluZ3NoYXJl
X2FkZChjb3JlUGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICBlbHNlCisgICAgICAgIGVpbmFfc3Ry
aW5nc2hhcmVfcmVwbGFjZSgmX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoLCBjb3JlUGF0
aC51dGY4KCkuZGF0YSgpKTsKKwogI2VuZGlmCiB9CiAKIC8qKgogICogUmV0dXJuIGRpcmVjdG9y
eSBwYXRoIHdoZXJlIHdlYiBkYXRhYmFzZSBpcyBzdG9yZWQuCiAgKgotICogQHJldHVybiBuZXds
eSBhbGxvY2F0ZWQgc3RyaW5nIHdpdGggZGF0YWJhc2UgcGF0aC4gTm90ZSB0aGF0IHJldHVybiBt
dXN0IGJlCi0gKiBmcmVlZCB3aXRoIGZyZWUoKSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9m
IHRoZSBzdHJpbmcgZHVlIHJlZmVyZW5jZQotICogY291bnRpbmcuCisgKiBAcmV0dXJuIGRhdGFi
YXNlIHBhdGggb3IgTlVMTCBpZiBub25lIG9yIHdlYiBkYXRhYmFzZSBpcyBub3Qgc3VwcG9ydGVk
LgogICovCiBjb25zdCBjaGFyICpld2tfc2V0dGluZ3Nfd2ViX2RhdGFiYXNlX3BhdGhfZ2V0KCkK
IHsKICNpZiBFTkFCTEUoREFUQUJBU0UpCi0gICAgV1RGOjpTdHJpbmcgcGF0aCA9IFdlYkNvcmU6
OkRhdGFiYXNlVHJhY2tlcjo6dHJhY2tlcigpLmRhdGFiYXNlRGlyZWN0b3J5UGF0aCgpOwotICAg
IHJldHVybiBzdHJkdXAocGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICByZXR1cm4gX2V3a19kZWZh
dWx0X3dlYl9kYXRhYmFzZV9wYXRoOwogI2Vsc2UKICAgICByZXR1cm4gMDsKICNlbmRpZgpAQCAt
MTIyLDkgKzEyNiwxNyBAQCBFaW5hX0Jvb2wgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0
CiAKICAgICAgICAgV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPnNldEVuYWJsZWQodHJ1ZSk7CiAg
ICAgICAgIFdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5vcGVuKFdURjo6U3RyaW5nOjpmcm9tVVRG
OChkaXJlY3RvcnkpKTsKKyAgICAgICAgaWYgKCFfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCkKKyAg
ICAgICAgICAgIF9ld2tfaWNvbl9kYXRhYmFzZV9wYXRoID0gZWluYV9zdHJpbmdzaGFyZV9hZGQo
ZGlyZWN0b3J5KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgZWluYV9zdHJpbmdzaGFyZV9y
ZXBsYWNlKCZfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCwgZGlyZWN0b3J5KTsKICAgICB9IGVsc2Ug
ewogICAgICAgICBXZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+c2V0RW5hYmxlZChmYWxzZSk7CiAg
ICAgICAgIFdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5jbG9zZSgpOworICAgICAgICBpZiAoX2V3
a19pY29uX2RhdGFiYXNlX3BhdGgpIHsKKyAgICAgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVfZGVs
KF9ld2tfaWNvbl9kYXRhYmFzZV9wYXRoKTsKKyAgICAgICAgICAgIF9ld2tfaWNvbl9kYXRhYmFz
ZV9wYXRoID0gMDsKKyAgICAgICAgfQogICAgIH0KICAgICByZXR1cm4gRUlOQV9UUlVFOwogfQpA
QCAtMTMyLDIyICsxNDQsMTYgQEAgRWluYV9Cb29sIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNl
X3BhdAogLyoqCiAgKiBSZXR1cm4gZGlyZWN0b3J5IHBhdGggd2hlcmUgaWNvbiBkYXRhYmFzZSBp
cyBzdG9yZWQuCiAgKgotICogQHJldHVybiBuZXdseSBhbGxvY2F0ZWQgc3RyaW5nIHdpdGggZGF0
YWJhc2UgcGF0aCBvciBAYyBOVUxMIGlmCi0gKiAgICAgICAgIG5vbmUgaXMgc2V0IG9yIGRhdGFi
YXNlIGlzIGNsb3NlZC4gTm90ZSB0aGF0IHJldHVybiBtdXN0IGJlCi0gKiAgICAgICAgIGZyZWVk
IHdpdGggZnJlZSgpIGFzIGl0J3MgYSBzdHJkdXAoKWVkIGNvcHkgb2YgdGhlIHN0cmluZwotICog
ICAgICAgICBkdWUgcmVmZXJlbmNlIGNvdW50aW5nLgorICogQHJldHVybiBkYXRhYmFzZSBwYXRo
IG9yIEBjIE5VTEwgaWYgbm9uZSBpcyBzZXQgb3IgZGF0YWJhc2UgaXMgY2xvc2VkLgogICovCi1j
aGFyKiBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX2dldCh2b2lkKQorY29uc3QgY2hh
ciogZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCkKIHsKICAgICBpZiAo
IVdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5pc0VuYWJsZWQoKSkKICAgICAgICAgcmV0dXJuIDA7
CiAgICAgaWYgKCFXZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+aXNPcGVuKCkpCiAgICAgICAgIHJl
dHVybiAwOwogCi0gICAgV1RGOjpTdHJpbmcgcGF0aCA9IFdlYkNvcmU6Omljb25EYXRhYmFzZSgp
LT5kYXRhYmFzZVBhdGgoKTsKLSAgICBpZiAocGF0aC5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVy
biAwOwotICAgIHJldHVybiBzdHJkdXAocGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICByZXR1cm4g
X2V3a19pY29uX2RhdGFiYXNlX3BhdGg7CiB9CiAKIC8qKgpJbmRleDogV2ViS2l0L2VmbC9ld2sv
ZXdrX3NldHRpbmdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2VmbC9ld2svZXdrX3NldHRpbmdz
LmgJKHJldmlzaW9uIDY4Mzc0KQorKysgV2ViS2l0L2VmbC9ld2svZXdrX3NldHRpbmdzLmgJKHdv
cmtpbmcgY29weSkKQEAgLTQyLDcgKzQyLDcgQEAgRUFQSSB2b2lkICAgICAgICAgICAgIGV3a19z
ZXR0aW5nc193ZWJfZAogRUFQSSBjb25zdCBjaGFyICAgICAgKmV3a19zZXR0aW5nc193ZWJfZGF0
YWJhc2VfcGF0aF9nZXQoKTsKIAogRUFQSSBFaW5hX0Jvb2wgICAgICAgIGV3a19zZXR0aW5nc19p
Y29uX2RhdGFiYXNlX3BhdGhfc2V0KGNvbnN0IGNoYXIgKnBhdGgpOwotRUFQSSBjaGFyICAgICAg
ICAgICAgKmV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZvaWQpOworRUFQSSBj
b25zdCBjaGFyICAgICAgKmV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZvaWQp
OwogRUFQSSBFaW5hX0Jvb2wgICAgICAgIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX2NsZWFy
KHZvaWQpOwogCiBFQVBJIGNhaXJvX3N1cmZhY2VfdCAqZXdrX3NldHRpbmdzX2ljb25fZGF0YWJh
c2VfaWNvbl9zdXJmYWNlX2dldChjb25zdCBjaGFyICp1cmwpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68915</attachid>
            <date>2010-09-27 08:57:55 -0700</date>
            <delta_ts>2010-10-04 20:13:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46613-20100928005753.patch</filename>
            <type>text/plain</type>
            <size>5038</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9lZmwvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9lZmwvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2ODM5MikKKysrIFdlYktpdC9lZmwvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDktMjcgIFJ5dWFuIENob2kgIDxyeXVhbi5j
aG9pQHNhbXN1bmcuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtFRkxdIHJlbW92ZSBzdHJkdXAgaW4gZXdrX3NldHRpbmcuY3BwIHVzaW5nIGVp
bmFfc3RyaW5nc2hhcmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTQ2NjEzCisKKyAgICAgICAgQWRkIHZhcmlhYmxlcyBzaGFyZWQgYnkgZWluYV9zdHJp
bmdzaGFyZSBhbmQgcmVtb3ZlIHN0cmR1cC4KKworICAgICAgICAqIGV3ay9ld2tfc2V0dGluZ3Mu
Y3BwOgorICAgICAgICAoZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX3NldCk6CisgICAg
ICAgIChld2tfc2V0dGluZ3Nfd2ViX2RhdGFiYXNlX3BhdGhfZ2V0KToKKyAgICAgICAgKGV3a19z
ZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfc2V0KToKKyAgICAgICAgKGV3a19zZXR0aW5nc19p
Y29uX2RhdGFiYXNlX3BhdGhfZ2V0KToKKyAgICAgICAgKiBld2svZXdrX3NldHRpbmdzLmg6CisK
IDIwMTAtMDktMjYgIEd5dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBBbnRvbmlvIEdvbWVzLgpJbmRleDogV2ViS2l0L2VmbC9ld2sv
ZXdrX3NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGlu
Z3MuY3BwCShyZXZpc2lvbiA2ODM5MikKKysrIFdlYktpdC9lZmwvZXdrL2V3a19zZXR0aW5ncy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDggQEAKICNpbmNsdWRlIDxsaWJzb3VwL3Nv
dXAuaD4KICNlbmRpZgogCitzdGF0aWMgY29uc3QgY2hhciogX2V3a19kZWZhdWx0X3dlYl9kYXRh
YmFzZV9wYXRoID0gMDsKK3N0YXRpYyBjb25zdCBjaGFyKiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0
aCA9IDA7CiBzdGF0aWMgdWludDY0X3QgX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9xdW90YSA9
IDEgKiAxMDI0ICogMTAyNDsKIAogLyoqCkBAIC02OSwyMSArNzEsMjcgQEAgdm9pZCBld2tfc2V0
dGluZ3Nfd2ViX2RhdGFiYXNlX3BhdGhfc2V0KAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBX
VEY6OlN0cmluZyBjb3JlUGF0aCA9IFdURjo6U3RyaW5nOjpmcm9tVVRGOChwYXRoKTsKICAgICBX
ZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIoKS5zZXREYXRhYmFzZURpcmVjdG9yeVBh
dGgoY29yZVBhdGgpOworICAgIGlmICghX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoKQor
ICAgICAgICBfZXdrX2RlZmF1bHRfd2ViX2RhdGFiYXNlX3BhdGggPSBlaW5hX3N0cmluZ3NoYXJl
X2FkZChjb3JlUGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICBlbHNlCisgICAgICAgIGVpbmFfc3Ry
aW5nc2hhcmVfcmVwbGFjZSgmX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoLCBjb3JlUGF0
aC51dGY4KCkuZGF0YSgpKTsKKwogI2VuZGlmCiB9CiAKIC8qKgogICogUmV0dXJuIGRpcmVjdG9y
eSBwYXRoIHdoZXJlIHdlYiBkYXRhYmFzZSBpcyBzdG9yZWQuCiAgKgotICogQHJldHVybiBuZXds
eSBhbGxvY2F0ZWQgc3RyaW5nIHdpdGggZGF0YWJhc2UgcGF0aC4gTm90ZSB0aGF0IHJldHVybiBt
dXN0IGJlCi0gKiBmcmVlZCB3aXRoIGZyZWUoKSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9m
IHRoZSBzdHJpbmcgZHVlIHJlZmVyZW5jZQotICogY291bnRpbmcuCisgKiBAcmV0dXJuIGRhdGFi
YXNlIHBhdGggb3IgTlVMTCBpZiBub25lIG9yIHdlYiBkYXRhYmFzZSBpcyBub3Qgc3VwcG9ydGVk
LgorICogICAgICAgICBUaGlzIGlzIGd1YXJhbnRlZWQgdG8gYmUgZWluYV9zdHJpbmdzaGFyZSwg
c28gd2hlbmV2ZXIgcG9zc2libGUKKyAqICAgICAgICAgc2F2ZSB5b3Vyc2VsZiBzb21lIGNwdSBj
eWNsZXMgYW5kIHVzZQorICogICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX3JlZigpIGluc3RlYWQg
b2YgZWluYV9zdHJpbmdzaGFyZV9hZGQoKSBvcgorICogICAgICAgICBzdHJkdXAoKS4KICAqLwog
Y29uc3QgY2hhciAqZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCgpCiB7CiAjaWYg
RU5BQkxFKERBVEFCQVNFKQotICAgIFdURjo6U3RyaW5nIHBhdGggPSBXZWJDb3JlOjpEYXRhYmFz
ZVRyYWNrZXI6OnRyYWNrZXIoKS5kYXRhYmFzZURpcmVjdG9yeVBhdGgoKTsKLSAgICByZXR1cm4g
c3RyZHVwKHBhdGgudXRmOCgpLmRhdGEoKSk7CisgICAgcmV0dXJuIF9ld2tfZGVmYXVsdF93ZWJf
ZGF0YWJhc2VfcGF0aDsKICNlbHNlCiAgICAgcmV0dXJuIDA7CiAjZW5kaWYKQEAgLTEyMiw5ICsx
MzAsMTcgQEAgRWluYV9Cb29sIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdAogCiAgICAg
ICAgIFdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5zZXRFbmFibGVkKHRydWUpOwogICAgICAgICBX
ZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+b3BlbihXVEY6OlN0cmluZzo6ZnJvbVVURjgoZGlyZWN0
b3J5KSk7CisgICAgICAgIGlmICghX2V3a19pY29uX2RhdGFiYXNlX3BhdGgpCisgICAgICAgICAg
ICBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IGVpbmFfc3RyaW5nc2hhcmVfYWRkKGRpcmVjdG9y
eSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVfcmVwbGFjZSgm
X2V3a19pY29uX2RhdGFiYXNlX3BhdGgsIGRpcmVjdG9yeSk7CiAgICAgfSBlbHNlIHsKICAgICAg
ICAgV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPnNldEVuYWJsZWQoZmFsc2UpOwogICAgICAgICBX
ZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+Y2xvc2UoKTsKKyAgICAgICAgaWYgKF9ld2tfaWNvbl9k
YXRhYmFzZV9wYXRoKSB7CisgICAgICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX2RlbChfZXdrX2lj
b25fZGF0YWJhc2VfcGF0aCk7CisgICAgICAgICAgICBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9
IDA7CisgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIEVJTkFfVFJVRTsKIH0KQEAgLTEzMiwy
MiArMTQ4LDIwIEBAIEVpbmFfQm9vbCBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXQKIC8q
KgogICogUmV0dXJuIGRpcmVjdG9yeSBwYXRoIHdoZXJlIGljb24gZGF0YWJhc2UgaXMgc3RvcmVk
LgogICoKLSAqIEByZXR1cm4gbmV3bHkgYWxsb2NhdGVkIHN0cmluZyB3aXRoIGRhdGFiYXNlIHBh
dGggb3IgQGMgTlVMTCBpZgotICogICAgICAgICBub25lIGlzIHNldCBvciBkYXRhYmFzZSBpcyBj
bG9zZWQuIE5vdGUgdGhhdCByZXR1cm4gbXVzdCBiZQotICogICAgICAgICBmcmVlZCB3aXRoIGZy
ZWUoKSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9mIHRoZSBzdHJpbmcKLSAqICAgICAgICAg
ZHVlIHJlZmVyZW5jZSBjb3VudGluZy4KKyAqIEByZXR1cm4gZGF0YWJhc2UgcGF0aCBvciBAYyBO
VUxMIGlmIG5vbmUgaXMgc2V0IG9yIGRhdGFiYXNlIGlzIGNsb3NlZC4KKyAqICAgICAgICAgVGhp
cyBpcyBndWFyYW50ZWVkIHRvIGJlIGVpbmFfc3RyaW5nc2hhcmUsIHNvIHdoZW5ldmVyIHBvc3Np
YmxlCisgKiAgICAgICAgIHNhdmUgeW91cnNlbGYgc29tZSBjcHUgY3ljbGVzIGFuZCB1c2UKKyAq
ICAgICAgICAgZWluYV9zdHJpbmdzaGFyZV9yZWYoKSBpbnN0ZWFkIG9mIGVpbmFfc3RyaW5nc2hh
cmVfYWRkKCkgb3IKKyAqICAgICAgICAgc3RyZHVwKCkuCiAgKi8KLWNoYXIqIGV3a19zZXR0aW5n
c19pY29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZvaWQpCitjb25zdCBjaGFyKiBld2tfc2V0dGluZ3Nf
aWNvbl9kYXRhYmFzZV9wYXRoX2dldCh2b2lkKQogewogICAgIGlmICghV2ViQ29yZTo6aWNvbkRh
dGFiYXNlKCktPmlzRW5hYmxlZCgpKQogICAgICAgICByZXR1cm4gMDsKICAgICBpZiAoIVdlYkNv
cmU6Omljb25EYXRhYmFzZSgpLT5pc09wZW4oKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBX
VEY6OlN0cmluZyBwYXRoID0gV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPmRhdGFiYXNlUGF0aCgp
OwotICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJu
IHN0cmR1cChwYXRoLnV0ZjgoKS5kYXRhKCkpOworICAgIHJldHVybiBfZXdrX2ljb25fZGF0YWJh
c2VfcGF0aDsKIH0KIAogLyoqCkluZGV4OiBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAkocmV2aXNpb24gNjgz
OTIpCisrKyBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAt
NDIsNyArNDIsNyBAQCBFQVBJIHZvaWQgICAgICAgICAgICAgZXdrX3NldHRpbmdzX3dlYl9kCiBF
QVBJIGNvbnN0IGNoYXIgICAgICAqZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCgp
OwogCiBFQVBJIEVpbmFfQm9vbCAgICAgICAgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0
aF9zZXQoY29uc3QgY2hhciAqcGF0aCk7Ci1FQVBJIGNoYXIgICAgICAgICAgICAqZXdrX3NldHRp
bmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7CitFQVBJIGNvbnN0IGNoYXIgICAgICAq
ZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7CiBFQVBJIEVpbmFfQm9v
bCAgICAgICAgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfY2xlYXIodm9pZCk7CiAKIEVBUEkg
Y2Fpcm9fc3VyZmFjZV90ICpld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9pY29uX3N1cmZhY2Vf
Z2V0KGNvbnN0IGNoYXIgKnVybCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69732</attachid>
            <date>2010-10-04 20:14:03 -0700</date>
            <delta_ts>2010-10-04 23:54:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46613-20101005121400.patch</filename>
            <type>text/plain</type>
            <size>5605</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9lZmwvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9lZmwvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2OTA1OSkKKysrIFdlYktpdC9lZmwvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTAtMTAtMDQgIFJ5dWFuIENob2kgIDxyeXVhbi5j
aG9pQHNhbXN1bmcuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFudG9uaW8gR29tZXMuCisK
KyAgICAgICAgW0VGTF0gUmVtb3ZlIHN0cmR1cCBpbiBld2tfc2V0dGluZy5jcHAgdXNpbmcgZWlu
YV9zdHJpbmdzaGFyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDY2MTMKKworICAgICAgICBBZGQgdmFyaWFibGVzIHNoYXJlZCBieSBlaW5hX3N0cmlu
Z3NoYXJlIGFuZCByZW1vdmUgc3RyZHVwLgorCisgICAgICAgICogZXdrL2V3a19tYWluLmNwcDoK
KyAgICAgICAgKF9ld2tfaW5pdF9ib2R5KToKKyAgICAgICAgKiBld2svZXdrX3NldHRpbmdzLmNw
cDoKKyAgICAgICAgKGV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2VfcGF0aF9zZXQpOgorICAgICAg
ICAoZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgIChld2tfc2V0
dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX3NldCk6CisgICAgICAgIChld2tfc2V0dGluZ3NfaWNv
bl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgICogZXdrL2V3a19zZXR0aW5ncy5oOgorCiAy
MDEwLTEwLTAxICBSYWZhZWwgQW50b2dub2xsaSAgPGFudG9nbm9sbGlAcHJvZnVzaW9uLm1vYmk+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCkluZGV4
OiBXZWJLaXQvZWZsL2V3ay9ld2tfbWFpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2VmbC9l
d2svZXdrX21haW4uY3BwCShyZXZpc2lvbiA2OTA1NikKKysrIFdlYktpdC9lZmwvZXdrL2V3a19t
YWluLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTc1LDYgKzE3NSw3IEBAIEVpbmFfQm9vbCBfZXdr
X2luaXRfYm9keSh2b2lkKQogCiAgICAgV1RGOjpTdHJpbmcgd2tkaXIgPSBXVEY6OlN0cmluZyho
b21lKSArICIvLndlYmtpdCI7CiAgICAgZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX3Nl
dCh3a2Rpci51dGY4KCkuZGF0YSgpKTsKKyAgICBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9w
YXRoX3NldCh3a2Rpci51dGY4KCkuZGF0YSgpKTsKIAogICAgIFdlYkNvcmU6OmNhY2hlU3RvcmFn
ZSgpLnNldENhY2hlRGlyZWN0b3J5KHdrZGlyKTsKIApJbmRleDogV2ViS2l0L2VmbC9ld2svZXdr
X3NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3Mu
Y3BwCShyZXZpc2lvbiA2OTA1NikKKysrIFdlYktpdC9lZmwvZXdrL2V3a19zZXR0aW5ncy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDggQEAKICNpbmNsdWRlIDxsaWJzb3VwL3NvdXAu
aD4KICNlbmRpZgogCitzdGF0aWMgY29uc3QgY2hhciogX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFz
ZV9wYXRoID0gMDsKK3N0YXRpYyBjb25zdCBjaGFyKiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9
IDA7CiBzdGF0aWMgdWludDY0X3QgX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9xdW90YSA9IDEg
KiAxMDI0ICogMTAyNDsKIAogLyoqCkBAIC02OSwyMSArNzEsMjcgQEAgdm9pZCBld2tfc2V0dGlu
Z3Nfd2ViX2RhdGFiYXNlX3BhdGhfc2V0KAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBXVEY6
OlN0cmluZyBjb3JlUGF0aCA9IFdURjo6U3RyaW5nOjpmcm9tVVRGOChwYXRoKTsKICAgICBXZWJD
b3JlOjpEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIoKS5zZXREYXRhYmFzZURpcmVjdG9yeVBhdGgo
Y29yZVBhdGgpOworICAgIGlmICghX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoKQorICAg
ICAgICBfZXdrX2RlZmF1bHRfd2ViX2RhdGFiYXNlX3BhdGggPSBlaW5hX3N0cmluZ3NoYXJlX2Fk
ZChjb3JlUGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICBlbHNlCisgICAgICAgIGVpbmFfc3RyaW5n
c2hhcmVfcmVwbGFjZSgmX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoLCBjb3JlUGF0aC51
dGY4KCkuZGF0YSgpKTsKKwogI2VuZGlmCiB9CiAKIC8qKgogICogUmV0dXJuIGRpcmVjdG9yeSBw
YXRoIHdoZXJlIHdlYiBkYXRhYmFzZSBpcyBzdG9yZWQuCiAgKgotICogQHJldHVybiBuZXdseSBh
bGxvY2F0ZWQgc3RyaW5nIHdpdGggZGF0YWJhc2UgcGF0aC4gTm90ZSB0aGF0IHJldHVybiBtdXN0
IGJlCi0gKiBmcmVlZCB3aXRoIGZyZWUoKSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9mIHRo
ZSBzdHJpbmcgZHVlIHJlZmVyZW5jZQotICogY291bnRpbmcuCisgKiBAcmV0dXJuIGRhdGFiYXNl
IHBhdGggb3IgTlVMTCBpZiBub25lIG9yIHdlYiBkYXRhYmFzZSBpcyBub3Qgc3VwcG9ydGVkLgor
ICogICAgICAgICBUaGlzIGlzIGd1YXJhbnRlZWQgdG8gYmUgZWluYV9zdHJpbmdzaGFyZSwgc28g
d2hlbmV2ZXIgcG9zc2libGUKKyAqICAgICAgICAgc2F2ZSB5b3Vyc2VsZiBzb21lIGNwdSBjeWNs
ZXMgYW5kIHVzZQorICogICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX3JlZigpIGluc3RlYWQgb2Yg
ZWluYV9zdHJpbmdzaGFyZV9hZGQoKSBvcgorICogICAgICAgICBzdHJkdXAoKS4KICAqLwogY29u
c3QgY2hhciAqZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCgpCiB7CiAjaWYgRU5B
QkxFKERBVEFCQVNFKQotICAgIFdURjo6U3RyaW5nIHBhdGggPSBXZWJDb3JlOjpEYXRhYmFzZVRy
YWNrZXI6OnRyYWNrZXIoKS5kYXRhYmFzZURpcmVjdG9yeVBhdGgoKTsKLSAgICByZXR1cm4gc3Ry
ZHVwKHBhdGgudXRmOCgpLmRhdGEoKSk7CisgICAgcmV0dXJuIF9ld2tfZGVmYXVsdF93ZWJfZGF0
YWJhc2VfcGF0aDsKICNlbHNlCiAgICAgcmV0dXJuIDA7CiAjZW5kaWYKQEAgLTEyMiw5ICsxMzAs
MTcgQEAgRWluYV9Cb29sIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdAogCiAgICAgICAg
IFdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5zZXRFbmFibGVkKHRydWUpOwogICAgICAgICBXZWJD
b3JlOjppY29uRGF0YWJhc2UoKS0+b3BlbihXVEY6OlN0cmluZzo6ZnJvbVVURjgoZGlyZWN0b3J5
KSk7CisgICAgICAgIGlmICghX2V3a19pY29uX2RhdGFiYXNlX3BhdGgpCisgICAgICAgICAgICBf
ZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IGVpbmFfc3RyaW5nc2hhcmVfYWRkKGRpcmVjdG9yeSk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVfcmVwbGFjZSgmX2V3
a19pY29uX2RhdGFiYXNlX3BhdGgsIGRpcmVjdG9yeSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAg
V2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPnNldEVuYWJsZWQoZmFsc2UpOwogICAgICAgICBXZWJD
b3JlOjppY29uRGF0YWJhc2UoKS0+Y2xvc2UoKTsKKyAgICAgICAgaWYgKF9ld2tfaWNvbl9kYXRh
YmFzZV9wYXRoKSB7CisgICAgICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX2RlbChfZXdrX2ljb25f
ZGF0YWJhc2VfcGF0aCk7CisgICAgICAgICAgICBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IDA7
CisgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIEVJTkFfVFJVRTsKIH0KQEAgLTEzMiwyMiAr
MTQ4LDIwIEBAIEVpbmFfQm9vbCBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXQKIC8qKgog
ICogUmV0dXJuIGRpcmVjdG9yeSBwYXRoIHdoZXJlIGljb24gZGF0YWJhc2UgaXMgc3RvcmVkLgog
ICoKLSAqIEByZXR1cm4gbmV3bHkgYWxsb2NhdGVkIHN0cmluZyB3aXRoIGRhdGFiYXNlIHBhdGgg
b3IgQGMgTlVMTCBpZgotICogICAgICAgICBub25lIGlzIHNldCBvciBkYXRhYmFzZSBpcyBjbG9z
ZWQuIE5vdGUgdGhhdCByZXR1cm4gbXVzdCBiZQotICogICAgICAgICBmcmVlZCB3aXRoIGZyZWUo
KSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9mIHRoZSBzdHJpbmcKLSAqICAgICAgICAgZHVl
IHJlZmVyZW5jZSBjb3VudGluZy4KKyAqIEByZXR1cm4gZGF0YWJhc2UgcGF0aCBvciBAYyBOVUxM
IGlmIG5vbmUgaXMgc2V0IG9yIGRhdGFiYXNlIGlzIGNsb3NlZC4KKyAqICAgICAgICAgVGhpcyBp
cyBndWFyYW50ZWVkIHRvIGJlIGVpbmFfc3RyaW5nc2hhcmUsIHNvIHdoZW5ldmVyIHBvc3NpYmxl
CisgKiAgICAgICAgIHNhdmUgeW91cnNlbGYgc29tZSBjcHUgY3ljbGVzIGFuZCB1c2UKKyAqICAg
ICAgICAgZWluYV9zdHJpbmdzaGFyZV9yZWYoKSBpbnN0ZWFkIG9mIGVpbmFfc3RyaW5nc2hhcmVf
YWRkKCkgb3IKKyAqICAgICAgICAgc3RyZHVwKCkuCiAgKi8KLWNoYXIqIGV3a19zZXR0aW5nc19p
Y29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZvaWQpCitjb25zdCBjaGFyKiBld2tfc2V0dGluZ3NfaWNv
bl9kYXRhYmFzZV9wYXRoX2dldCh2b2lkKQogewogICAgIGlmICghV2ViQ29yZTo6aWNvbkRhdGFi
YXNlKCktPmlzRW5hYmxlZCgpKQogICAgICAgICByZXR1cm4gMDsKICAgICBpZiAoIVdlYkNvcmU6
Omljb25EYXRhYmFzZSgpLT5pc09wZW4oKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBXVEY6
OlN0cmluZyBwYXRoID0gV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPmRhdGFiYXNlUGF0aCgpOwot
ICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0
cmR1cChwYXRoLnV0ZjgoKS5kYXRhKCkpOworICAgIHJldHVybiBfZXdrX2ljb25fZGF0YWJhc2Vf
cGF0aDsKIH0KIAogLyoqCkluZGV4OiBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAkocmV2aXNpb24gNjkwNTYp
CisrKyBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNDIs
NyArNDIsNyBAQCBFQVBJIHZvaWQgICAgICAgICAgICAgZXdrX3NldHRpbmdzX3dlYl9kCiBFQVBJ
IGNvbnN0IGNoYXIgICAgICAqZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCgpOwog
CiBFQVBJIEVpbmFfQm9vbCAgICAgICAgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9z
ZXQoY29uc3QgY2hhciAqcGF0aCk7Ci1FQVBJIGNoYXIgICAgICAgICAgICAqZXdrX3NldHRpbmdz
X2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7CitFQVBJIGNvbnN0IGNoYXIgICAgICAqZXdr
X3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7CiBFQVBJIEVpbmFfQm9vbCAg
ICAgICAgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfY2xlYXIodm9pZCk7CiAKIEVBUEkgY2Fp
cm9fc3VyZmFjZV90ICpld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9pY29uX3N1cmZhY2VfZ2V0
KGNvbnN0IGNoYXIgKnVybCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69760</attachid>
            <date>2010-10-04 23:54:37 -0700</date>
            <delta_ts>2010-10-05 08:17:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46613-20101005155436.patch</filename>
            <type>text/plain</type>
            <size>5798</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9lZmwvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9lZmwvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2OTA4NSkKKysrIFdlYktpdC9lZmwvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTAtMTAtMDQgIFJ5dWFuIENob2kgIDxyeXVhbi5j
aG9pQHNhbXN1bmcuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFudG9uaW8gR29tZXMuCisK
KyAgICAgICAgW0VGTF0gUmVtb3ZlIHN0cmR1cCBpbiBld2tfc2V0dGluZy5jcHAgdXNpbmcgZWlu
YV9zdHJpbmdzaGFyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDY2MTMKKworICAgICAgICBBZGQgdmFyaWFibGVzIHNoYXJlZCBieSBlaW5hX3N0cmlu
Z3NoYXJlIGFuZCByZW1vdmUgc3RyZHVwLgorCisgICAgICAgICogZXdrL2V3a19tYWluLmNwcDoK
KyAgICAgICAgKF9ld2tfaW5pdF9ib2R5KToKKyAgICAgICAgKiBld2svZXdrX3NldHRpbmdzLmNw
cDoKKyAgICAgICAgKGV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2VfcGF0aF9zZXQpOgorICAgICAg
ICAoZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgIChld2tfc2V0
dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX3NldCk6CisgICAgICAgIChld2tfc2V0dGluZ3NfaWNv
bl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgICogZXdrL2V3a19zZXR0aW5ncy5oOgorCiAy
MDEwLTEwLTA0ICBHeXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCkluZGV4OiBXZWJL
aXQvZWZsL2V3ay9ld2tfbWFpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2VmbC9ld2svZXdr
X21haW4uY3BwCShyZXZpc2lvbiA2OTA3NCkKKysrIFdlYktpdC9lZmwvZXdrL2V3a19tYWluLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsNyBAQAogCiAjaW5jbHVkZSA8RWNvcmUuaD4K
ICNpbmNsdWRlIDxFY29yZV9FdmFzLmg+CisjaW5jbHVkZSA8RWNvcmVfRmlsZS5oPgogI2luY2x1
ZGUgPEVkamUuaD4KICNpbmNsdWRlIDxFaW5hLmg+CiAjaW5jbHVkZSA8RXZhcy5oPgpAQCAtMTc0
LDcgKzE3NSw5IEBAIEVpbmFfQm9vbCBfZXdrX2luaXRfYm9keSh2b2lkKQogICAgIH0KIAogICAg
IFdURjo6U3RyaW5nIHdrZGlyID0gV1RGOjpTdHJpbmcoaG9tZSkgKyAiLy53ZWJraXQiOworICAg
IGVjb3JlX2ZpbGVfbWtwYXRoKHdrZGlyLnV0ZjgoKS5kYXRhKCkpOwogICAgIGV3a19zZXR0aW5n
c193ZWJfZGF0YWJhc2VfcGF0aF9zZXQod2tkaXIudXRmOCgpLmRhdGEoKSk7CisgICAgZXdrX3Nl
dHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9zZXQod2tkaXIudXRmOCgpLmRhdGEoKSk7CiAKICAg
ICBXZWJDb3JlOjpjYWNoZVN0b3JhZ2UoKS5zZXRDYWNoZURpcmVjdG9yeSh3a2Rpcik7CiAKSW5k
ZXg6IFdlYktpdC9lZmwvZXdrL2V3a19zZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
L2VmbC9ld2svZXdrX3NldHRpbmdzLmNwcAkocmV2aXNpb24gNjkwNzQpCisrKyBXZWJLaXQvZWZs
L2V3ay9ld2tfc2V0dGluZ3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw4IEBACiAj
aW5jbHVkZSA8bGlic291cC9zb3VwLmg+CiAjZW5kaWYKIAorc3RhdGljIGNvbnN0IGNoYXIqIF9l
d2tfZGVmYXVsdF93ZWJfZGF0YWJhc2VfcGF0aCA9IDA7CitzdGF0aWMgY29uc3QgY2hhciogX2V3
a19pY29uX2RhdGFiYXNlX3BhdGggPSAwOwogc3RhdGljIHVpbnQ2NF90IF9ld2tfZGVmYXVsdF93
ZWJfZGF0YWJhc2VfcXVvdGEgPSAxICogMTAyNCAqIDEwMjQ7CiAKIC8qKgpAQCAtNjksMjEgKzcx
LDI3IEBAIHZvaWQgZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX3NldCgKICNpZiBFTkFC
TEUoREFUQUJBU0UpCiAgICAgV1RGOjpTdHJpbmcgY29yZVBhdGggPSBXVEY6OlN0cmluZzo6ZnJv
bVVURjgocGF0aCk7CiAgICAgV2ViQ29yZTo6RGF0YWJhc2VUcmFja2VyOjp0cmFja2VyKCkuc2V0
RGF0YWJhc2VEaXJlY3RvcnlQYXRoKGNvcmVQYXRoKTsKKyAgICBpZiAoIV9ld2tfZGVmYXVsdF93
ZWJfZGF0YWJhc2VfcGF0aCkKKyAgICAgICAgX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRo
ID0gZWluYV9zdHJpbmdzaGFyZV9hZGQoY29yZVBhdGgudXRmOCgpLmRhdGEoKSk7CisgICAgZWxz
ZQorICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX3JlcGxhY2UoJl9ld2tfZGVmYXVsdF93ZWJfZGF0
YWJhc2VfcGF0aCwgY29yZVBhdGgudXRmOCgpLmRhdGEoKSk7CisKICNlbmRpZgogfQogCiAvKioK
ICAqIFJldHVybiBkaXJlY3RvcnkgcGF0aCB3aGVyZSB3ZWIgZGF0YWJhc2UgaXMgc3RvcmVkLgog
ICoKLSAqIEByZXR1cm4gbmV3bHkgYWxsb2NhdGVkIHN0cmluZyB3aXRoIGRhdGFiYXNlIHBhdGgu
IE5vdGUgdGhhdCByZXR1cm4gbXVzdCBiZQotICogZnJlZWQgd2l0aCBmcmVlKCkgYXMgaXQncyBh
IHN0cmR1cCgpZWQgY29weSBvZiB0aGUgc3RyaW5nIGR1ZSByZWZlcmVuY2UKLSAqIGNvdW50aW5n
LgorICogQHJldHVybiBkYXRhYmFzZSBwYXRoIG9yIE5VTEwgaWYgbm9uZSBvciB3ZWIgZGF0YWJh
c2UgaXMgbm90IHN1cHBvcnRlZC4KKyAqICAgICAgICAgVGhpcyBpcyBndWFyYW50ZWVkIHRvIGJl
IGVpbmFfc3RyaW5nc2hhcmUsIHNvIHdoZW5ldmVyIHBvc3NpYmxlCisgKiAgICAgICAgIHNhdmUg
eW91cnNlbGYgc29tZSBjcHUgY3ljbGVzIGFuZCB1c2UKKyAqICAgICAgICAgZWluYV9zdHJpbmdz
aGFyZV9yZWYoKSBpbnN0ZWFkIG9mIGVpbmFfc3RyaW5nc2hhcmVfYWRkKCkgb3IKKyAqICAgICAg
ICAgc3RyZHVwKCkuCiAgKi8KIGNvbnN0IGNoYXIgKmV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2Vf
cGF0aF9nZXQoKQogewogI2lmIEVOQUJMRShEQVRBQkFTRSkKLSAgICBXVEY6OlN0cmluZyBwYXRo
ID0gV2ViQ29yZTo6RGF0YWJhc2VUcmFja2VyOjp0cmFja2VyKCkuZGF0YWJhc2VEaXJlY3RvcnlQ
YXRoKCk7Ci0gICAgcmV0dXJuIHN0cmR1cChwYXRoLnV0ZjgoKS5kYXRhKCkpOworICAgIHJldHVy
biBfZXdrX2RlZmF1bHRfd2ViX2RhdGFiYXNlX3BhdGg7CiAjZWxzZQogICAgIHJldHVybiAwOwog
I2VuZGlmCkBAIC0xMjIsOSArMTMwLDE3IEBAIEVpbmFfQm9vbCBld2tfc2V0dGluZ3NfaWNvbl9k
YXRhYmFzZV9wYXQKIAogICAgICAgICBXZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+c2V0RW5hYmxl
ZCh0cnVlKTsKICAgICAgICAgV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPm9wZW4oV1RGOjpTdHJp
bmc6OmZyb21VVEY4KGRpcmVjdG9yeSkpOworICAgICAgICBpZiAoIV9ld2tfaWNvbl9kYXRhYmFz
ZV9wYXRoKQorICAgICAgICAgICAgX2V3a19pY29uX2RhdGFiYXNlX3BhdGggPSBlaW5hX3N0cmlu
Z3NoYXJlX2FkZChkaXJlY3RvcnkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBlaW5hX3N0
cmluZ3NoYXJlX3JlcGxhY2UoJl9ld2tfaWNvbl9kYXRhYmFzZV9wYXRoLCBkaXJlY3RvcnkpOwog
ICAgIH0gZWxzZSB7CiAgICAgICAgIFdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5zZXRFbmFibGVk
KGZhbHNlKTsKICAgICAgICAgV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPmNsb3NlKCk7CisgICAg
ICAgIGlmIChfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCkgeworICAgICAgICAgICAgZWluYV9zdHJp
bmdzaGFyZV9kZWwoX2V3a19pY29uX2RhdGFiYXNlX3BhdGgpOworICAgICAgICAgICAgX2V3a19p
Y29uX2RhdGFiYXNlX3BhdGggPSAwOworICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiBFSU5B
X1RSVUU7CiB9CkBAIC0xMzIsMjIgKzE0OCwyMCBAQCBFaW5hX0Jvb2wgZXdrX3NldHRpbmdzX2lj
b25fZGF0YWJhc2VfcGF0CiAvKioKICAqIFJldHVybiBkaXJlY3RvcnkgcGF0aCB3aGVyZSBpY29u
IGRhdGFiYXNlIGlzIHN0b3JlZC4KICAqCi0gKiBAcmV0dXJuIG5ld2x5IGFsbG9jYXRlZCBzdHJp
bmcgd2l0aCBkYXRhYmFzZSBwYXRoIG9yIEBjIE5VTEwgaWYKLSAqICAgICAgICAgbm9uZSBpcyBz
ZXQgb3IgZGF0YWJhc2UgaXMgY2xvc2VkLiBOb3RlIHRoYXQgcmV0dXJuIG11c3QgYmUKLSAqICAg
ICAgICAgZnJlZWQgd2l0aCBmcmVlKCkgYXMgaXQncyBhIHN0cmR1cCgpZWQgY29weSBvZiB0aGUg
c3RyaW5nCi0gKiAgICAgICAgIGR1ZSByZWZlcmVuY2UgY291bnRpbmcuCisgKiBAcmV0dXJuIGRh
dGFiYXNlIHBhdGggb3IgQGMgTlVMTCBpZiBub25lIGlzIHNldCBvciBkYXRhYmFzZSBpcyBjbG9z
ZWQuCisgKiAgICAgICAgIFRoaXMgaXMgZ3VhcmFudGVlZCB0byBiZSBlaW5hX3N0cmluZ3NoYXJl
LCBzbyB3aGVuZXZlciBwb3NzaWJsZQorICogICAgICAgICBzYXZlIHlvdXJzZWxmIHNvbWUgY3B1
IGN5Y2xlcyBhbmQgdXNlCisgKiAgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVfcmVmKCkgaW5zdGVh
ZCBvZiBlaW5hX3N0cmluZ3NoYXJlX2FkZCgpIG9yCisgKiAgICAgICAgIHN0cmR1cCgpLgogICov
Ci1jaGFyKiBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX2dldCh2b2lkKQorY29uc3Qg
Y2hhciogZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCkKIHsKICAgICBp
ZiAoIVdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5pc0VuYWJsZWQoKSkKICAgICAgICAgcmV0dXJu
IDA7CiAgICAgaWYgKCFXZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+aXNPcGVuKCkpCiAgICAgICAg
IHJldHVybiAwOwogCi0gICAgV1RGOjpTdHJpbmcgcGF0aCA9IFdlYkNvcmU6Omljb25EYXRhYmFz
ZSgpLT5kYXRhYmFzZVBhdGgoKTsKLSAgICBpZiAocGF0aC5pc0VtcHR5KCkpCi0gICAgICAgIHJl
dHVybiAwOwotICAgIHJldHVybiBzdHJkdXAocGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICByZXR1
cm4gX2V3a19pY29uX2RhdGFiYXNlX3BhdGg7CiB9CiAKIC8qKgpJbmRleDogV2ViS2l0L2VmbC9l
d2svZXdrX3NldHRpbmdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2VmbC9ld2svZXdrX3NldHRp
bmdzLmgJKHJldmlzaW9uIDY5MDc0KQorKysgV2ViS2l0L2VmbC9ld2svZXdrX3NldHRpbmdzLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQyLDcgKzQyLDcgQEAgRUFQSSB2b2lkICAgICAgICAgICAgIGV3
a19zZXR0aW5nc193ZWJfZAogRUFQSSBjb25zdCBjaGFyICAgICAgKmV3a19zZXR0aW5nc193ZWJf
ZGF0YWJhc2VfcGF0aF9nZXQoKTsKIAogRUFQSSBFaW5hX0Jvb2wgICAgICAgIGV3a19zZXR0aW5n
c19pY29uX2RhdGFiYXNlX3BhdGhfc2V0KGNvbnN0IGNoYXIgKnBhdGgpOwotRUFQSSBjaGFyICAg
ICAgICAgICAgKmV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZvaWQpOworRUFQ
SSBjb25zdCBjaGFyICAgICAgKmV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZv
aWQpOwogRUFQSSBFaW5hX0Jvb2wgICAgICAgIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX2Ns
ZWFyKHZvaWQpOwogCiBFQVBJIGNhaXJvX3N1cmZhY2VfdCAqZXdrX3NldHRpbmdzX2ljb25fZGF0
YWJhc2VfaWNvbl9zdXJmYWNlX2dldChjb25zdCBjaGFyICp1cmwpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69786</attachid>
            <date>2010-10-05 08:17:26 -0700</date>
            <delta_ts>2010-10-05 08:24:42 -0700</delta_ts>
            <desc>patch_without_folder_creation</desc>
            <filename>bug-46613-20101006001725.patch</filename>
            <type>text/plain</type>
            <size>5746</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9lZmwvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9lZmwvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2OTEwOCkKKysrIFdlYktpdC9lZmwvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTAtMTAtMDUgIFJ5dWFuIENob2kgIDxyeXVhbi5j
aG9pQHNhbXN1bmcuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFudG9uaW8gR29tZXMuCisK
KyAgICAgICAgW0VGTF0gUmVtb3ZlIHN0cmR1cCBpbiBld2tfc2V0dGluZy5jcHAgdXNpbmcgZWlu
YV9zdHJpbmdzaGFyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDY2MTMKKworICAgICAgICBBZGQgdmFyaWFibGVzIHNoYXJlZCBieSBlaW5hX3N0cmlu
Z3NoYXJlIGFuZCByZW1vdmUgc3RyZHVwLgorCisgICAgICAgICogZXdrL2V3a19tYWluLmNwcDoK
KyAgICAgICAgKF9ld2tfaW5pdF9ib2R5KToKKyAgICAgICAgKiBld2svZXdrX3NldHRpbmdzLmNw
cDoKKyAgICAgICAgKGV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2VfcGF0aF9zZXQpOgorICAgICAg
ICAoZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgIChld2tfc2V0
dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX3NldCk6CisgICAgICAgIChld2tfc2V0dGluZ3NfaWNv
bl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgICogZXdrL2V3a19zZXR0aW5ncy5oOgorCiAy
MDEwLTEwLTA0ICBHeXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCkluZGV4OiBXZWJL
aXQvZWZsL2V3ay9ld2tfbWFpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2VmbC9ld2svZXdr
X21haW4uY3BwCShyZXZpc2lvbiA2OTEwNykKKysrIFdlYktpdC9lZmwvZXdrL2V3a19tYWluLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsNyBAQAogCiAjaW5jbHVkZSA8RWNvcmUuaD4K
ICNpbmNsdWRlIDxFY29yZV9FdmFzLmg+CisjaW5jbHVkZSA8RWNvcmVfRmlsZS5oPgogI2luY2x1
ZGUgPEVkamUuaD4KICNpbmNsdWRlIDxFaW5hLmg+CiAjaW5jbHVkZSA8RXZhcy5oPgpAQCAtMTc1
LDYgKzE3Niw3IEBAIEVpbmFfQm9vbCBfZXdrX2luaXRfYm9keSh2b2lkKQogCiAgICAgV1RGOjpT
dHJpbmcgd2tkaXIgPSBXVEY6OlN0cmluZyhob21lKSArICIvLndlYmtpdCI7CiAgICAgZXdrX3Nl
dHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX3NldCh3a2Rpci51dGY4KCkuZGF0YSgpKTsKKyAgICBl
d2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX3NldCh3a2Rpci51dGY4KCkuZGF0YSgpKTsK
IAogICAgIFdlYkNvcmU6OmNhY2hlU3RvcmFnZSgpLnNldENhY2hlRGlyZWN0b3J5KHdrZGlyKTsK
IApJbmRleDogV2ViS2l0L2VmbC9ld2svZXdrX3NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuY3BwCShyZXZpc2lvbiA2OTEwNykKKysrIFdlYktp
dC9lZmwvZXdrL2V3a19zZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDgg
QEAKICNpbmNsdWRlIDxsaWJzb3VwL3NvdXAuaD4KICNlbmRpZgogCitzdGF0aWMgY29uc3QgY2hh
ciogX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoID0gMDsKK3N0YXRpYyBjb25zdCBjaGFy
KiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IDA7CiBzdGF0aWMgdWludDY0X3QgX2V3a19kZWZh
dWx0X3dlYl9kYXRhYmFzZV9xdW90YSA9IDEgKiAxMDI0ICogMTAyNDsKIAogLyoqCkBAIC02OSwy
MSArNzEsMjcgQEAgdm9pZCBld2tfc2V0dGluZ3Nfd2ViX2RhdGFiYXNlX3BhdGhfc2V0KAogI2lm
IEVOQUJMRShEQVRBQkFTRSkKICAgICBXVEY6OlN0cmluZyBjb3JlUGF0aCA9IFdURjo6U3RyaW5n
Ojpmcm9tVVRGOChwYXRoKTsKICAgICBXZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIo
KS5zZXREYXRhYmFzZURpcmVjdG9yeVBhdGgoY29yZVBhdGgpOworICAgIGlmICghX2V3a19kZWZh
dWx0X3dlYl9kYXRhYmFzZV9wYXRoKQorICAgICAgICBfZXdrX2RlZmF1bHRfd2ViX2RhdGFiYXNl
X3BhdGggPSBlaW5hX3N0cmluZ3NoYXJlX2FkZChjb3JlUGF0aC51dGY4KCkuZGF0YSgpKTsKKyAg
ICBlbHNlCisgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVfcmVwbGFjZSgmX2V3a19kZWZhdWx0X3dl
Yl9kYXRhYmFzZV9wYXRoLCBjb3JlUGF0aC51dGY4KCkuZGF0YSgpKTsKKwogI2VuZGlmCiB9CiAK
IC8qKgogICogUmV0dXJuIGRpcmVjdG9yeSBwYXRoIHdoZXJlIHdlYiBkYXRhYmFzZSBpcyBzdG9y
ZWQuCiAgKgotICogQHJldHVybiBuZXdseSBhbGxvY2F0ZWQgc3RyaW5nIHdpdGggZGF0YWJhc2Ug
cGF0aC4gTm90ZSB0aGF0IHJldHVybiBtdXN0IGJlCi0gKiBmcmVlZCB3aXRoIGZyZWUoKSBhcyBp
dCdzIGEgc3RyZHVwKCllZCBjb3B5IG9mIHRoZSBzdHJpbmcgZHVlIHJlZmVyZW5jZQotICogY291
bnRpbmcuCisgKiBAcmV0dXJuIGRhdGFiYXNlIHBhdGggb3IgTlVMTCBpZiBub25lIG9yIHdlYiBk
YXRhYmFzZSBpcyBub3Qgc3VwcG9ydGVkLgorICogICAgICAgICBUaGlzIGlzIGd1YXJhbnRlZWQg
dG8gYmUgZWluYV9zdHJpbmdzaGFyZSwgc28gd2hlbmV2ZXIgcG9zc2libGUKKyAqICAgICAgICAg
c2F2ZSB5b3Vyc2VsZiBzb21lIGNwdSBjeWNsZXMgYW5kIHVzZQorICogICAgICAgICBlaW5hX3N0
cmluZ3NoYXJlX3JlZigpIGluc3RlYWQgb2YgZWluYV9zdHJpbmdzaGFyZV9hZGQoKSBvcgorICog
ICAgICAgICBzdHJkdXAoKS4KICAqLwogY29uc3QgY2hhciAqZXdrX3NldHRpbmdzX3dlYl9kYXRh
YmFzZV9wYXRoX2dldCgpCiB7CiAjaWYgRU5BQkxFKERBVEFCQVNFKQotICAgIFdURjo6U3RyaW5n
IHBhdGggPSBXZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIoKS5kYXRhYmFzZURpcmVj
dG9yeVBhdGgoKTsKLSAgICByZXR1cm4gc3RyZHVwKHBhdGgudXRmOCgpLmRhdGEoKSk7CisgICAg
cmV0dXJuIF9ld2tfZGVmYXVsdF93ZWJfZGF0YWJhc2VfcGF0aDsKICNlbHNlCiAgICAgcmV0dXJu
IDA7CiAjZW5kaWYKQEAgLTEyMiw5ICsxMzAsMTcgQEAgRWluYV9Cb29sIGV3a19zZXR0aW5nc19p
Y29uX2RhdGFiYXNlX3BhdAogCiAgICAgICAgIFdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5zZXRF
bmFibGVkKHRydWUpOwogICAgICAgICBXZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+b3BlbihXVEY6
OlN0cmluZzo6ZnJvbVVURjgoZGlyZWN0b3J5KSk7CisgICAgICAgIGlmICghX2V3a19pY29uX2Rh
dGFiYXNlX3BhdGgpCisgICAgICAgICAgICBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IGVpbmFf
c3RyaW5nc2hhcmVfYWRkKGRpcmVjdG9yeSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGVp
bmFfc3RyaW5nc2hhcmVfcmVwbGFjZSgmX2V3a19pY29uX2RhdGFiYXNlX3BhdGgsIGRpcmVjdG9y
eSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPnNldEVu
YWJsZWQoZmFsc2UpOwogICAgICAgICBXZWJDb3JlOjppY29uRGF0YWJhc2UoKS0+Y2xvc2UoKTsK
KyAgICAgICAgaWYgKF9ld2tfaWNvbl9kYXRhYmFzZV9wYXRoKSB7CisgICAgICAgICAgICBlaW5h
X3N0cmluZ3NoYXJlX2RlbChfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCk7CisgICAgICAgICAgICBf
ZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IDA7CisgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJu
IEVJTkFfVFJVRTsKIH0KQEAgLTEzMiwyMiArMTQ4LDIwIEBAIEVpbmFfQm9vbCBld2tfc2V0dGlu
Z3NfaWNvbl9kYXRhYmFzZV9wYXQKIC8qKgogICogUmV0dXJuIGRpcmVjdG9yeSBwYXRoIHdoZXJl
IGljb24gZGF0YWJhc2UgaXMgc3RvcmVkLgogICoKLSAqIEByZXR1cm4gbmV3bHkgYWxsb2NhdGVk
IHN0cmluZyB3aXRoIGRhdGFiYXNlIHBhdGggb3IgQGMgTlVMTCBpZgotICogICAgICAgICBub25l
IGlzIHNldCBvciBkYXRhYmFzZSBpcyBjbG9zZWQuIE5vdGUgdGhhdCByZXR1cm4gbXVzdCBiZQot
ICogICAgICAgICBmcmVlZCB3aXRoIGZyZWUoKSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9m
IHRoZSBzdHJpbmcKLSAqICAgICAgICAgZHVlIHJlZmVyZW5jZSBjb3VudGluZy4KKyAqIEByZXR1
cm4gZGF0YWJhc2UgcGF0aCBvciBAYyBOVUxMIGlmIG5vbmUgaXMgc2V0IG9yIGRhdGFiYXNlIGlz
IGNsb3NlZC4KKyAqICAgICAgICAgVGhpcyBpcyBndWFyYW50ZWVkIHRvIGJlIGVpbmFfc3RyaW5n
c2hhcmUsIHNvIHdoZW5ldmVyIHBvc3NpYmxlCisgKiAgICAgICAgIHNhdmUgeW91cnNlbGYgc29t
ZSBjcHUgY3ljbGVzIGFuZCB1c2UKKyAqICAgICAgICAgZWluYV9zdHJpbmdzaGFyZV9yZWYoKSBp
bnN0ZWFkIG9mIGVpbmFfc3RyaW5nc2hhcmVfYWRkKCkgb3IKKyAqICAgICAgICAgc3RyZHVwKCku
CiAgKi8KLWNoYXIqIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdGhfZ2V0KHZvaWQpCitj
b25zdCBjaGFyKiBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX2dldCh2b2lkKQogewog
ICAgIGlmICghV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPmlzRW5hYmxlZCgpKQogICAgICAgICBy
ZXR1cm4gMDsKICAgICBpZiAoIVdlYkNvcmU6Omljb25EYXRhYmFzZSgpLT5pc09wZW4oKSkKICAg
ICAgICAgcmV0dXJuIDA7CiAKLSAgICBXVEY6OlN0cmluZyBwYXRoID0gV2ViQ29yZTo6aWNvbkRh
dGFiYXNlKCktPmRhdGFiYXNlUGF0aCgpOwotICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKLSAgICAg
ICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0cmR1cChwYXRoLnV0ZjgoKS5kYXRhKCkpOworICAg
IHJldHVybiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aDsKIH0KIAogLyoqCkluZGV4OiBXZWJLaXQv
ZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tf
c2V0dGluZ3MuaAkocmV2aXNpb24gNjkxMDcpCisrKyBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGlu
Z3MuaAkod29ya2luZyBjb3B5KQpAQCAtNDIsNyArNDIsNyBAQCBFQVBJIHZvaWQgICAgICAgICAg
ICAgZXdrX3NldHRpbmdzX3dlYl9kCiBFQVBJIGNvbnN0IGNoYXIgICAgICAqZXdrX3NldHRpbmdz
X3dlYl9kYXRhYmFzZV9wYXRoX2dldCgpOwogCiBFQVBJIEVpbmFfQm9vbCAgICAgICAgZXdrX3Nl
dHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9zZXQoY29uc3QgY2hhciAqcGF0aCk7Ci1FQVBJIGNo
YXIgICAgICAgICAgICAqZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7
CitFQVBJIGNvbnN0IGNoYXIgICAgICAqZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9n
ZXQodm9pZCk7CiBFQVBJIEVpbmFfQm9vbCAgICAgICAgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJh
c2VfY2xlYXIodm9pZCk7CiAKIEVBUEkgY2Fpcm9fc3VyZmFjZV90ICpld2tfc2V0dGluZ3NfaWNv
bl9kYXRhYmFzZV9pY29uX3N1cmZhY2VfZ2V0KGNvbnN0IGNoYXIgKnVybCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69788</attachid>
            <date>2010-10-05 08:24:48 -0700</date>
            <delta_ts>2010-10-05 09:00:36 -0700</delta_ts>
            <desc>patch_without_folder_creation</desc>
            <filename>bug-46613-20101006002448.patch</filename>
            <type>text/plain</type>
            <size>5599</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9lZmwvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9lZmwvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2OTEwOCkKKysrIFdlYktpdC9lZmwvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTAtMTAtMDUgIFJ5dWFuIENob2kgIDxyeXVhbi5j
aG9pQHNhbXN1bmcuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFudG9uaW8gR29tZXMuCisK
KyAgICAgICAgW0VGTF0gUmVtb3ZlIHN0cmR1cCBpbiBld2tfc2V0dGluZy5jcHAgdXNpbmcgZWlu
YV9zdHJpbmdzaGFyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDY2MTMKKworICAgICAgICBBZGQgdmFyaWFibGVzIHNoYXJlZCBieSBlaW5hX3N0cmlu
Z3NoYXJlIGFuZCByZW1vdmUgc3RyZHVwLgorCisgICAgICAgICogZXdrL2V3a19tYWluLmNwcDoK
KyAgICAgICAgKF9ld2tfaW5pdF9ib2R5KToKKyAgICAgICAgKiBld2svZXdrX3NldHRpbmdzLmNw
cDoKKyAgICAgICAgKGV3a19zZXR0aW5nc193ZWJfZGF0YWJhc2VfcGF0aF9zZXQpOgorICAgICAg
ICAoZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgIChld2tfc2V0
dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX3NldCk6CisgICAgICAgIChld2tfc2V0dGluZ3NfaWNv
bl9kYXRhYmFzZV9wYXRoX2dldCk6CisgICAgICAgICogZXdrL2V3a19zZXR0aW5ncy5oOgorCiAy
MDEwLTEwLTA0ICBHeXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4uCkluZGV4OiBXZWJL
aXQvZWZsL2V3ay9ld2tfbWFpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2VmbC9ld2svZXdr
X21haW4uY3BwCShyZXZpc2lvbiA2OTEwNykKKysrIFdlYktpdC9lZmwvZXdrL2V3a19tYWluLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMTc1LDYgKzE3NSw3IEBAIEVpbmFfQm9vbCBfZXdrX2luaXRf
Ym9keSh2b2lkKQogCiAgICAgV1RGOjpTdHJpbmcgd2tkaXIgPSBXVEY6OlN0cmluZyhob21lKSAr
ICIvLndlYmtpdCI7CiAgICAgZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX3NldCh3a2Rp
ci51dGY4KCkuZGF0YSgpKTsKKyAgICBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXRoX3Nl
dCh3a2Rpci51dGY4KCkuZGF0YSgpKTsKIAogICAgIFdlYkNvcmU6OmNhY2hlU3RvcmFnZSgpLnNl
dENhY2hlRGlyZWN0b3J5KHdrZGlyKTsKIApJbmRleDogV2ViS2l0L2VmbC9ld2svZXdrX3NldHRp
bmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuY3BwCShy
ZXZpc2lvbiA2OTEwNykKKysrIFdlYktpdC9lZmwvZXdrL2V3a19zZXR0aW5ncy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTQ0LDYgKzQ0LDggQEAKICNpbmNsdWRlIDxsaWJzb3VwL3NvdXAuaD4KICNl
bmRpZgogCitzdGF0aWMgY29uc3QgY2hhciogX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRo
ID0gMDsKK3N0YXRpYyBjb25zdCBjaGFyKiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IDA7CiBz
dGF0aWMgdWludDY0X3QgX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9xdW90YSA9IDEgKiAxMDI0
ICogMTAyNDsKIAogLyoqCkBAIC02OSwyMSArNzEsMjcgQEAgdm9pZCBld2tfc2V0dGluZ3Nfd2Vi
X2RhdGFiYXNlX3BhdGhfc2V0KAogI2lmIEVOQUJMRShEQVRBQkFTRSkKICAgICBXVEY6OlN0cmlu
ZyBjb3JlUGF0aCA9IFdURjo6U3RyaW5nOjpmcm9tVVRGOChwYXRoKTsKICAgICBXZWJDb3JlOjpE
YXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIoKS5zZXREYXRhYmFzZURpcmVjdG9yeVBhdGgoY29yZVBh
dGgpOworICAgIGlmICghX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoKQorICAgICAgICBf
ZXdrX2RlZmF1bHRfd2ViX2RhdGFiYXNlX3BhdGggPSBlaW5hX3N0cmluZ3NoYXJlX2FkZChjb3Jl
UGF0aC51dGY4KCkuZGF0YSgpKTsKKyAgICBlbHNlCisgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVf
cmVwbGFjZSgmX2V3a19kZWZhdWx0X3dlYl9kYXRhYmFzZV9wYXRoLCBjb3JlUGF0aC51dGY4KCku
ZGF0YSgpKTsKKwogI2VuZGlmCiB9CiAKIC8qKgogICogUmV0dXJuIGRpcmVjdG9yeSBwYXRoIHdo
ZXJlIHdlYiBkYXRhYmFzZSBpcyBzdG9yZWQuCiAgKgotICogQHJldHVybiBuZXdseSBhbGxvY2F0
ZWQgc3RyaW5nIHdpdGggZGF0YWJhc2UgcGF0aC4gTm90ZSB0aGF0IHJldHVybiBtdXN0IGJlCi0g
KiBmcmVlZCB3aXRoIGZyZWUoKSBhcyBpdCdzIGEgc3RyZHVwKCllZCBjb3B5IG9mIHRoZSBzdHJp
bmcgZHVlIHJlZmVyZW5jZQotICogY291bnRpbmcuCisgKiBAcmV0dXJuIGRhdGFiYXNlIHBhdGgg
b3IgTlVMTCBpZiBub25lIG9yIHdlYiBkYXRhYmFzZSBpcyBub3Qgc3VwcG9ydGVkLgorICogICAg
ICAgICBUaGlzIGlzIGd1YXJhbnRlZWQgdG8gYmUgZWluYV9zdHJpbmdzaGFyZSwgc28gd2hlbmV2
ZXIgcG9zc2libGUKKyAqICAgICAgICAgc2F2ZSB5b3Vyc2VsZiBzb21lIGNwdSBjeWNsZXMgYW5k
IHVzZQorICogICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX3JlZigpIGluc3RlYWQgb2YgZWluYV9z
dHJpbmdzaGFyZV9hZGQoKSBvcgorICogICAgICAgICBzdHJkdXAoKS4KICAqLwogY29uc3QgY2hh
ciAqZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCgpCiB7CiAjaWYgRU5BQkxFKERB
VEFCQVNFKQotICAgIFdURjo6U3RyaW5nIHBhdGggPSBXZWJDb3JlOjpEYXRhYmFzZVRyYWNrZXI6
OnRyYWNrZXIoKS5kYXRhYmFzZURpcmVjdG9yeVBhdGgoKTsKLSAgICByZXR1cm4gc3RyZHVwKHBh
dGgudXRmOCgpLmRhdGEoKSk7CisgICAgcmV0dXJuIF9ld2tfZGVmYXVsdF93ZWJfZGF0YWJhc2Vf
cGF0aDsKICNlbHNlCiAgICAgcmV0dXJuIDA7CiAjZW5kaWYKQEAgLTEyMiw5ICsxMzAsMTcgQEAg
RWluYV9Cb29sIGV3a19zZXR0aW5nc19pY29uX2RhdGFiYXNlX3BhdAogCiAgICAgICAgIFdlYkNv
cmU6Omljb25EYXRhYmFzZSgpLT5zZXRFbmFibGVkKHRydWUpOwogICAgICAgICBXZWJDb3JlOjpp
Y29uRGF0YWJhc2UoKS0+b3BlbihXVEY6OlN0cmluZzo6ZnJvbVVURjgoZGlyZWN0b3J5KSk7Cisg
ICAgICAgIGlmICghX2V3a19pY29uX2RhdGFiYXNlX3BhdGgpCisgICAgICAgICAgICBfZXdrX2lj
b25fZGF0YWJhc2VfcGF0aCA9IGVpbmFfc3RyaW5nc2hhcmVfYWRkKGRpcmVjdG9yeSk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIGVpbmFfc3RyaW5nc2hhcmVfcmVwbGFjZSgmX2V3a19pY29u
X2RhdGFiYXNlX3BhdGgsIGRpcmVjdG9yeSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgV2ViQ29y
ZTo6aWNvbkRhdGFiYXNlKCktPnNldEVuYWJsZWQoZmFsc2UpOwogICAgICAgICBXZWJDb3JlOjpp
Y29uRGF0YWJhc2UoKS0+Y2xvc2UoKTsKKyAgICAgICAgaWYgKF9ld2tfaWNvbl9kYXRhYmFzZV9w
YXRoKSB7CisgICAgICAgICAgICBlaW5hX3N0cmluZ3NoYXJlX2RlbChfZXdrX2ljb25fZGF0YWJh
c2VfcGF0aCk7CisgICAgICAgICAgICBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aCA9IDA7CisgICAg
ICAgIH0KICAgICB9CiAgICAgcmV0dXJuIEVJTkFfVFJVRTsKIH0KQEAgLTEzMiwyMiArMTQ4LDIw
IEBAIEVpbmFfQm9vbCBld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9wYXQKIC8qKgogICogUmV0
dXJuIGRpcmVjdG9yeSBwYXRoIHdoZXJlIGljb24gZGF0YWJhc2UgaXMgc3RvcmVkLgogICoKLSAq
IEByZXR1cm4gbmV3bHkgYWxsb2NhdGVkIHN0cmluZyB3aXRoIGRhdGFiYXNlIHBhdGggb3IgQGMg
TlVMTCBpZgotICogICAgICAgICBub25lIGlzIHNldCBvciBkYXRhYmFzZSBpcyBjbG9zZWQuIE5v
dGUgdGhhdCByZXR1cm4gbXVzdCBiZQotICogICAgICAgICBmcmVlZCB3aXRoIGZyZWUoKSBhcyBp
dCdzIGEgc3RyZHVwKCllZCBjb3B5IG9mIHRoZSBzdHJpbmcKLSAqICAgICAgICAgZHVlIHJlZmVy
ZW5jZSBjb3VudGluZy4KKyAqIEByZXR1cm4gZGF0YWJhc2UgcGF0aCBvciBAYyBOVUxMIGlmIG5v
bmUgaXMgc2V0IG9yIGRhdGFiYXNlIGlzIGNsb3NlZC4KKyAqICAgICAgICAgVGhpcyBpcyBndWFy
YW50ZWVkIHRvIGJlIGVpbmFfc3RyaW5nc2hhcmUsIHNvIHdoZW5ldmVyIHBvc3NpYmxlCisgKiAg
ICAgICAgIHNhdmUgeW91cnNlbGYgc29tZSBjcHUgY3ljbGVzIGFuZCB1c2UKKyAqICAgICAgICAg
ZWluYV9zdHJpbmdzaGFyZV9yZWYoKSBpbnN0ZWFkIG9mIGVpbmFfc3RyaW5nc2hhcmVfYWRkKCkg
b3IKKyAqICAgICAgICAgc3RyZHVwKCkuCiAgKi8KLWNoYXIqIGV3a19zZXR0aW5nc19pY29uX2Rh
dGFiYXNlX3BhdGhfZ2V0KHZvaWQpCitjb25zdCBjaGFyKiBld2tfc2V0dGluZ3NfaWNvbl9kYXRh
YmFzZV9wYXRoX2dldCh2b2lkKQogewogICAgIGlmICghV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCkt
PmlzRW5hYmxlZCgpKQogICAgICAgICByZXR1cm4gMDsKICAgICBpZiAoIVdlYkNvcmU6Omljb25E
YXRhYmFzZSgpLT5pc09wZW4oKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBXVEY6OlN0cmlu
ZyBwYXRoID0gV2ViQ29yZTo6aWNvbkRhdGFiYXNlKCktPmRhdGFiYXNlUGF0aCgpOwotICAgIGlm
IChwYXRoLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0cmR1cChw
YXRoLnV0ZjgoKS5kYXRhKCkpOworICAgIHJldHVybiBfZXdrX2ljb25fZGF0YWJhc2VfcGF0aDsK
IH0KIAogLyoqCkluZGV4OiBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAkocmV2aXNpb24gNjkxMDcpCisrKyBX
ZWJLaXQvZWZsL2V3ay9ld2tfc2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNDIsNyArNDIs
NyBAQCBFQVBJIHZvaWQgICAgICAgICAgICAgZXdrX3NldHRpbmdzX3dlYl9kCiBFQVBJIGNvbnN0
IGNoYXIgICAgICAqZXdrX3NldHRpbmdzX3dlYl9kYXRhYmFzZV9wYXRoX2dldCgpOwogCiBFQVBJ
IEVpbmFfQm9vbCAgICAgICAgZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfcGF0aF9zZXQoY29u
c3QgY2hhciAqcGF0aCk7Ci1FQVBJIGNoYXIgICAgICAgICAgICAqZXdrX3NldHRpbmdzX2ljb25f
ZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7CitFQVBJIGNvbnN0IGNoYXIgICAgICAqZXdrX3NldHRp
bmdzX2ljb25fZGF0YWJhc2VfcGF0aF9nZXQodm9pZCk7CiBFQVBJIEVpbmFfQm9vbCAgICAgICAg
ZXdrX3NldHRpbmdzX2ljb25fZGF0YWJhc2VfY2xlYXIodm9pZCk7CiAKIEVBUEkgY2Fpcm9fc3Vy
ZmFjZV90ICpld2tfc2V0dGluZ3NfaWNvbl9kYXRhYmFzZV9pY29uX3N1cmZhY2VfZ2V0KGNvbnN0
IGNoYXIgKnVybCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>